Mi colega dijo que TensorFlow es la biblioteca de aprendizaje automático más simple para principiantes, ¿qué tan cierto es eso?

Todos los marcos apuntan a ser fáciles de comenzar. Puede hacer un par de tutoriales y pensar que ha terminado de explorar Tensorflow.

Ese no es el caso. Lo primero que hay que entender es que TF no se trata de Python en absoluto, solo tiene una API de Python para secuencias de comandos. Debe saber que nada de lo que codifique significará algo hasta que cree una sesión para ejecutarlo en el código central subyacente (que no está en Python).

En segundo lugar, probablemente le llevará 15 minutos poder construir un gráfico y entrenarlo en MNIST para obtener una precisión arbitraria. Cuando decide mezclar cosas y hacer, por ejemplo, segmentación de instancias con Entrenamiento Adversarial Virtual en N gpus paralelos y gradientes de monitoreo en una sesión de depuración para ver en qué capa la pérdida de lds se convierte en NaN … entonces probablemente tenga 2–3 meses de prueba-error, problemas de github, stackoverflow, quora viajes por delante …

La más fácil en términos de modularidad y facilidad de creación de prototipos es Keras. Recientemente se convirtió en la API oficial de alto nivel para Tensorflow (uno de sus motores de fondo ya era TF)

No estoy de acuerdo con tu colega. Tensorflow no es exactamente una biblioteca de aprendizaje automático: es una biblioteca para la optimización y el álgebra simbólica, en particular para operaciones de vectores / matrices. Fue diseñado para el aprendizaje profundo (redes neuronales profundas) pero también puede usarse para otros tipos de problemas (por ejemplo, GPflow). De las bibliotecas de redes neuronales de bajo nivel, creo que Tensorflow es el más fácil de aprender desde cero, pero eso se debe principalmente a la gran cantidad de documentación disponible.

Si conoce algo de Python básico y desea una biblioteca de aprendizaje automático muy simple, mire scikit-learn. Está bien documentado y es muy intuitivo (cada algoritmo es una clase, crea una instancia de esa clase y usa sus métodos de ajuste y predicción).

Diría que TensorFlow es el marco de aprendizaje profundo más fácil que existe. Por supuesto, hay diferentes bibliotecas de ciencia de datos / aprendizaje automático, como scikit-learn, que son posiblemente más fáciles que TensorFlow. Sin embargo, Tensorflow se distingue de la competencia debido a su marco relativamente fácil de usar para el entrenamiento de redes neuronales. Tensorflow excluye una gran cantidad de verbosidad molesta e innecesaria, al tiempo que tiene una plataforma más simple para agregar capas y optimizar modelos.

Otra biblioteca de aprendizaje profundo relativamente fácil sería Keras, aunque tiene un propósito más general que Tensorflow. En general, sin embargo, no llegará demasiado lejos con Tensorflow o cualquier marco de aprendizaje profundo solo con su CPU, por lo que si recién está comenzando, recomendaría un análisis estadístico de datos / aprendizaje automático.

Como alternativa, recomendaría H2O. Es fácil de instalar y fácil de ejecutar. Tiene API para Python, R, Java y Scala.

También puede aprovechar múltiples núcleos.