Cuando trabajamos en aprendizaje automático en big data, ¿podemos usar la biblioteca scikit-learn con MLlib?

Si bien se puede acceder a ambas bibliotecas desde Python (scikit-learn está escrito en código Python y MLlib tiene envoltorios Python alrededor de su código Scala), generalmente prefiero uno de los dos en función de la tarea en cuestión:

  1. Configuración de una sola máquina: cuando el conjunto de datos se ajusta a la memoria de una sola máquina y no se espera escalar en el futuro, prefiero scikit-learn. El sofisticado motor DAG de Spark para la ejecución de tareas se siente como una exageración en comparación con el backend numpy para scikit-learn.
  2. Configuración distribuida: cuando los tamaños del conjunto de datos son grandes o si desea lanzar más máquinas a un problema, MLlib es una opción preferible ya que se escala bien para el cálculo distribuido.

No hay soporte incorporado para compartir datos entre las dos bibliotecas, pero no debería ser difícil de hacer, ya que ambas pueden manejar matrices numpy.

Las respuestas anteriores fueron correctas cuando se escribieron. sin embargo, a fines de 2015 / principios de 2016, Databricks ha trabajado para cerrar parte de la brecha entre scikit-learn y spark.

Si bien no es una integración completa (por ejemplo, los algoritmos de aprendizaje individuales no están distribuidos) puede ayudarlo en su caso de uso, especialmente en lo que respecta a la capacitación y la validación.

El módulo se lanzó aquí:

Combinando las fortalezas de MLlib, scikit-learn y R

socializado aquí:

Autoescalar scikit-learn con Spark

Y se puede encontrar en

chispa-sklearn

y

spark-sklearn 0.1.1

La biblioteca distribuida de Aprendizaje automático (ML) de Spark. La integración es simple; la migración a ML distribuido se puede hacer perezosamente; y escalar a big data puede mejorar significativamente la precisión. Demostramos integración con un simple flujo de trabajo de ciencia de datos

Combinando las fortalezas de MLlib, scikit-learn y R

Sí, hay una interfaz de python para MLLib. Puede usar pyspark para acceder a MLLib. Sin embargo, scikit-learn no está integrado naturalmente con MLLib. Pero puede usar pyspark para llamar a los algoritmos de aprendizaje de scikit en paralelo, pero luego debe realizar los pasos de reducción de mapas usted mismo.

ATA No, Spark MLlib no tiene ninguna relación con scikit-learn. No usa Python, incluso.

More Interesting

¿Qué estudios serían los más útiles para nuevas empresas durante las próximas décadas, informática o ciencia de datos?

¿Cuál es la mejor manera de saber qué algoritmo de aprendizaje automático tiene una mayor probabilidad de clasificar con precisión o con mayor precisión un conjunto de datos, antes de aplicarlo?

¿Cuál es la diferencia entre los archivos .zip, .rar, .deb y .tar?

¿Cuál es el alcance de los grandes datos?

Cómo recuperar la ecuación de predicción de R

¿Cuáles son algunos paquetes de R que el científico de datos o un estadístico deben saber usar?

¿Qué es un buen instituto de capacitación para ciencia de datos y big data en Kolkata?

Soy muy bueno en probabilidad, estadística y matemática aplicada, ¿cómo obtengo un trabajo de ciencia de datos de nivel de entrada?

¿Cómo compararía las ofertas de especialización de "ciencia de datos" de Coursera y Udacity?

¿Cuáles son los conceptos erróneos comunes sobre la ciencia de datos?

¿Vale la pena gastar 3 lakh para el curso de ciencia de datos en INSOFE? ¿Realmente proporcionan ubicaciones?

¿Utiliza bibliotecas o código usted mismo cuando usa un algoritmo de aprendizaje automático? ¿Qué hace un científico de datos con esto en su trabajo?

¿Cómo elegir un filamento ABS de alta calidad? ¿Cómo entiendo los datos técnicos relevantes?

¿Existe alguna posibilidad de obtener un mejor trabajo después de la certificación de ciencia de datos?

¿Cómo sugeriría a una franquicia dónde abrir una nueva tienda?