¿Qué es un buen proyecto de aprendizaje automático para un estudiante? ¿Funcionaría bien una competencia de Kaggle?

Tomar una competencia de Kaggle como una idea de proyecto podría ser bueno porque:
– Obtiene un conjunto de datos disponible para su problema (de los datos de la competencia)
– Buscará una pregunta bien formada, es decir, una que garantice que tendrá cierto nivel de éxito.
– Pasarás tiempo probando varios enfoques que parecen interesantes. Si es una competencia en curso, tendrá el apoyo de las discusiones del foro. Si es antiguo, puede obtener mucha información de los archivos de la competencia.

Sin embargo, las mismas razones pueden ser problemáticas de alguna manera:
– El conjunto de datos puede tener restricciones de uso más allá de la competencia (debe enviar un correo electrónico a un representante de Kaggle y averiguar los derechos de autor en los datos de la competencia)
– Estará limitado a seguir la pregunta exacta planteada en la competencia, mientras que en el centro del proyecto puede darse cuenta de que hay una modificación interesante en el problema que desea abordar. Sería mejor tomar un tema ligeramente abierto y ver a dónde conduce.
– Puedes ser dependiente del foro de la competencia para obtener ideas y, básicamente, puedes terminar reimplementando las estrategias de los mejores concursantes.

Básicamente, si desea tener un componente de investigación para el proyecto, tomar una idea de concurso de Kaggle existente puede ser restrictivo. Elimina un aspecto interesante de los proyectos de LD, que es la formulación de problemas.

Sin embargo, si está más interesado en implementar enfoques que se sabe que funcionan y en analizar su rendimiento, sería una buena idea abordar un problema de competencia de Kaggle.

Pero mi mayor consejo sería, si es posible, acercarse a un profesor de su universidad que esté trabajando en problemas desafiantes que le interesen, y tratar de asumir una parte de ese problema como su proyecto final del semestre. De esa manera, su profesor puede aconsejarle cuando esté atascado, podrá trabajar en problemas de investigación de vanguardia en el ML, podrá implementar las ideas del profesor y ver cómo se desempeñan, y se familiarizará con las formas de abordar los problemas de ML .

  1. Elija un dominio en el que esté interesado o ya tenga algún conocimiento (p. Ej., Finanzas, redes sociales, etc.)
  2. Busque los conjuntos de datos en ese dominio. Hay muchos sitios gratuitos que le dan acceso a toneladas de conjuntos de datos. Aquí hay una pareja para empezar:
  • Repositorio de aprendizaje automático de la UCI
  • Algunos conjuntos de datos disponibles en la web

3. Si tiene tiempo, intente implementar su propia versión de una técnica popular (comience simple: clasificador Naive Bayes, regresión lineal, etc.). Una vez que haya implementado un par, intente probarlos en bibliotecas estándar (pruebe R o scikitlearn en Python).

4. Visualiza tus resultados. El objetivo no es solo implementar algún modelo en algunos datos. El objetivo es ver qué tendencias puedes encontrar, qué estadísticas son interesantes. Desea que sus resultados finales cuenten una historia, además de informar la precisión de su modelo. Incluso puede hablar sobre cómo intentaba implementar su propia versión de una técnica (por qué eligió esa técnica, qué errores cometió, qué aprendió, qué estructuras de datos / herramientas fue útil, cómo se desempeñó su versión en comparación con una implementación estándar). etc).

Finalmente, si necesita algo de inspiración, hay una lista muy sólida de ideas en la siguiente pregunta. La mayoría de los conjuntos mencionados son muy estándar:
¿Cuáles son algunos problemas de juguetes buenos (se pueden hacer durante un fin de semana con un solo programador) en ciencia de datos? Estoy estudiando el aprendizaje automático y las estadísticas, y estoy buscando algo socialmente relevante utilizando conjuntos de datos / API disponibles públicamente.

Se puede encontrar un gran recurso sobre cómo construir su propio proyecto de aprendizaje automático en este enlace: Proyectos finales de aprendizaje automático de CS 229, otoño de 2015. Los estudiantes que toman el curso de aprendizaje automático de CS229 en Stanford deben presentar un proyecto de este tipo. Los temas de aprendizaje automático incluyen:

  • Atletismo y dispositivos de detección
  • Audio y musica
  • Visión por computador
  • Finanzas y Comercio
  • Aprendizaje de máquina en general
  • Ciencias de la vida
  • Lenguaje natural
  • Ciencias fisicas
  • Teoría y refuerzo

Básicamente, elija un área en la que esté interesado, busque los proyectos de esa área específica, y luego lea esos documentos y luego lea también los temas relacionados. Esto te ayudará a formar tu idea.

