Puede aplicar el aprendizaje automático (ML) al mundo de los negocios seleccionando una biblioteca como TensorFlow (TF) desde el principio, todo lo que necesita es una idea del producto.
Para usar TF no necesita el conocimiento profundo sobre ML o aprendizaje profundo (DL), puede tratar los modelos ML como solo cajas negras y luego centrarse en:
- Recopilar los datos correctos en grandes cantidades.
- Limpieza de los datos.
- Optimización de hiperparámetros que se puede realizar mediante búsqueda aleatoria.
- Evaluación de modelos ML.
- Despliegue de modelos de producción.
- Supervisión del rendimiento del modelo ML de producción en manos de usuarios reales.
- Actualización de los modelos de producción.
Entonces, si desea obtener rápidamente un producto de ML mínimo viable, no se preocupe demasiado por dominar las teorías de ML. En unos minutos con TF, puede construir una red neuronal convolucional (CNN) y luego entrenarla en menos de una hora en miles de imágenes y luego tendrá un sistema de reconocimiento de imágenes.
- ¿Qué tan exitoso ha sido el modelo tópico LDA en la categorización de imágenes?
- ¿Qué es el aprendizaje no supervisado?
- ¿Qué modelo / algoritmo de ML utilizo?
- ¿Por qué un niño de 6 años puede realizar tareas de reconocimiento de objetos mejor que una red neuronal distribuida a gran escala con decenas de miles de núcleos de CPU, pero incluso un cerebro adulto no puede competir con un procesador anticuado cuando se trata de cálculos de procedimientos? ¿Qué falta en nuestro procesador?
- ¿Por qué no es una buena idea tener el mismo tren y equipo de prueba?
Sin embargo, tratar los modelos ML como cajas negras como sus límites. Es rápido si quiere un producto lo más rápido posible, pero no hay novedad. Casi cualquier persona puede recoger el tren TF e implementar un modelo ML. Todo lo que necesita es simplemente poder llamar a los métodos correctos de API (interfaz de programación de aplicaciones) desde TF y un desarrollador web típico sabe cómo llamar a las bibliotecas.
Si desea agregar un toque único a sus productos de ML, debe comenzar con los requisitos previos y luego pasar a técnicas más avanzadas para dominar el ML.
Estos son los requisitos previos en orden descendente de importancia.
- Álgebra lineal
- Vector.
- Matrices
El álgebra lineal es muy importante porque muchas operaciones en ML se basan en álgebra lineal y creo que hay muchos buenos materiales sobre álgebra lineal en línea.
- Estadísticas y probabilidad .
- Teorema de Bayes.
- Funciones de densidad de probabilidad.
- Variables aleatorias.
Muchas veces, la salida de los modelos ML debe estar en forma de probabilidades. Es por eso que tenemos las funciones sigmoide o softmax para calcular estas probabilidades en la salida. Con la probabilidad, es más fácil tomar decisiones y las probabilidades están limitadas entre 0 y 1, por lo que para el reconocimiento de imágenes, una probabilidad de 0.02 podría indicar que un objeto no está allí y una probabilidad de 0.91 puede indicar que un objeto está allí. Por lo tanto, puede tener un umbral de 0.5 para las probabilidades, pero puede ser difícil establecer un umbral para una salida ilimitada.
- Cálculo
- Calculo diferencial.
- Cálculo integral (no tan importante en ML).
El algoritmo de retropropagación se basa en la regla básica de la cadena del cálculo. Muchas veces no tendrá que lidiar con derivados en ML a menos que realmente quiera dominar los principios subyacentes y poder diseñar sus propias funciones novedosas de activación o costo.
- Optimización numérica .
- Métodos de primer orden como el descenso de gradiente (GD) o el descenso de gradiente estocástico (SGD).
- Métodos de optimización de segundo orden, como el método de Newton.
ML se basa principalmente en la teoría de optimización y muchos algoritmos de aprendizaje se basan en el descenso de gradiente por lotes, que es un híbrido entre GD y SGD. Comprender la optimización numérica es muy importante si desea dominar ML.
- Programacion
- Pitón
- Java
- C / C ++
También es importante ensuciarse implementando algunos modelos de ML. Implementar SGD y backprop desde cero es un ejercicio muy bueno para que tengas ganas de atacar más y más problemas desafiantes.
Normalmente, después de haber cumplido los requisitos previos, es posible que desee comenzar un proyecto paralelo. Cuando lea los requisitos previos, no intente memorizar, está bien olvidarlo porque la fase del proyecto paralelo lo obligará a revisar los conceptos más importantes y, por lo tanto, lo ayudará a consolidar mejor el conocimiento más importante. Leer solo no lo hará mejor, pero leer y practicar lo hará.
Por lo tanto, dedique tiempo a iniciar proyectos paralelos con una complejidad creciente en cada paso del progreso. Más tarde puede abrir el código fuente en GitHub o publicar en Kaggle.
También más tarde
- Trate de obtener pasantías en empresas que trabajan en ML como: @
- Google Brain
- Mente profunda
- OpenAI
- Investigación de Microsoft
- Investigación de AI en Facebook.
- Para hacer videos tutoriales basados en ML en YouTube.
- Responda las preguntas de Quora sobre ML.
- Escribe publicaciones de blog explicando conceptos en ML desde tu perspectiva.
El secreto para dominar es la consistencia durante un período prolongado de tiempo, especialmente si eres un novato completo, deberás asegurarte de estar leyendo y practicando constantemente.
Además, no espere hasta que se sienta muy cómodo con los requisitos previos antes de continuar. Comience con una descripción general de ML y luego siga avanzando, pero revise las cosas importantes en el camino.
Espero que esto ayude.