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:
- 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.
- 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.
- ¿Cuál es la diferencia entre un actuario y un científico de datos?
- ¿Hay un programa de maestría para ciencia de datos / aprendizaje automático en ETH Zurich? ¿Qué tan bueno es en comparación con los de las universidades de los Estados Unidos, por ejemplo, Berkeley, etc.?
- ¿Qué es la pérdida de registro en las competiciones de Kaggle?
- ¿Qué tan confiables son las estadísticas oficiales del gobierno en los Estados Unidos?
- Si pudiera contratar a 4/5 científicos / ingenieros para un equipo de análisis de big data centrado en elegir y responder preguntas comerciales concretas (por ejemplo, predecir una solicitud de producto), ¿cómo lo construiría?