Qué algoritmos de aprendizaje automático se pueden escalar usando hadoop / map-reduce

9

Los algoritmos de aprendizaje automático escalables parecen ser el zumbido en estos días. Cada empresa maneja nada menos que big data . ¿Existe un libro de texto que discuta qué algoritmos de aprendizaje automático se pueden escalar usando arquitecturas paralelas como Map-Reduce y qué algoritmos no pueden? O algunos documentos relevantes?

Nik
fuente

Respuestas:

4

Vowpal Wabbit, un programa de aprendizaje automático muy rápido enfocado en el aprendizaje de descenso de gradiente en línea, se puede usar con Hadoop: http://arxiv.org/abs/1110.4198 Sin embargo, nunca lo he usado de esta manera. Si lo entiendo correctamente, realmente solo usa Hadoop para la confiabilidad y para proporcionar los datos a los procesos de Vowpal Wabbit. Utiliza algo como AllReduce de MPI para hacer la mayor parte de la comunicación.

ektrules
fuente
4

Como Jimmy Lin y Chris Dyer señalan en el primer capítulo de su libro sobre Minería de texto intensiva en datos con MapReduce , a grandes escalas de datos, el rendimiento de diferentes algoritmos converge de tal manera que las diferencias de rendimiento prácticamente desaparecen. Esto significa que, dado un conjunto de datos lo suficientemente grande, el algoritmo que desearía usar es el que es computacionalmente menos costoso. Solo a escalas de datos más pequeñas importan las diferencias de rendimiento entre algoritmos.

Dicho esto, su libro (vinculado anteriormente) y Mining of Massive Datasets de Anand Rajaraman, Jure Leskovec y Jeffrey D. Ullman son probablemente dos libros que también querrá consultar, especialmente porque están directamente relacionados con MapReduce para fines de minería de datos.

Richard D
fuente
1
"... a gran escala, el rendimiento de diferentes algoritmos convergen ..." No lo sabía. Gracias por esta información útil. Además, me topé con "Minería de conjuntos de datos masivos" y lo encontré muy útil. También miraré el otro libro.
Nik
1

Nadie ha mencionado el siguiente artículo: http://papers.nips.cc/paper/3150-map-reduce-for-machine-learning-on-multicore.pdf (Andrew Ng es uno de los autores)

El documento en sí es para máquinas multinúcleo, pero se trata esencialmente de refundir problemas de aprendizaje automático para que se ajusten al patrón de reducción de mapas y puedan usarse para un grupo de computadoras. (para ver por qué esa no es una buena idea en general, puede leer este documento: http://arxiv.org/pdf/1006.4990v1.pdf . Tiene una buena visión general).

usuario48654
fuente
Además, Mahout fue un intento de implementar el documento de Andrew Ng que mencioné.
user48654