THOAD Derivadas de Alto Orden para Grafos de PyTorch

thoad es una librería Python para PyTorch que calcula derivadas de orden arbitrario directamente sobre el grafo, sin C++ ni CUDA, con backward y Controller.

4 sept 2025 • 5 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Intro

Me entusiasma presentar thoad acrónimo de PyTorch High Order Automatic Differentiation una librería 100 por cien Python que calcula derivadas parciales de orden arbitrario directamente sobre el grafo computacional de PyTorch. El paquete se ha desarrollado en un proyecto de investigación de la Universidad Pontificia de Comillas ICAI y estamos valorando publicar un artículo académico que detalle la base matemática y el diseño de la implementación.

La idea central de thoad adopta una visión de un solo output y múltiples inputs del grafo y empuja las derivadas de orden superior hasta los tensores hoja. Aunque un problema 1 a N puede reescribirse como 1 a 1 concatenando inputs aplanados como hacen enfoques funcionales tipo jax.jet o functorch la formulación consciente del grafo de thoad permite una optimización basada en unificar dimensiones independientes especialmente batch. Esto ofrece una escalabilidad asintóticamente mejor respecto al tamaño de lote. Calculamos derivadas de forma vectorial y no componente a componente lo que hace viable una implementación pura en PyTorch sin recurrir a extensiones C++ o CUDA.

El paquete es fácil de mantener porque está escrito íntegramente en Python y solo depende de PyTorch. La implementación se mantiene en alto nivel y se apoya en operaciones vectorizadas de PyTorch lo que significa cero enlaces C++ o CUDA sin sistemas de build y con menos problemas específicos por plataforma. Con una única dependencia las actualizaciones y revisiones de seguridad son más simples la integración continua es ligera y cualquier colaborador puede leer y modificar el código con rapidez. La experiencia de uso sigue de cerca a PyTorch de modo que lanzar un backward de orden superior se siente como llamar a tensor.backward. Puedes instalarlo desde GitHub o PyPI y empezar al instante

GitHub Repositorio oficial de thoad PyPI Paquete en PyPI

En nuestras pruebas thoad supera a torch.autograd en el cálculo de Hessianos incluso en CPU. Consulta el cuaderno reproducible en benchmark comparativo contra torch.autograd.

La experiencia de usuario ha sido una de nuestras prioridades. thoad se alinea con la filosofía de interfaz de PyTorch por lo que ejecutar el backward de orden superior es prácticamente indistinguible de usar backward de PyTorch. Cuando necesitas control fino puedes conservar o reducir simetrías de Schwarz agrupar variables para restringir parciales mixtas y recuperar exactamente la derivada mixta que buscas. También exponemos metadatos de formas y de independencia para facilitar la interpretación.

USO DEL PAQUETE

thoad ofrece dos interfaces principales para derivadas de alto orden

thoad.backward interfaz funcional que recuerda a torch.Tensor.backward. Es la vía rápida para calcular derivadas de alto orden sin gestionar un objeto controlador. Calcula y almacena los resultados en cada tensor hoja en el atributo .hgrad.

Argumentos clave tensor que requiere grad y pertenece a un grafo diferenciable order entero positivo con el orden máximo gradient tensor opcional con la misma forma que la salida para sembrar el vector Jacobiano crossings si es verdadero calcula parciales mixtas entre hojas distintas groups permite definir grupos disjuntos de hojas para limitar cruzamientos cuando crossings es falso keep_batch controla el layout de ejes en las derivadas si es falso se aplanan salidas e inputs por orden de derivación si es verdadero se preservan ejes independientes de la salida antes de los ejes de derivada y se colapsan como tamaño 1 los que no influyen en una hoja concreta keep_schwarz si es verdadero conserva las permutaciones simétricas en lugar de reducirlas. Devuelve un objeto Controller asociado al mismo grafo.

thoad.Controller interfaz basada en clase que envuelve el subgrafo de backward del tensor de salida. Ejecuta el mismo backward de alto orden y además expone opciones avanzadas.

Instanciación crea el controlador con Controller tensor igual al tensor de salida que requiere grad.

Propiedades tensor acceso y sustitución segura del tensor reconstruyendo el grafo y limpiando gradientes previos compatible indica si todas las funciones de backward en el subgrafo tienen implementación de alto orden soportada index diccionario que mapea clases base torch.autograd.Function a sus extensiones de alto orden de thoad y permite inyectar implementaciones personalizadas.

Métodos principales backward con parámetros order gradient crossings groups keep_batch y keep_schwarz para calcular y almacenar parciales en .hgrad display_graph imprime una vista en árbol del subgrafo anotando nodos no soportados register_backward_hook registra un hook de usuario para ejecutar cuando se calculan gradientes de ciertas hojas require_grad marca hojas para retener intermedios útiles aunque no sean estrictamente necesarios para el resultado final fetch_hgrad recupera la derivada mixta para una secuencia ordenada de hojas devolviendo el tensor de gradiente y metadatos formas originales de cada hoja ejes independientes preservados y una permutación que alinea el layout interno con el orden solicitado.

Puedes ver una guía de usuario detallada con ejemplos en este cuaderno de introducción.

Casos de uso y ventajas prácticas

thoad es especialmente útil en optimización de segundo y tercer orden en modelos científicos y de IA donde el coste de construir Hessianos completos con enfoques tradicionales es prohibitivo. Al unificar dimensiones independientes como el batch y operar vectorialmente reduce memoria y tiempo y se integra de forma natural en pipelines de PyTorch training evaluación diferenciación de pérdidas compuestas y análisis de sensibilidad.

Q2BSTUDIO y el valor para tu organización

En Q2BSTUDIO empresa de desarrollo de software y aplicaciones a medida te ayudamos a incorporar capacidades de alto orden en tus flujos de trabajo de aprendizaje profundo y analítica avanzada. Nuestro equipo de especialistas en inteligencia artificial ciberseguridad servicios cloud aws y azure y servicios inteligencia de negocio domina desde la arquitectura de datos hasta la puesta en producción con observabilidad y gobierno. Si quieres acelerar proyectos de ia para empresas con agentes IA o analítica avanzada en power bi podemos acompañarte de principio a fin con enfoque de ROI y calidad industrial. Descubre cómo impulsamos iniciativas de inteligencia artificial para tu empresa y cómo escalamos tus cargas con nuestros servicios cloud aws y azure. También abordamos integraciones complejas y modernización de plataformas con foco en seguridad y continuidad operativa.

Palabras clave estratégicas aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi.

Si pruebas thoad agradeceremos tus comentarios sobre la API casos límite y modelos donde necesites mejor plug and play. Tu feedback nos ayuda a priorizar funcionalidades y compatibilidad con más operadores de PyTorch.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.