FotoReportaje - Galería de fotos

11 herramientas de código abierto para aprovechar el aprendizaje automático

Aproveche el poder predictivo del aprendizaje automático con esta diversidad de bibliotecas y frameworks fáciles de implementar.

  • El filtrado de spam, reconocimiento de rostros, motores de recomendación -cuando tiene un gran conjunto de datos en el que le gustaría realizar un análisis predictivo o un reconocimiento de patrones, el aprendizaje automático es lo correcto. La proliferación del software libre de código abierto ha facilitado la implementación del aprendizaje automático tanto en máquinas individuales como a escala, y en la mayoría de los lenguajes de programación populares. Estas 11 herramientas de código abierto incluyen bibliotecas para Python, R, C ++, Java, Scala, Clojure, JavaScript y Go.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Thinkstock, Licencia: Thinkstock

  • Scikit-learn

    Python se ha convertido en un lenguaje de programación idóneo para matemáticas, ciencias y estadísticas, debido a su facilidad de adopción y la gran cantidad de bibliotecas disponibles para casi cualquier aplicación. Scikit-learn aprovecha esta amplitud construyendo sobre varios paquetes de Python existentes: NumPy, SciPy y Matplotlib, para el trabajo de matemáticas y ciencias. Las bibliotecas resultantes pueden usarse para aplicaciones interactivas de "workbench" o integradas en otro software y reutilizadas. El kit está disponible bajo una licencia de BSD, por lo que es completamente abierto y reutilizable.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Scikit, Licencia: IDG Worldwide

  • Shogun

    El venerable Shogun fue creado en 1999 y escrito en C++, pero puede usarse con Java, Python, C#, Ruby, R, Lua, Octave y Matlab. La última versión, 6.0.0, agrega soporte nativo para Windows de Microsoft y el lenguaje Scala.

    Aunque popular y de gran alcance, Shogun tiene competencia. Otra librería de aprendizaje basada en C++, Mlpack, ha existido solo desde el 2011, pero afirma ser más rápida y fácil de usar (a través de un conjunto de APIs más integral) que las bibliotecas rivales.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Shogun, Licencia: IDG Worldwide

  • Accord.Net Framework

    Accord, un framework de procesamiento de señales y aprendizaje automático para .Net, es una extensión de un proyecto anterior de la misma línea, AForge.net. Accord incluye un conjunto de bibliotecas para procesar señales de audio y secuencias de imágenes (como videos). Sus algoritmos para el procesamiento de visión pueden ser utilizados para tareas como la detección de rostros, para unir imágenes o rastrear objetos en movimiento.

    Accord también incluye bibliotecas que ofrecen una gama más convencional de funciones de aprendizaje automático, desde redes neuronales hasta sistemas de esquemas de decisiones.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Accord, Licencia: IDG Worldwide

  • Apache Mahout

    Apache Mahout ha estado vinculado durante mucho tiempo a Hadoop, pero varios de los algoritmos bajo su paraguas también pueden ejecutarse fuera de Hadoop. Son útiles para aplicaciones independientes que eventualmente podrían migrar a Hadoop, o para proyectos de Hadoop que podrían dividirse en sus propias aplicaciones independientes. Las últimas versiones han reforzado el soporte para el framework de Spark de alto rendimiento, y han agregado soporte para la biblioteca de ViennaCL para el álgebra lineal acelerada por GPU.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Mahout, Licencia: IDG Worldwide

  • Spark MLlib

    La biblioteca de aprendizaje automático para Apache Spark y Apache Hadoop, MLlib posee muchos algoritmos comunes y tipos de datos útiles, diseñados para funcionar a velocidad y escala. Aunque Java es el idioma principal para trabajar en MLlib, los usuarios de Python pueden conectar MLlib con la biblioteca NumPy, los usuarios de Scala pueden escribir código contra MLlib, y los usuarios de R pueden conectarse a Spark a partir de la versión 1.5.

    Otro proyecto, MLbase, se basa en MLlib para facilitar la obtención de resultados. En lugar de escribir código, los usuarios hacen consultas a través de un lenguaje declarativo à la SQL.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: MLib, Licencia: IDG Worldwide

  • H2O

    Los algoritmos de H2O están orientados a procesos de negocios -como fraudes o predicciones de tendencias- en lugar de, por ejemplo, análisis de imágenes. H2O (GitHub) puede interactuar de forma autónoma con tiendas HDFS, sobre YARN, en MapReduce, o directamente en una instancia EC2 de Amazon. Los expertos en Hadoop puede utilizar Java para interactuar con H2O; pero el framework también proporciona enlaces para Python, R y Scala, permitiéndole, también, interactuar con todas las bibliotecas disponibles en esas plataformas.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: H2O, Licencia: IDG Worldwide

  • Cloudera Oryx

    Oryx, por cortesía de los creadores de la distribución Cloudera Hadoop, utiliza Spark y el framework de procesamiento de flujos de Kafka para ejecutar modelos de aprendizaje automático en datos en tiempo real. Oryx proporciona una manera de construir proyectos que requieren decisiones en el momento, como motores de recomendación o detección de anomalías en vivo, que son informados tanto por datos nuevos como históricos. La versión 2.0 es un rediseño casi completo del proyecto; los componentes están vagamente acoplados en una arquitectura lambda. Se pueden agregar nuevos algoritmos y nuevas abstracciones para estos (por ejemplo, para la selección de hiperparámetros), en cualquier momento.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Oryx, Licencia: IDG Worldwide

  • GoLearn

    GoLearn, una biblioteca de aprendizaje automático para el lenguaje Go de Google, se creó con los objetivos de simplicidad y personalización, según el desarrollador Stephen Whitworth. La simplicidad radica en la forma en que los datos se cargan y manejan en la biblioteca, modelados en base a SciPy y R. La personalización se basa en cómo algunas estructuras de datos pueden extenderse fácilmente en una aplicación. Whitworth también ha creado un wrapper Go para la biblioteca Vowpal Wabbit, una de las bibliotecas que se encuentran en la caja de herramientas de Shogun.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: GoLearn, Licencia: IDG Worldwide

  • Weka

    Weka es un conjunto de algoritmos de aprendizaje automático de Java, diseñados específicamente para la minería de datos. Esta colección con licencia GNU GPLv3 cuenta con un sistema de paquetes para ampliar su funcionalidad; estando disponibles ambos tipos de paquetes, oficiales y no oficiales. Incluso, Weka viene con un libro para explicar el software y las técnicas utilizadas.

    Si bien, Weka no está dirigido específicamente para los usuarios de Hadoop, las versiones más recientes se pueden usar con Hadoop gracias a un conjunto de wrappers. Tenga en cuenta que Weka aún no soporta Spark; solo MapReduce. Los usuarios de Clojure pueden aprovechar Weka a través de la biblioteca Clj-ml.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: Weka, Licencia: IDG Worldwide

  • Deeplearn.js

    Otro proyecto para el aprendizaje profundo en el navegador web, Deeplearn.js, viene por medio de Google. Los modelos de redes neuronales pueden capacitarse directamente en cualquier navegador moderno, sin software adicional para el cliente. Deeplearn.js también puede realizar cálculos acelerados por GPU a través de la API WebGL, por lo que el rendimiento no se limita a la CPU del sistema. Las funciones disponibles en el proyecto se modelan en base a TensorFlow de Google, lo que hace más fácil para los usuarios del proyecto comenzar a usarlo.

  • ConvNetJS

    Como su nombre lo dice, ConvNetJS es una biblioteca de JavaScript para el aprendizaje automático de redes neuronales, que facilita el uso del navegador como un banco de trabajo de datos. Una versión de NPM también está disponible para aquellos que utilizan Node.js, y la biblioteca está diseñada para usar correctamente la asincronización de JavaScript. Por ejemplo, las operaciones de entrenamiento pueden recibir una llamada para ejecutar una vez sean completadas. Además, muchos ejemplos de demostración están incluidos.

    Por: Serdar Yegulalp, InfoWorld, 25/octubre/2017, Crédito: ConvNet JS, Licencia: IDG Worldwide

Llegamos a ustedes gracias a:

FOTO REPORTAJES

Más »
7 maneras de acelerar su PC con Windows 10

7 maneras de acelerar su PC con Windows 10

¿Desea que Windows 10 funcione más rápido? Tómese unos minutos para probar estos consejos, y su máquina será más fácil de cerrar, y menos propensa a problemas de rendimiento.
10 extensiones imprescindibles del 2017 para Firefox

10 extensiones imprescindibles del 2017 para Firefox

Estas extensiones para el explorador de Mozilla pueden ayudar a impulsar su productividad, recuperar la privacidad y automatizar las tareas mundanas.
Échele un vistazo al smartphone del futuro

Échele un vistazo al smartphone del futuro

¿Cómo se verá su teléfono en diez años? Visitamos las escuelas de diseño y los laboratorios de investigación para descubrir las innovaciones que llegarán a nuestros dispositivos móviles.
13 marcos para dominar el aprendizaje automático

13 marcos para dominar el aprendizaje automático

¿Aventurarse en el aprendizaje automático? Estas son las herramientas de código abierto que hacen el trabajo pesado.