Ahora cómo implementar la idea. Algunas cosas para centrarse en:

  • ¿Cómo obtener el conjunto de datos? Un buen sitio es UCI Machine Learning Repository. Además, tiene la mayor cantidad de datos de entrenamiento que sea posible
  • Elegir el mejor algoritmo para tu modelo. Lea sobre muchos tipos de algoritmos, que incluyen las máquinas de vectores de soporte (SVM), el agrupamiento de k-means, la regresión logística y los ingenuos Bayes.
  • Preproceso de los datos antes de que el algoritmo de aprendizaje utilice los datos.
  • Utilizando el número correcto de características.
  • ¿Qué tecnologías necesitas? ¿Qué lenguajes de programación y qué bibliotecas?

Sí, podría haber.
Aunque no voy a ayudarlo con su tarea, aquí hay algunas ideas que podrían ayudarlo a comenzar:

  1. Podría tener un sistema inteligente que se conecte a un servicio de automatización del hogar y encienda o apague aparatos como luces, ventiladores, acondicionadores de aire o calentadores, etc. según los hábitos diarios del usuario. Esto implicaría algún tipo de aprendizaje automático y ayudará a ahorrar energía a largo plazo.
  2. Dado un conjunto de elementos de circuito y un circuito válido, podría usar algoritmos genéticos para intentar optimizar el circuito de manera que cualquier falla en el circuito pueda predecirse y optimizarse con precisión. También puede usarlo para darle el circuito más eficiente de un conjunto de elementos.

Estas son solo dos opciones de la parte superior de mi cabeza. Tómese un tiempo para investigar los diversos tipos e implementaciones de aprendizaje automático para poder crear el mejor proyecto posible. ML es muy versátil y puede usarse en muchas circunstancias. Elige lo que más te convenga.

Si usted es un principiante de aprendizaje automático y está buscando comenzar a usar Proyectos de Aprendizaje Automático, le sugiero que primero realice experimentos de inteligencia artificial de Google, que no debería perder aquí.

En esta respuesta, estaremos recorriendo 100 ideas divertidas de proyectos de aprendizaje automático para estudiantes de último año. Apreciará el aprendizaje, permanecerá estimulado y ganará terreno más rápido.

Estos proyectos le permiten mejorar sus habilidades de ML conectadas rápidamente, mientras que le permiten investigar un punto interesante.

Si usted es un principiante de aprendizaje automático y desea comenzar a trabajar en Proyectos de Aprendizaje Automático, le sugeriría que lo vea aquí .

Aquí están los Lista de Proyectos de Aprendizaje Automático Distinguidos del Año Final Más de 100 ideas o sugerencias para los estudiantes del Año Final , puede completar cualquiera de ellos o ampliarlos a proyectos más largos si los disfruta.

El aprendizaje automático es un poder energizante y disruptivo en el mundo de la tecnología, y los propietarios de pequeñas empresas querrán ser claros sobre las promesas, los resultados e incluso los riesgos de esta tecnología emergente. ¿Qué tal si paseamos por las 30 cosas más imperativas que todos deberían saber sobre el aprendizaje automático en este momento?

Debes ver los proyectos de GitHub Top and Best Machine Learning aquí.

Y para proyectos Deep Learning Github aquí.

Para los proyectos de AI Github no debes perderte aquí.

¡¡Buena suerte!!

No sé realmente sobre temas recientes, pero estoy seguro de que puede encontrarlos si visita los sitios web del departamento de la universidad donde se publican esos trabajos de investigación.

Aunque me pregunto si puedo ser de alguna ayuda, creo que hay tres criterios que deberías satisfacer para encontrar un buen tema:

  1. Disponibilidad lista de grandes corpus textuales (espacio de tema estrecho, amplia gama de textos)
  2. Una ‘fuerza de trabajo’ motivada para la supervisión del aprendizaje (asumiendo enfoques semi-supervisados)
  3. Una aplicación práctica de la salida que tal vez alguien no haya visto todavía.

1. Disponibilidad de texto, se puede dividir en dos categorías:

i) donde el contenido se publica para el consumo público: las bibliotecas académicas, las fuentes de noticias, las publicaciones gubernamentales y los textos legales son buenos lugares para comenzar.

ii) donde los individuos publican: foros en línea, redes sociales, mensajes de correo electrónico, transcripciones de conversaciones verbales

Esta publicación de Quora es un índice creciente de contenido disponible: ¿Dónde puedo encontrar grandes conjuntos de datos abiertos al público? Y también mantengo uno aquí: Fuentes de datos.

2. Fuerza laboral para la formación.

Es difícil encontrar la fuerza de trabajo que realizará las tareas de capacitación, incluso si se les paga, deben estar motivados y seguir sufriendo fatiga.

Las formas tan mágicamente fáciles de conseguir que una gran población de personas trabajen gratis realizando micro-tareas serían ideales. Cada vez que alguien interactúa con la salida, debe realizar una tarea de capacitación para usted.

A pesar de toda la prensa negativa, me gusta el estudio de las emociones en Facebook: evidencia experimental de contagio emocional a gran escala a través de las redes sociales.

¿Qué beneficio puede proporcionar a estas personas que harán que trabajen para usted? Esto podría ir a la aplicación práctica, porque si la aplicación es buena, entonces la gente la usará, etc.

3. Aplicación práctica de la salida.

