ExecuTorch y TensorFlow Lite

Hace unas semanas, en la conferencia PyTorch, el equipo lanzó ExecuTorch , que es una herramienta que ejecuta modelos de PyTorch en dispositivos como teléfonos inteligentes, dispositivos portátiles y sistemas integrados.

Hace cuatro años, PyTorch Mobile se introdujo con un propósito similar, pero ExecuTorch utiliza un tamaño de memoria significativamente más pequeño y una huella de memoria dinámica, lo que resulta en un rendimiento y portabilidad superiores en comparación con PyTorch Mobile.

ExecuTorch no depende de TorchScript y, en cambio, aprovecha el compilador PyTorch 2 y la funcionalidad de exportación para la ejecución en el dispositivo de los modelos PyTorch.

No es sólo una reescritura de PyTorch Mobile; Aprovecha el compilador PyTorch 2, lo cual es un avance significativo. No limitado a móviles, el rendimiento incluye capacidades de hardware de CPU, NPU y DSP.

El equipo dijo que era un desafío para los dispositivos adaptarse a la compatibilidad con TorchScript, por lo que los modelos más nuevos optan cada vez más por el compilador PyTorch 2 para mejorar el rendimiento, lo que significa que el ya impopular Pytorch Mobile verá menos usuarios y soporte automático para ExecuTorch.

Por otro lado, TensorFlow Lite, que se lanzó en 2017 , también es una herramienta que convierte los modelos de TensorFlow a un formato más eficiente que se puede ejecutar en dispositivos perimetrales.

Para ello, utiliza un compilador llamado TensorFlow Lite Converter para convertir el modelo a un formato de búfer plano que puede ejecutarse mediante un tiempo de ejecución liviano.

Ahora, para comparar los dos sistemas, es imperativo comprender también cómo se utilizan los marcos en el aprendizaje automático.

TensorFlow Lite y ExecuTorch

ExecuTorch y TensorFlow Lite son herramientas diseñadas para implementar modelos de aprendizaje automático en dispositivos de vanguardia, como teléfonos inteligentes, dispositivos portátiles y sistemas integrados. Sin embargo, estas herramientas presentan diferencias significativas debido a los marcos en los que se basan.

PyTorch es innegablemente más favorable que Tensorflow y la mayoría de los expertos e investigadores de la industria lo prefieren a su contraparte más engorrosa. Si bien PyTorch Mobile tenía una compatibilidad limitada en dispositivos de borde, la introducción de ExecuTorch ha llenado ese vacío.

ExecuTorch se basa en PyTorch 2.0. Es más popular que Torch Script porque es fácil de usar y el compilador es compatible con una gama más amplia de dispositivos que TensorFlow.

Una de sus características destacadas es su compatibilidad con dispositivos Android, lo que la convierte en una opción atractiva para quienes son nuevos en la implementación del aprendizaje automático o necesitan compatibilidad con dispositivos Android.

Por el contrario, TensorFlow Lite, basado en el marco de TensorFlow, se ha establecido como una opción confiable conocida por su rendimiento y eficiencia excepcionales dentro del marco de TensorFlow. Para mejorar su adaptabilidad, TensorFlow actualizó la implementación de modelos LLM en Android.

ExecuTorch es elogiado por su facilidad de uso, amplia compatibilidad de modelos y soporte específico para dispositivos Android. Por el contrario, TensorFlow Lite, basado en TensorFlow, sobresale en rendimiento y cuenta con compatibilidad con una amplia gama de dispositivos.

ExecuTorch es una opción práctica para una amplia compatibilidad de modelos o compatibilidad con dispositivos Android. Por otro lado, TensorFlow Lite puede ser la opción más adecuada si su prioridad es el rendimiento de primer nivel en el dispositivo.

Un paso adelante de PyTorch Mobile

ExecuTorch supera a PyTorch Mobile en varias áreas clave. En primer lugar, demuestra un rendimiento y portabilidad superiores debido a su tamaño de memoria más pequeño y su huella de memoria dinámica. El compilador utilizado por ExecuTorch optimiza el modelo para el dispositivo de destino y la funcionalidad de exportación genera un archivo de modelo más pequeño.

Utiliza una técnica llamada asignación de memoria bajo demanda, lo que significa que solo asigna la memoria que necesita cuando la necesita.

Esto contrasta con PyTorch Mobile, que tiene una huella de memoria estática. Esto significa que PyTorch Mobile asigna toda la memoria que necesita por adelantado, incluso si no la necesita toda de inmediato. Esto puede provocar problemas de rendimiento y fallos de memoria en dispositivos con memoria limitada.

