Bibliotecas Julia | Principales bibliotecas de aprendizaje automático de Julia

Contenidos

Este artículo fue publicado como parte del Blogatón de ciencia de datos.

Introducción

¡Hola lectores!

Debe conocer el lenguaje de programación Python para el aprendizaje automático. Bueno, tiene muchas ventajas. Pero en el año 2012, se introdujo un nuevo lenguaje de programación, Julia. Julia es un lenguaje de programación dinámico que es flexible, rápido, escalable, fácil de usar y admite cálculos matemáticos de alta velocidad. También es compatible con hardware que incluye TPU y GPU principalmente en todas las nubes. Es compatible con un paradigma de programación orientado a objetos. Hoy en día se ha vuelto popular en las aplicaciones de aprendizaje automático y aprendizaje profundo, que incluyen la visión por computadora y el procesamiento del lenguaje natural (PNL).

En este artículo, vamos a discutir algunas bibliotecas útiles de Julia que son muy útiles para el aprendizaje automático y el aprendizaje profundo. ¡¡Entonces empecemos!!

Imagen de Bibliotecas Julia

Tabla de contenido

  • Mocha.jl
  • ScikitLearn.jl
  • TensorFlow.jl
  • Flujo
  • MLBase.jl
  • Merlin.jl
  • Knet.jl
37192table20of20contents-5171788

Mocha.jl

Es una biblioteca de aprendizaje profundo para el lenguaje de programación Julia y está inspirada en Caffe, un marco de trabajo de C ++. Mocha se puede utilizar para entrenar redes neuronales convolucionales superficiales / profundas, con entrenamiento previo sin supervisión (opcional) utilizando codificadores automáticos (apilados).

60838mocha-3968939

Características de Mocha

  • Código abierto: es de código abierto y tiene licencia del MIT.
  • Compatibilidad: utiliza el formato HDF5 para almacenar instantáneas de modelos y conjuntos de datos, lo que facilita la cooperación con Numpy y Matlab.
  • Corrección y modularidad: tiene una arquitectura modular
  • Interfaz de alto nivel
  • Arquitectura modular: fácil de personalizar, componer y ampliar
  • Dependencias mínimas: no es necesario instalar dependencias externas. Solo ejecuta agregar[‘Mocha’] y estás listo para irte
  • Esta escrito en julia
  • Múltiples backends: esta biblioteca acompaña a un backend de GPU, combinando bibliotecas altamente eficientes de NVIDIA como cuBLAS, cuDNN, etc.

Instalación

Para instalar esta biblioteca, simplemente ejecute el siguiente comando:

Pkg.add(“Mocha”)

Para más información, consulte la documentación oficial. Enlace

ScikitLearn.jl

ScikitLearn.jl es un contenedor de Julia para ScikitLearn Library. Implementa los famosos algoritmos e interfaces ScikitLearn en Julia. Tiene modelos tanto del ecosistema de Julia como de la biblioteca Scikit-Learn. Esta biblioteca proporciona una interfaz fácil de usar para entrenar y probar modelos de aprendizaje automático. Tiene herramientas para construir canalizaciones de aprendizaje automático, evaluación de modelos, validación cruzada y ajuste de hiperparámetros.

46816scikitlearn-jl_-7691278

Características

  • Tiene casi 150 modelos de Python y Julia
  • Validación cruzada
  • Soporte de DataFrames
  • Sintonización de hpyer-paramteres
  • Sindicatos de funciones y canalizaciones

Instalación

Para instalar esta biblioteca, simplemente ejecute el siguiente comando en el REPL:

Julia>  ] add ScikitLearn

Para más información, consulte la documentación oficial. Enlace

TensorFlow.jl

Tensorflow es un famoso marco de Python de código abierto de Google para crear modelos de aprendizaje profundo y de máquina. Tensorflow.jl es un contenedor de Julia en torno a un marco de aprendizaje automático de código abierto Tensorflow. Este contenedor se puede utilizar para diversos fines, como el posprocesamiento rápido de resultados calculados, la ingesta rápida de datos principalmente para datos que están en formato poco común, utilizados para visualización, y el cálculo de estadísticas que no tiene una ejecución vectorizada enlatada.

97889tensorflow-9034830

Instalación

Para instalar esta biblioteca, simplemente ejecute el siguiente comando:

Pkg.add(“Tensorflow”)

Para más información, consulte la documentación oficial. Enlace

Flujo

