2010-11-17 21 views
25

Lo ideal es que tendría las siguientes características:¿Cuáles son algunos buenos ejercicios de programación de aprendizaje automático?

  1. Se pueden completar en tan sólo una noche de codificación. No requerirá una semana o más para obtener resultados interesantes. De esa manera, puedo sentir que he aprendido y logrado algo en solo una sesión (posiblemente de varias horas).

  2. Los problemas son del mundo real, o son al menos versiones de juguete de un problema del mundo real.

  3. Si el problema requiere datos para probar la solución, hay conjuntos de datos del mundo real fácilmente disponibles, o es trivial generar datos de prueba interesantes por mi cuenta.

  4. Es fácil evaluar la calidad de un trabajo que he hecho. Cuando pruebo mi solución, quedará claro a partir de los resultados que he logrado algo no trivial, ya sea por simple inspección o por una medida cuantificable de la calidad de los resultados.

Respuesta

22

implementar los siguientes algoritmos:

  • Perceptrón, perceptrón margen: se puede tratar de detectar imágenes de rostros (clasificar imágenes de rostros y no-caras) utilizando cualquier base de datos rostro. Pruebe por ejemplo el MIT CBCL face database. También puede probar el MNIST data y escribir el sistema de OCR de un hombre pobre.
  • LVQ, mapa de Kohonen: puede intentar comprimir imágenes. Puede descargar imágenes grandes desde cualquier sitio de fondo de pantalla.
  • Clasificador de bayes naive: puede clasificar el spam y no el spam. También hay conjuntos de datos más científicos, como Reuters y Newsgroups, etc. que debe determinar el tema, dado el artículo.
  • retropropagación, de múltiples capas perceptrón: Usted puede probar esto con las caras, o con el correo no deseado, o with the text/histogram data.
  • Primal aprendizaje lineal SVM utilizando SGD: se puede probar esto con MNIST dígitos, por ejemplo.

Hay un montón de proyectos, algunos de ellos toman un par de horas, algunos un par de días, pero definitivamente aprenderá mucho.

+0

¿Algún problema concreto con los conjuntos de datos reales? Puedo elegir cosas al azar de un libro de texto para implementar, pero para hacer un simple ejercicio sería bueno tener objetivos bien definidos y datos que lo acompañen. – jonderry

+0

He editado mi respuesta. – carlosdc

6

La mayoría de los proyectos de aprendizaje automático pueden llevar algún tiempo.

Howabout Bayesian clasificación del texto?

Una muestra del kit de herramientas NLTK (kit de herramientas de lenguaje natural para Python) son reseñas de películas. El conjunto de herramientas presenta reseñas de películas etiquetadas como positivas o negativas.

Escriba Clasificador bayesiano que puede clasificar las reseñas de películas, usando estos datos para entrenamiento.

6

Comprobar la UCI machine learning repository hacia fuera para conjuntos de datos reales.

El Breast Cancer Wisconsin (Diagnostic) Data Set por ejemplo. Consulte la descripción del conjunto de datos para obtener más información al respecto.

Incluso el clasificador Naive Bayes dará excelentes resultados en este conjunto de datos (más del 95% de precisión con validación cruzada). Con alguna selección de variables, puedes llegar al 100%, si mal no recuerdo.

Cuestiones relacionadas