ExecuTorch también destaca por su facilidad de uso. A diferencia de PyTorch Mobile, no depende de TorchScript, un compilador potencialmente complejo que requiere cambios en el código del modelo. En cambio, Executorch utiliza el compilador PyTorch 2 y la funcionalidad de exportación, lo que simplifica el proceso de implementación.

Además de estas ventajas principales, ExecuTorch se mantiene y actualiza activamente, en contraste con el estancamiento del desarrollo de PyTorch Mobile. Su comunidad más amplia de usuarios y desarrolladores proporciona una valiosa red de soporte.

Además, ExecuTorch se integra perfectamente con el ecosistema PyTorch, lo que garantiza la coherencia en las herramientas y bibliotecas para el desarrollo y la implementación de modelos.

Relacionado

10 Frameworks que los Desarrolladores de Software deberían Aprender 2024

Bienvenidos desarrolladores web y de software, estamos en los inicios de 2023 y es posible que muchos se esten planteado sus objetivos para lo largo del año. Con anterioridad ya he compartidos las rutas de aprendizaje para un desarrollador front-end, un desarrollador full-stack o un desarrollador back-end entre otros muchos contenidos más. En este artículo, me gustaría compartir algunos de los mejores frameworks y bibliotecas para ¡SEGUIR LEYENDO!

15 Excelentes Libros GRATIS de Programación hechos por el creador de tutoriales de programación Flaviocopes (en inglés)

En los siguientes manuales vas a encontrar un gran contenido (en inglés) creado por @flaviocopes. Si te gustan sus contenidos, no dejes de visitar su página web flaviocopes.com, en la que Flavio publica un artículo en el que aprender algo nuevo cada día. Manual de Python. 2021 PDF, ePub, Mobi Manual para principiantes de React. 2020 PDF, ePub, Mobi Manual para principiantes de JavaScript. 2020 PDF, ¡SEGUIR LEYENDO!

15 Mejores Lenguajes de Programación que Aprender

Una de las habilidades más importantes para aprender en el mundo de hoy en día, es saber programar con un lenguaje de programación. En la actualidad, las computadoras han entrado en casi todas las industrias, desde el piloto automático de un avión hasta el velocímetro digital de una bicicleta pasando por la inclusión del Internet de las cosas en los pequeños electrodomésticos. Casi todo lo que ¡SEGUIR LEYENDO!

17 Nuevos Cursos Gratuitos de SQL, Python, Diseño Web y Más (06 de Marzo)

Regreso con nuevos cursos gratis, recuerda que algunos de los cupones de los cursos publicados ayer, es muy posible que aún sigan activos; y vas a poder encontrar cursos en español de javascript -typescript, react,vue- y Unity. Además, de cursos en inglés de Python, R, SQL y más; también tienes muchos cursos totalmente gratis y una gran oferta de guías para programación de O´Reilly (en inglés) ¡SEGUIR LEYENDO!

21 Nuevos Cursos Gratuitos: Python, Google Cloud, CSS y Más (25 de Febrero 2021)

Como de costumbre, vamos con los cursos gratis, tenemos 3 cursos en español: Computación, Google Cloud y aplicaciones web; y 18 cursos gratuitos en inglés: Python, Flask, Ionic, PHP, Android, Github, CSS, Flexbox, Illustrator, Photoshop, Scrum y minado de Sugar. Recuerda, que puedes si quieres, puedes acceder a las Mejores Ofertas de Udemy ¡Alé, aprendamos gratis un ratico! Cursos en Español Computación ? Curso Gratuito de ¡SEGUIR LEYENDO!

25 Mejores cursos de Udemy 2020 [EN]

Más de 20 expertos han compilado esta lista de los mejores cursos, certificados, tutoriales, capacitación y clases de Udemy disponibles en línea para 2020. Estos incluyen las mejores ofertas y descuentos para brindarte los mejores precios en oferta. Los cursos son adecuados para principiantes, estudiantes intermedios y expertos. Esta compilación ya ha ayudado a más de 72.000 estudiantes y se actualiza cada poco tiempo. Consulta nuestra ¡SEGUIR LEYENDO!

26 Nuevos Cursos GRATIS de Udemy: Python, Javascript, Flutter (cupón finalizado)

26 Nuevos cursos con cupones free de Udemy: En español (typescript,javascript, react, vue y videojuegos) e ingles (Python, Django, Javascript, R, SQL, Flutter, Java, Qt, Bootstrap, Illustrator y Photoshop). Cursos en Español ? Curso Gratis de Udemy: Aprende JavaScript y Jquery de 0 a 100 APÚNTATE ? Curso Gratis de Udemy: Aprende Typescript de 0 a 100 APÚNTATE ? Curso Gratis de Udemy: Aprende Vue + ¡SEGUIR LEYENDO!