Es una biblioteca de aprendizaje automático y aprendizaje profundo de código abierto en Julia. Proporciona una forma única e intuitiva de definir los modelos, al igual que la notación matemática simple. Las bibliotecas de Julia existentes son diferenciables y se pueden consolidar directamente en modelos Flux. Los modelos de vanguardia, por ejemplo, las ODE neuronales son de primera línea, y Zygote permite gradientes sin gastos generales.

Flux es excepcionalmente pirateable y se puede cambiar cualquier parte, desde el código de la GPU hasta los degradados y capas personalizados. Algunas de las características de Flux incluyen programación diferenciable, ONNX, compatibilidad con GPU y código compilado.

32127flux-6678484

Instalación

Entonces, antes de usar Flux, primero debe descargar la versión 1.3 o posterior de Julia. Para descargar Julia, puede consultar esta guía Descarga Julia

Después de la instalación de Julia, ejecute el siguiente comando en Julia REPL para descargar Flux:

Julia>  ] add Flux

Para más información, consulte la documentación oficial de Flujo

MLBase.jl

Es el paquete de Julia que no implementa ningún algoritmo específico de aprendizaje automático, pero proporciona algunas herramientas útiles para casos de uso de aprendizaje automático. Tiene una gran cantidad de herramientas útiles para soportar programas de aprendizaje automático.

Algunas de las herramientas que están presentes en este paquete se dan a continuación:

  • Manipulación de datos
  • Preprocesamiento de datos
  • Evaluación de desempeño (por ejemplo, ROC-AUC)
  • Ajuste de modelo (ajuste de hiperparámetro)
  • Validación cruzada
  • Clasificación de bases de puntuación
14501mlbase-jl_-3913257

Instalación

Para instalar esta biblioteca, simplemente ejecute el siguiente comando:

Pkg.add(“MLBase”)

Para más información, consulte la documentación oficial. Enlace

Merlin.jl

Es un marco de aprendizaje profundo escrito en Julia para entrenar redes neuronales profundas. Este paquete está muy subestimado. Sin embargo, esto sería un error ya que Merlin.jl es un marco insondable que me ha ahorrado una gran cantidad de tiempo en una amplia gama de eventos. Como Flux.jl, Merlin es generalmente liviano y está escrito en código 100% Julia.

Merlín, en general, dominará a Flux en muchas tareas, sin embargo, eso no implica que sea más rápido de forma constante. Tiene un soporte GPU implícito con CUDA. Los modelos Merlin son fáciles de implementar en comparación con Flux. La biblioteca tiene como objetivo proporcionar una biblioteca de aprendizaje profundo profundo flexible, rápida y más pequeña para el aprendizaje automático.

98018merlin-jl_-8858394

Instalación

Para instalar esta biblioteca, simplemente ejecute el siguiente comando en el REPL:

Julia>  ] add Merlin

Para más información, consulte la documentación oficial. Enlace

Knet.jl

Knet es otro paquete de aprendizaje profundo para Julia, con una pequeña curva. Knet se creó para su uso en la Universidad de Koc. Este es uno de los mejores paquetes para principiantes, ya que es muy fácil de aprender. Este paquete se mantiene mejor en comparación con otros paquetes y bibliotecas debido a su vasta comunidad. Igualmente diferente a Flux y Merlin, Knet es un paquete algo más pesado. Esto no está escrito completamente en Julia, ya que está escrito en diferentes lenguajes, por ejemplo, C y MATLAB que se ejecutan debajo del código de Julia. Debe tenerse en cuenta, no obstante, que una pequeña parte de Knet está escrita en C y MATLAB, lo que representa aproximadamente un 1,8 por ciento.

59555knet-jl_-6005638

Instalación

Para instalar esta biblioteca, simplemente ejecute el siguiente comando en el REPL:

Julia>   ] add Knet

Para más información, consulte la documentación oficial. Enlace

Conclusión

Entonces, en este artículo, hemos cubierto las 7 principales bibliotecas de aprendizaje automático y aprendizaje profundo en Julia en 2021. Espero que aprenda algo de este blog y resulte mejor para su proyecto. Gracias por leer y tu paciencia. ¡Buena suerte!

Puedes consultar mis artículos aquí: Artículos

Gracias por leer este artículo sobre las bibliotecas de Python para el procesamiento de imágenes y por su paciencia. Déjame en la sección de comentarios. Comparta este artículo, me dará la motivación para escribir más blogs para la comunidad de ciencia de datos.

Identificación de correo: gakshay1210@ gmail.com

Sígueme en LinkedIn: LinkedIn

Los medios que se muestran en este artículo sobre las principales bibliotecas de aprendizaje automático en Julia no son propiedad de DataPeaker y se utilizan a discreción del autor.

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.