Volviendo a los conjuntos de datos que está pensando en utilizar, es posible que necesite conocerlos y por qué el análisis de grandes corpus de ellos sería muy beneficioso.

Lo que pienso aquí es que si tiene una aplicación de destino y puede encontrar a alguien que pueda beneficiarse, eso le proporciona un conjunto de restricciones a su investigación (que puede tomar o dejar). Por lo general, las restricciones hacen que lo que intenta hacer sea más creativo y único.

Espero que sea de ayuda … deseándoles suerte en su búsqueda de proyectos.

The NLP Group en Stanford tiene una serie de buenas páginas donde puede obtener ideas: The Stanford NLP (Natural Language Processing) Group, Carnegie Mellon también: NLP / CL en Carnegie Mellon

Al igual que en el proyecto del año final, My Friend había escrito un programa para la aplicación de reconocimiento óptico de caracteres, utilizando los conceptos de NLP y red neuronal. La inteligencia artificial es un tema muy complejo que viene con cientos de aplicaciones, pero sugeriré un proyecto muy simple que puedes hacer como tu proyecto final.

OCR- Proyecto muy similar. está disponible en codeproject
http://www.codeproject.com/Artic
Puede multar el algoritmo básico de OCR en StackOverflow

Poner un poco de investigación en la aplicación de red neuronal utilizando Java como red neuronal es esencial para el aprendizaje automático.

Algunos enlaces útiles a la introducción a la Red neuronal artificial con implementación de código paso a paso
Tutorial de red neuronal artificial con implementación de código paso a paso

Encog = Marco de Inteligencia Artificial Avanzada
Una introducción a Encog Neural Networks para Java

Esto es sólo para cubrir lo básico. Una vez que haya terminado con esto, tendrá una mejor idea de lo que debe hacerse. Luego viene la parte difícil – ¡Cómo!

Aquí hay un sitio para proyectos de muestra en una aplicación de red neuronal: Java Neural Network Framework Neuroph

Puede encontrar fácilmente la interfaz o el marco para el proyecto. ¡Todo lo que tienes que hacer es escribir y ajustar el código en consecuencia!

Los proyectos de Kaggle tienden a eliminar la parte más interesante de la aplicación del aprendizaje automático, que es el mapeo de un problema real a la clasificación y / o regresión, y la selección del conjunto inicial de características.

Dicho esto, hacer una tarea de Kaggle puede ser divertido. ¿Qué tal si escoge un problema cuya fecha límite ha pasado y trata de replicar los resultados ganadores?

Como desea algún proyecto introductorio, sugeriré algunos que son relativamente fáciles de implementar y tienen mucho material de apoyo para guiarlo y enseñarle a lo largo del camino.

  • Analizador de red
  • Filtro de spam utilizando análisis de regresión
  • OCR para un solo carácter (números y letras)

Si tiene alguna habilidad de hardware / electrónica, al colocar un sensor PIR en una habitación puede implementar un algoritmo para analizar el patrón de su presencia y movimiento en comparación con el tiempo, el clima, el día, etc.

A2A

Me temo que no he tenido tiempo de explorar ML con mucho detalle. Pero, la lista de proyectos de alta prioridad de la FSF [1] de alguna manera se ha quedado en mi cabeza por un tiempo. Si tuviera tiempo libre y la voluntad de trabajar en un proyecto de ML, definitivamente iría con la transcripción automática. Es decir, cuando se reproduce un video (se puede comenzar con un solo idioma, [¿Inglés?]), El audio se convierte automáticamente en texto (alto índice de corrección) y, por lo tanto, genera subtítulos automáticamente al vuelo. Requerirá una combinación elegante de algunos procesamientos de audio (NLP?) Y ML y debe valer la pena como un proyecto de licenciatura.

[1] – Proyectos de software libre de alta prioridad

Mi comprensión de la pregunta es que desea un conjunto de datos para comenzar con los conceptos básicos del aprendizaje automático.

IRIS los mejores datos en los que puede trabajar. Es pequeño y desarrollado por el famoso estadístico Fisher. Puedes usar casi todos los clasificadores para trabajar.

Dataset Titanic de Kaggle. Es realmente bueno ensuciarse las manos con esto.

Los datos de Facebook también están allí en los que puedes trabajar.

Estas son algunas de las referencias que he encontrado:

Página en uob.edu.pk

10-701 Machine Learning :: Proyectos

Proyectos finales de aprendizaje automático, otoño 2013

También mire esta pregunta en Quora: – ¿Qué es un buen proyecto de aprendizaje automático para un estudiante universitario? ¿Funcionaría bien una competencia de Kaggle?

Cualquier cosa relacionada con el Aprendizaje Profundo para la PNL puede ser probada. El aprendizaje profundo se muestra prometedor para resolver problemas de PNL. Esta es un área que vale la pena explorar y aprender.

Identifique a un amigo de su red social mediante una lista de nuevos estados dados.

Estaba pensando en eso antes, pero fui transferido a alguna otra dirección debido a alguna razón.