En esta guía, vamos a recorrer 8 proyectos divertidos de aprendizaje automático para principiantes. Los proyectos son una de las mejores inversiones de tu tiempo. Disfrutarás del aprendizaje, te mantendrás motivado y progresarás más rápido.
Verás, ninguna cantidad de teoría puede sustituir a la práctica. Los libros de texto y las lecciones pueden adormecerte en una falsa creencia de dominio porque el material está ahí delante de ti. Pero una vez que intentas aplicarlo, puede que descubras que es más difícil de lo que parece.
Los proyectos te ayudan a mejorar tus habilidades de ML aplicado rápidamente, al mismo tiempo que te dan la oportunidad de explorar un tema interesante.
Además, puedes añadir proyectos a tu portafolio, lo que hace más fácil conseguir un trabajo, encontrar oportunidades profesionales interesantes e incluso negociar un salario más alto.
Aquí tienes 8 divertidos proyectos de machine learning para principiantes. Puedes completar cualquiera de ellos en un solo fin de semana, o ampliarlos en proyectos más largos si los disfrutas.
Tabla de contenidos
- Gladiador del aprendizaje automático
- Jugar a la pelota del dinero
- Predecir el precio de las acciones
- Enseñar a una red neuronal a leer la escritura
- Investigar a Enron
- Predecir el precio de las acciones
- Predecir el precio de las acciones
- .
- Escribir algoritmos de ML desde cero
- Minar el sentimiento de las redes sociales
- Mejorar la atención sanitaria
Gladiador del aprendizaje automático
Lo llamamos cariñosamente «gladiador del aprendizaje automático,» pero no es algo nuevo. Esta es una de las formas más rápidas de construir una intuición práctica en torno al aprendizaje automático.
El objetivo es tomar modelos out-of-the-box y aplicarlos a diferentes conjuntos de datos. Este proyecto es impresionante por 3 razones principales:
En primer lugar, usted construirá la intuición para el ajuste del modelo al problema. ¿Qué modelos son robustos a los datos que faltan? ¿Qué modelos manejan bien las características categóricas? Sí, puedes escarbar en los libros de texto para encontrar las respuestas, pero aprenderás mejor viéndolo en acción.
Segundo, este proyecto te enseñará la inestimable habilidad de crear prototipos de modelos rápidamente. En el mundo real, a menudo es difícil saber qué modelo funcionará mejor sin simplemente probarlos.
Por último, este ejercicio te ayuda a dominar el flujo de trabajo de la construcción de modelos. Por ejemplo, podrá practicar…
- Importar datos
- Limpiar datos
- Dividirlos en conjuntos de entrenamiento/prueba o de validación cruzada
- Preprocesamiento
- Transformaciones
- Ingeniería de características
- Python: sklearn – Tutorial oficial del paquete sklearn
- Predicción de la calidad del vino con Scikit-Learn – Tutorial paso a paso para entrenar un modelo de aprendizaje automático
- R: caret – Webinar impartido por el autor del paquete caret
- Repositorio de aprendizaje automático de la UCI – Más de 350 conjuntos de datos con posibilidad de búsqueda que abarcan casi todos los temas. Seguro que encuentras conjuntos de datos que te interesan.
- Conjuntos de datos de Kaggle – Más de 100 conjuntos de datos subidos por la comunidad de Kaggle. Hay algunos conjuntos de datos realmente divertidos aquí, incluyendo las ubicaciones de desove de PokemonGo y los Burritos en San Diego.
- data.gov – Conjuntos de datos abiertos publicados por el gobierno de los Estados Unidos. Un gran lugar para buscar si estás interesado en las ciencias sociales.
- Apuestas deportivas… Predecir los resultados de las cajas dados los datos disponibles en el momento justo antes de cada nuevo partido.
- Búsqueda de talentos… Utilizar las estadísticas universitarias para predecir qué jugadores tendrían las mejores carreras profesionales.
- Administración general… Crear grupos de jugadores en función de sus puntos fuertes para construir un equipo completo.
- Base de datos de estadísticas deportivas – Estadísticas deportivas y datos históricos que cubren muchos deportes profesionales y varios universitarios. La interfaz limpia facilita el raspado de la web.
- Referencia deportiva – Otra base de datos de estadísticas deportivas. Interfaz más desordenada, pero las tablas individuales se pueden exportar como archivos CSV.
- cricsheet.org – Datos bola por bola para partidos de cricket internacionales y de la IPL. Hay disponibles archivos CSV para los partidos de la IPL y los internacionales T20.
- Inversión cuantitativa en valor… Predecir movimientos de precios a 6 meses basados en indicadores fundamentales de los informes trimestrales de las empresas.
- Previsión… Construir modelos de series temporales, o incluso redes neuronales recurrentes, sobre el delta entre la volatilidad implícita y la real.
- Arbitraje estadístico… Encontrar acciones similares en base a sus movimientos de precios y otros factores y buscar periodos en los que sus precios diverjan.
- Python: sklearn for Investing – Serie de vídeos de YouTube sobre la aplicación del aprendizaje automático a la inversión.
- R: Quantitative Trading with R – Apuntes de clase detallados sobre finanzas cuantitativas con R.
- Quandl – Mercado de datos que proporciona datos financieros y económicos gratuitos (y premium). Por ejemplo, puede descargar a granel los precios de las acciones al final del día de más de 3000 empresas estadounidenses o los datos económicos de la Reserva Federal.
- Quantopian – Comunidad de finanzas cuantitativas que ofrece una plataforma gratuita para desarrollar algoritmos de trading. Incluye conjuntos de datos.
- US Fundamentals Archive – 5 años de datos de fundamentos para más de 5000 empresas estadounidenses.
- Redes neuronales y aprendizaje profundo (libro online) – El capítulo 1 recorre cómo escribir una red neuronal desde cero en Python para clasificar dígitos de MNIST. El autor también da una muy buena explicación de la intuición detrás de las redes neuronales.
- MNIST – MNIST es un subconjunto modificado de dos conjuntos de datos recogidos por el Instituto Nacional de Estándares y Tecnología de Estados Unidos. Contiene 70.000 imágenes etiquetadas de dígitos escritos a mano.
- Detección de anomalías… Mapear la distribución de los correos electrónicos enviados y recibidos por horas y tratar de detectar comportamientos anormales que conduzcan al escándalo público.
- Análisis de redes sociales… Construir modelos de grafos de redes entre empleados para encontrar influenciadores clave.
- Procesamiento del lenguaje natural… Analizar el cuerpo de los mensajes junto con los metadatos del correo electrónico para clasificar los correos electrónicos en función de sus propósitos.
- Conjunto de datos de correo electrónico de Enron: se trata del archivo de correo electrónico de Enron alojado en la CMU.
- Descripción de los datos de Enron (PDF) – Análisis exploratorio de los datos de correo electrónico de Enron que podría ayudarle a obtener su base.
- Python: Logistic Regression from Scratch
- Python: k-Nearest Neighbors from Scratch
- R: Logistic Regression from Scratch
- Python: Mining Twitter Data – Cómo realizar un análisis de sentimiento en los datos de Twitter
- R: Sentiment analysis with machine learning – Tutorial corto y dulce de análisis de sentimiento
- API de Twitter – La API de twitter es una fuente clásica de datos en streaming. Puedes rastrear tweets, hashtags y mucho más.
- API de StockTwits – StockTwits es como un twitter para traders e inversores. Puedes ampliar este conjunto de datos de muchas formas interesantes uniéndolo a conjuntos de datos de series temporales utilizando la marca de tiempo y el símbolo del ticker.
- Atención preventiva… Predicción de brotes de enfermedades tanto a nivel individual como comunitario.
- Atención diagnóstica… Clasificación automática de datos de imagen, como escáneres, radiografías, etc.
- Seguros… Ajustar las primas de los seguros en función de los factores de riesgo disponibles públicamente.
- R: Construcción de modelos de aprendizaje automático significativos para la predicción de enfermedades
- Aprendizaje automático en la atención sanitaria – Excelente presentación de Microsoft Research
Dado que utilizará modelos ya preparados, tendrás la oportunidad de centrarte en perfeccionar estos pasos críticos.
Consulte las páginas de documentación de sklearn (Python) o caret (R) para obtener instrucciones. Debes practicar los algoritmos de regresión, clasificación y clustering.
Tutoriales
Fuentes de datos
Juega Money Ball
En el libro Moneyball, los Oakland A’s revolucionaron el béisbol a través de la búsqueda analítica de jugadores. Construyeron una plantilla competitiva gastando sólo 1/3 de lo que los equipos de gran mercado como los Yankees pagaban por los salarios.
En primer lugar, si no has leído el libro todavía, deberías echarle un vistazo. Es uno de nuestros favoritos!
Afortunadamente, el mundo del deporte tiene una tonelada de datos con los que jugar. Los datos de los equipos, los partidos, los resultados y los jugadores se rastrean y están disponibles libremente en línea.
Hay un montón de proyectos de aprendizaje automático divertidos para los principiantes. Por ejemplo, podrías probar…
Los deportes también son un dominio excelente para practicar la visualización de datos y el análisis exploratorio. Puedes utilizar estas habilidades para ayudarte a decidir qué tipos de datos incluir en tus análisis.
Fuentes de datos
Predecir los precios de las acciones
El mercado de valores es como la tierra de los caramelos para cualquier científico de datos que esté remotamente interesado en las finanzas.
En primer lugar, tienes muchos tipos de datos entre los que puedes elegir. Puedes encontrar precios, fundamentos, indicadores macroeconómicos globales, índices de volatilidad, etc… la lista es interminable.
Segundo, los datos pueden ser muy granulares. Puede obtener fácilmente datos de series temporales por día (o incluso por minuto) para cada empresa, lo que le permite pensar de forma creativa en estrategias de trading.
Por último, los mercados financieros suelen tener ciclos de retroalimentación cortos. Por lo tanto, puede validar rápidamente sus predicciones sobre nuevos datos.
Algunos ejemplos de proyectos de aprendizaje automático para principiantes que podría probar incluyen…
Descargo de responsabilidad obvio: construir modelos de trading para practicar el aprendizaje automático es sencillo. Hacerlos rentables es extremadamente difícil. Nada de lo aquí expuesto es un consejo financiero, y no recomendamos operar con dinero real.
Tutoriales
Fuentes de datos
Enseñar a una red neuronal a leer la letra
Las redes neuronales y el aprendizaje profundo son dos historias de éxito en la inteligencia artificial moderna. Han dado lugar a importantes avances en el reconocimiento de imágenes, la generación automática de texto e incluso en los coches autoconducidos.
Para involucrarse en este apasionante campo, debes comenzar con un conjunto de datos manejable.
El MNIST Handwritten Digit Classification Challenge es el punto de entrada clásico. Los datos de imágenes suelen ser más difíciles de trabajar que los datos relacionales «planos». Los datos del MNIST son aptos para principiantes y son lo suficientemente pequeños como para caber en un ordenador.
El reconocimiento de la escritura a mano le supondrá un reto, pero no necesita una gran potencia de cálculo.
Para empezar, le recomendamos el primer capítulo del tutorial que aparece a continuación. Te enseñará a construir una red neuronal desde cero que resuelva el reto MNIST con alta precisión.
Tutorial
Fuentes de datos
Investigar Enron
El escándalo y el colapso de Enron fue una de las mayores quiebras empresariales de la historia.
En el año 2000, Enron era una de las mayores empresas energéticas de Estados Unidos. Luego, tras ser descubierta por fraude, se precipitó a la quiebra en un año.
Por suerte para nosotros, tenemos la base de datos de correos electrónicos de Enron. Contiene 500 mil correos electrónicos entre 150 ex empleados de Enron, en su mayoría altos ejecutivos. También es la única gran base de datos pública de correos electrónicos reales, lo que la hace más valiosa.
De hecho, los científicos de datos han estado utilizando este conjunto de datos para la educación y la investigación durante años.
Ejemplos de proyectos de aprendizaje automático para principiantes que podrías probar incluyen…
Fuentes de datos
Escribir algoritmos de ML desde cero
Escribir algoritmos de aprendizaje automático desde cero es una excelente herramienta de aprendizaje por dos razones principales.
En primer lugar, no hay mejor manera de construir una verdadera comprensión de su mecánica. Te verás obligado a pensar en cada paso, y esto conduce a un verdadero dominio.
Segundo, aprenderás a traducir las instrucciones matemáticas en código de trabajo. Necesitarás esta habilidad cuando adaptes algoritmos de la investigación académica.
Para empezar, te recomendamos que elijas un algoritmo que no sea demasiado complejo. Hay docenas de decisiones sutiles que tendrá que tomar incluso para los algoritmos más simples.
Después de que se sienta cómodo construyendo algoritmos simples, intente extenderlos para obtener más funcionalidad. Por ejemplo, intente ampliar un algoritmo de regresión logística de vainilla en una regresión lasso/ridge añadiendo parámetros de regularización.
Por último, aquí hay un consejo que todo principiante debería saber: No se desanime si su algoritmo no es tan rápido o elegante como los de los paquetes existentes. Esos paquetes son el fruto de años de desarrollo!
Tutoriales
Mine Social Media Sentiment
Las redes sociales se han convertido casi en sinónimo de «big data» debido a la gran cantidad de contenido generado por los usuarios.
La minería de estos ricos datos puede ser una forma sin precedentes de mantener el pulso de las opiniones, las tendencias y el sentimiento del público. Facebook, Twitter, YouTube, WeChat, WhatsApp, Reddit… la lista es interminable.
Además, cada generación pasa aún más tiempo en los medios sociales que sus predecesores. Esto significa que los datos de los medios sociales serán aún más relevantes para el marketing, la marca y los negocios en su conjunto.
Aunque hay muchas plataformas de medios sociales populares, Twitter es el punto de entrada clásico para practicar el aprendizaje automático.
Con los datos de Twitter, se obtiene una interesante mezcla de datos (contenido de los tweets) y metadatos (ubicación, hashtags, usuarios, retweets, etc.) que abren caminos casi infinitos para el análisis.
Tutoriales
Fuentes de datos
Mejorar la atención sanitaria
Otro sector que está experimentando rápidos cambios gracias al aprendizaje automático es el de la salud global y la atención sanitaria.
En la mayoría de los países, convertirse en médico requiere muchos años de educación. Es un campo exigente con largas horas, grandes apuestas y una barrera de entrada aún más alta.
Como resultado, recientemente ha habido un esfuerzo significativo para aliviar la carga de trabajo de los médicos y mejorar la eficiencia general del sistema de salud con la ayuda del aprendizaje automático.
Los casos de uso incluyen:
A medida que los hospitales continúen modernizando las historias clínicas de los pacientes y a medida que recopilemos datos sanitarios más granulares, habrá una afluencia de oportunidades de fruta madura para que los científicos de datos marquen la diferencia.
Tutoriales
.