¿Cuál es el mejor software para Machine Learning y Deep Learning, de acuerdo con el tamaño del conjunto de datos y el sistema?

Las herramientas de aprendizaje automático (ML) mencionadas, Scikit learn, TensorFlow, Spark ML, Spark mllib, Mahout, CNTK (kit de herramientas cognitivas de Microsoft) y Torch, muchas de las cuales nunca he usado antes, son herramientas aparentemente poderosas y excelentes. Lo que pasa con ML es que no necesita preocuparse mucho sobre cuál es la mejor herramienta, esto es como tratar de optimizar un algoritmo mientras lo diseña al mismo tiempo. Es mejor tener un algoritmo lento que funcione al principio y luego optimizarlo que pasar más tiempo optimizándolo prematuramente.

No se preocupe, todas esas son excelentes herramientas, solo encuentre tiempo para elegir la que más le atraiga. Para mí, TensorFlow parece que será mejor con el tiempo, probablemente será el “mejor” en mi opinión, ¿por qué? Está respaldado por Google, que es una compañía líder de aprendizaje automático y fue desarrollado por un grupo de primer nivel, el equipo de Google Brain. Lo utilizan los grupos de investigación de primer nivel, OpenAI y DeepMind. Funciona en el sistema operativo Android y está listo para la producción, no solo para la creación rápida de prototipos como la mayoría de las bibliotecas. TensorFlow es una gran herramienta, lo digo porque es la única herramienta de ML con la que he jugado, por lo que esta es una preferencia personal hasta cierto punto.

A medida que las bibliotecas de ML se vuelven cada vez más maduras, la elección de cuál es mejor es simplemente una preferencia personal. TensorFlow está mejorando en una sola máquina con múltiples GPU o un grupo de máquinas o incluso servidores de Google Cloud para capacitación y pruebas. Obviamente, otras bibliotecas también están mejorando. Entonces, una regla general, si la biblioteca no recibe actualizaciones de mantenimiento periódicas, es malo, tonto.

Entonces, busque esas herramientas de ML que se mantienen regularmente. TensorFlow acaba de llegar a v1.0, eso es genial. No estoy seguro acerca de las otras bibliotecas, pero mientras la herramienta no se abandone, no veo ninguna razón para no usarla simplemente porque alguien le dijo que no es la mejor. Por lo tanto, elija uno en función de su prueba, qué tan cómodo se sienta con él y cuánto lo ama, la elección no afectará su conocimiento de ML.

Espero que esto ayude.

Chomba Bupe ya ha mencionado puntos que iba a escribir. Pero déjame agregar algunos puntos.

Debe probar diferentes bibliotecas y trabajar con las que le resulten más cómodas. Mis favoritos personales son TensorFlow y PyTorch. TensorFlow está por delante de otras bibliotecas y de varias maneras, pero parece que PyTorch está creciendo muy rápido. Además, es posible que le interesen los gráficos computacionales dinámicos donde la estructura del gráfico se define sobre la marcha durante la propagación directa y esa es la forma natural de codificación. (Para obtener más información, la respuesta de Savan Visalpara a ¿En qué se diferencia PyTorch de TensorFlow? ¿Cuáles son las ventajas de usar uno frente al otro? ¿Cuándo debo usar uno u otro?) PyTorch, TensorFlow Fold, Chainer, etc. pueden usarse para la dinámica cálculo.

H2O.ai para múltiples computadoras distribuidas o R Studio para una sola máquina. El otro software también es genial. Quizás mejor que estos. Pero encontré estos fáciles de usar y potentes.