Creo que harías bien en seguir mi camino, lo cual es bastante inusual.
Por mucho que un joven campo de Machine Learning (ML) pueda decir que tiene una “tradición”, adopté un enfoque muy poco tradicional. ¡Ni siquiera sabía que estaba haciendo ML!
Creo que hay un hecho importante de ML que se entiende poco. Hay tres patas para el taburete ML:
- Organización de la computadora: ¿Cuál es la aceleración de una versión de 5 etapas de la máquina en tubería sobre la versión sin tubería?
- ¿Qué significan las hipótesis finita e infinita en el aprendizaje automático? Cuáles son las diferencias entre ellos?
- Para un problema de clasificación supervisada, primero busque grupos a través de un algoritmo de aprendizaje no supervisado, y para los miembros en el mismo grupo, asigne la misma etiqueta según un voto mayoritario. ¿Funciona bien?
- ¿Qué es la programación probabilística?
- ¿Cuántas imágenes de entrenamiento deberían usarse para una buena tarea de reconocimiento de género en OpenCV? ¿Hay algún conjunto de datos disponible para esta tarea?
- Algoritmos de ML, como árboles potenciados de redes neuronales (NN), bosque aleatorio, máquinas de vectores de soporte, modelo lineal generalizado, etc. Esta área recibe todo el alboroto y la atención. Casi todos se acercan a ML desde este camino de arriba hacia abajo.
- Los Conjuntos de entrenamiento (TS) son la sangre vital de ML. Cualquier modelo tendrá inconvenientes si el TS tiene malas etiquetas, cobertura incompleta, etc. ¡Nada y nadie puede aprender de la nada!
- Las características son lo que se puede extraer de TS. Me preocupaba que NN pudiera aprender todas las facetas de un ejemplo del TS. Ciertamente es cierto para la visión artificial (CV) o el reconocimiento de voz (SE). Pero de lo que me he dado cuenta, es “costoso” para NN aprender de esta manera: necesita un TS grande y su entrenamiento demora mucho tiempo. Para CV y SR, no hay nada mejor. Pero para otros problemas, tener una visión profunda de cómo crear características puede ser bastante poderoso.
ML funciona tomando TS y sus características como entrada a un algoritmo de ML que construye el modelo. Si alguna de las tres patas se queda corta, el modelo también se quedará corto.
Hice mi carrera trabajando las otras dos piernas, que es más un enfoque de abajo hacia arriba. El truco es que me convertí en un experto en dominios en los datos, tanto en la creación de conjuntos de capacitación altamente curados como en la escritura de código para extraer características. Cuando estas tres patas se combinan, se puede construir un poderoso modelo ML.
Encuentro que mi intuición y mis habilidades no programables me permiten crear funciones y desarrollar conjuntos de entrenamiento. He tenido algunos éxitos como resultado.
Parte de esto, es que sé más estadísticas que el programador promedio y tal vez sé más programación que el estadístico promedio.
Mi papel es bastante complementario (y de apoyo) al ingeniero de ML “tradicional”. La parte difícil es lograr que las personas vean mi valor agregado, ya que la mayoría de las personas no se preocupan por las otras dos piernas tanto como deberían.
Entonces, sí, es posible conseguir un trabajo en ML pero puede que no sea fácil.