
A pesar de las muchas fuentes de software gratuito de aprendizaje automático disponibles en Internet, Github sigue siendo un importante centro de intercambio de información para todo tipo de herramientas de código abierto utilizadas por la comunidad de aprendizaje automático y análisis de datos.
Esta colección contiene repositorios de aprendizaje automático, conjuntos de datos y cuadernos Jupyter, clasificados por estrellas. En la parte
anterior , hablamos sobre repositorios populares para estudiar la visualización de datos y el aprendizaje profundo.
Aprendizaje automático
Una impresionante lista de sistemas, bibliotecas y software clasificados por idioma y categoría (visión por computadora, procesamiento del lenguaje natural, etc.). Además, en este repositorio encontrará una lista de libros gratuitos de aprendizaje automático, cursos gratuitos (en su mayoría) de aprendizaje automático, blogs de ciencia de datos.
Desarrollado desde 2007, el módulo Python para aprendizaje automático, construido sobre la base de las bibliotecas SciPy, NumPy y Matplotlib. Distribuido bajo la licencia BSD 3-Cláusula. Scikit-learn es una herramienta universal para el trabajo que contiene algoritmos de clasificación, regresión y agrupación, así como métodos para preparar datos y evaluar modelos.
Un marco de aprendizaje automático de código abierto que admite la recopilación de eventos, la implementación de algoritmos, la evaluación, las plantillas para tareas conocidas como la clasificación y las recomendaciones. Se conecta a aplicaciones existentes utilizando la API REST o SDK. PredictionIO se basa en servicios escalables de código abierto como Hadoop, HBase (y otras bases de datos), Elasticsearch, Spark.
Material para principiantes en la materia. El repositorio contiene una colección de tutoriales de IPython para la biblioteca Scikit-learn, que implementa una gran cantidad de algoritmos de aprendizaje automático, así como varios enlaces a temas de aprendizaje automático relacionados con Python e información más general sobre análisis de datos. El autor proporciona enlaces a muchos otros tutoriales que cubren el tema.
Patrón
6 845,
1,353
Módulo de desarrollo web basado en Python con herramientas para análisis, procesamiento de lenguaje natural (marcado de partes del discurso, búsqueda de n-gramas, análisis de estado de ánimo, WordNet), aprendizaje automático, análisis de redes y visualización. El módulo fue creado y bien documentado en el Centro de Investigación de Lingüística Informática y Psicolingüística de la Universidad de Amberes (Bélgica). En el repositorio encontrará más de 50 ejemplos de su uso.
Desarrollando activamente la biblioteca de aprendizaje automático para Go. Proporciona un paquete de software completo, fácil de usar y altamente personalizable para desarrolladores. GoLearn implementa la conocida interfaz de aprendizaje Scikit-learn.
El sistema Vowpal Wabbit amplía los límites del aprendizaje automático utilizando métodos como hashing, allreduce, learning2search y aprendizaje activo e interactivo. Vowpal Wabbit tiene como objetivo modelar rápidamente conjuntos de datos masivos y es compatible con el aprendizaje paralelo. Se presta especial atención al aprendizaje por refuerzo utilizando varios "algoritmos de gángsters" contextuales.
NuPIC implementa algoritmos de aprendizaje automático de memoria temporal jerárquica (HTM). En general, HTM es un intento de simular las operaciones computacionales de la neocorteza del cerebro humano y se centra en la conservación y la invocación de patrones espaciales y temporales. HTM es un sistema de memoria, no está programado, no aprende a ejecutar algoritmos para diversas tareas, aprende a resolver un problema. NuPIC es adecuado para todo tipo de tareas, en particular, para detectar anomalías de patrones.
aerosolve trata de distinguirse de otras bibliotecas enfocándose en herramientas de depuración fáciles de usar, un código Scala para capacitación, un mecanismo para analizar el contenido de la imagen para una clasificación fácil, flexibilidad y control sobre las funciones. La biblioteca está diseñada para usarse con funciones interpretables raras que generalmente se encuentran en la búsqueda (palabras clave de búsqueda, filtros) o precios (número de habitaciones en una habitación de hotel, ubicación, precio).
Un repositorio complementario de
Machine Learning for Hackers , un repositorio en el que todo el código se presenta en el lenguaje R para el procesamiento de datos estadísticos (de hecho, el estándar de los programas estadísticos) y gráficos. Aquí encontrará numerosos paquetes R. Los temas cubiertos incluyen tareas generales de clasificación, clasificación y regresión, así como procedimientos estadísticos para análisis de componentes y escalado multidimensional.
Conjuntos de datos de Github
Otro repositorio impresionante con su tamaño es una lista dividida en 30 temas: biología, deportes, museos, lenguaje natural, etc. El repositorio incluye varios cientos de conjuntos de datos, la mayoría de los cuales son gratuitos. Aquí hay enlaces a otras colecciones de Big Data.
El repositorio oficial de OpenAddresses.io es una colección global gratuita y abierta de direcciones. El proyecto incluye nombres de calles, números de casas, códigos postales y coordenadas geográficas.
Un catálogo de todos los planetas conocidos que existen fuera del sistema solar. Anteriormente, la base de datos se actualizaba dentro de las 24 horas posteriores al descubrimiento de un nuevo planeta, pero ahora, desafortunadamente, el proyecto prácticamente no se está desarrollando.
La base de datos de la Oficina del Censo de los EE. UU., Adaptada para la integración con otros conjuntos de datos abiertos, con funciones convenientes para trabajar y crear su propio conjunto de datos personalizado con la API del censo: estadísticas, GeoJSON cartográfico, lat / lng, etc.
openFDA es un proyecto de la Administración de Drogas y Alimentos de los Estados Unidos (FDA) que tiene como objetivo proporcionar una colección de conjuntos de datos públicos para investigadores y desarrolladores a través de la API, así como ejemplos de cómo usar estos datos y documentación. Hay información sobre los efectos secundarios de los medicamentos, el etiquetado de los medicamentos, los informes sobre la retirada de medicamentos del mercado y los cambios en la fórmula de la receta.
El código fuente del portal de datos abiertos de la Organización de Investigación Nuclear del CERN, que se describe como "un punto de acceso a una gama creciente de datos de la investigación del CERN".
Portátiles IPython (Jupyter)
Una lista de repositorios útiles de Github que consisten en portátiles IPython (Jupyter) centrados en la manipulación de datos y el aprendizaje automático.
Un repositorio adjunto de la primera edición del libro
Machine Learning with Python (repositorio para la segunda edición
aquí ), que trata de trabajar con valores perdidos, convertir variables categóricas en formatos adecuados para el aprendizaje automático, elegir propiedades informativas, comprimir datos con transferencia a subespacios con menos Número de mediciones.
Un repositorio de materiales de capacitación, código y datos para varios proyectos de análisis de datos y aprendizaje automático. Notebook contiene todos los principios básicos de trabajar con el análisis de datos utilizando el conjunto de datos de
Iris como ejemplo e ilustra la construcción de un flujo de trabajo en ciencia de datos. Los puntos básicos para trabajar en un repositorio se obtienen del libro "
Los elementos del estilo analítico de datos " (Jeff Leek, 2015).
Una colección de cuadernos y conjuntos de datos que cubren cuatro temas algorítmicos: regresión lineal, regresión logística, bosques aleatorios y algoritmos de agrupación de K-Means. Learn Data Science se basa en materiales creados para el proyecto
Open Data Science Training .
El repositorio contiene varios cuadernos de IPython, desde una descripción general del lenguaje y la funcionalidad de IPython hasta ejemplos del uso de varias bibliotecas populares en el análisis de datos. Aquí encontrará una colección completa de aprendizaje automático, aprendizaje profundo y materiales de procesamiento de big data de los cursos de Aprendizaje automático de Andrew Ng (Coursera), Introducción a TensorFlow para aprendizaje profundo (Udacity) y Spark (edX).
Un repositorio para aprender la biblioteca
Scikit-learn , que implementa una gran cantidad de algoritmos de aprendizaje automático. La biblioteca proporciona una implementación de varios algoritmos para aprender con o sin un maestro. Scikit-learn está construido sobre
SciPy (Scientific Python).
Una serie de tutoriales IPython Notebook altamente detallados basados en datos del
curso Andrew Nga Machine Learning (Universidad de Stanford), el
curso Tom Mitchell (Universidad Carnegie Mellon) y el libro Reconocimiento de patrones y aprendizaje automático de Christopher M. Bishor.
La lista proporcionada no es completamente exhaustiva, por lo que agradecemos los comentarios con una lista de sus repositorios favoritos (o los suyos).