¿Es elusiva la comprensión fundamental del aprendizaje automático? ¿Requiere habilidad matemática innata?

Sí, ML es definitivamente un campo pesado de matemáticas y estadísticas en comparación con la mayoría de los otros campos de la informática, y la parte de la teoría puede ser desalentadora para la mayoría de las personas que solo tienen experiencia en CS y no tienen suficiente exposición en técnicas estadísticas.

Ahora, respondiendo la parte sobre si debes dejar de tratar de entender los aspectos teóricos de ML:

TL; DR: ¡No te rindas todavía!

Aunque no puedo darle consejos específicos sin saber más sobre sus antecedentes y lo que ha estado haciendo durante el año pasado para “comprender [ML] completamente”, sin embargo, a partir de la formulación de la pregunta (extendida) es evidente que está frustrado con ser incapaz de obtener ese tipo de información sobre la naturaleza de los algoritmos de aprendizaje automático que generalmente puede obtener con relativa facilidad en otros campos de la informática.

Yo diría que no estás solo. Puedo decir que tengo una idea decente sobre cuáles son los algoritmos ML populares, dónde encontrar buenas implementaciones para ellos, qué tan bien funcionan para diferentes tipos de conjuntos de datos.

Sin embargo, no siempre puedo decir con seguridad por qué un algoritmo particular funciona de una manera particular. Esa suele ser una pregunta difícil, y probablemente en la frontera de la mayoría de las investigaciones académicas actuales en este campo. Tengo la sensación de que tu situación no es muy diferente a la mía 🙂

Pero déjame darte el ejemplo cliché del auto de carreras (del cual probablemente ya sabes, en cuyo caso esto debería ser un feliz recordatorio): un auto de carrera tiene diferentes niveles de abstracción :

  • El diseñador conoce el diseño, la aerodinámica, las parcelas de carga de motor vs consumo de combustible y otras cosas del automóvil.
  • El ingeniero sabe cómo lidiar con los problemas prácticos que pueden surgir el día de la carrera.
  • El conductor sabe cómo maniobrar el automóvil desde el principio hasta la bandera a cuadros.

El punto importante es que todas las posiciones son igualmente importantes, y ningún nivel subsume completamente al otro. Por lo general, un experto en un área no puede realizar fácilmente las tareas de un experto en otra área. Deben trabajar en armonía hacia un podio.

La belleza del campo del aprendizaje automático es que es emergente: muy pocas personas afirman haber entendido todas las complejidades que rodean a un algoritmo en particular. Sin embargo, habrá mucha demanda de grandes diseñadores (aquellos que estén bien versados ​​en la teoría matemática), ingenieros (aquellos que sean buenos para implementar algoritmos conocidos de manera eficiente) y conductores (aquellos que sean expertos en aplicar los algoritmos en los problemas correctos de la manera correcta) en este campo en el futuro inmediato. (Soy demasiado vago en este momento para agregar referencias, pero puedes buscar en Google esto y ver que casi todo el mundo está diciendo lo mismo en este momento). (La analogía del diseñador / ingeniero / conductor no es perfecta, pero espero que entiendas bien )

Ahora, una cosa que es común entre los diseñadores, ingenieros y conductores en el negocio de los autos de carrera es su amor por el concepto de autos súper rápidos de carreras. Del mismo modo, si la idea de algoritmos que pueden aprender de los datos para resolver problemas interesantes le entusiasma, entonces quédese. No te rindas todavía. Un año es menos tiempo para comprender completamente las complejidades de un campo que está realmente en la frontera del conocimiento humano en este momento. Siga trabajando en ello, inscríbase para obtener un título avanzado en este campo, o tome un trabajo que le permita experimentar y aumentar su comprensión sobre este campo. Tal vez después de años de experiencia con datos reales y de haber probado varios algoritmos, ver qué funciona y qué no, poner un gran esfuerzo mental para comprender los detalles minuciosos de varios enfoques, la información llegará lentamente a usted. Quizás para entonces usted decida qué función le conviene más: diseñador / ingeniero / conductor.

Al menos eso es lo que espero para mí 🙂

No estoy seguro acerca de la utilidad de esta respuesta para obtener una comprensión intuitiva, pero espero que te motive a continuar con tu búsqueda de la misma. Se avecinan tiempos emocionantes 🙂

Es a la vez difícil y fácil

en cierto sentido, sí, solo se trata de ejecutar una regresión o un algoritmo de agrupamiento …

y, sin embargo, he visto a muchas personas brillantes, doctores de las escuelas de la liga Ivy y directores de tecnología de las principales empresas, cometen errores descabellados, como

a. tratando de encajar directamente en el mercado de valores y luego supervisando el modelo
si. Agregar una variable molesta a un modelo que le cuesta a una empresa decenas de millones de dólares
do. Agregar datos nulos a un algoritmo y esperar que funcione

y yo a veces hago cosas tontas, como olvidar sembrar mis algoritmos correctamente u olvidar que siempre puedo ejecutar Kmeans cuando estoy atascado

La verdadera capacidad matemática y científica requiere educación y tutoría
Es por eso que el aprendizaje automático generalmente requiere un doctorado. Es la tutoría y el proceso de obtener un doctorado, y no solo las habilidades técnicas específicas, lo que vale la pena.

Del mismo modo, no hay sustituto para la experiencia práctica del mundo real. Puede haber algunas compañías ahora que pueden ofrecer un facsímil razonable.

Más importante…
Los descubrimientos científicos siempre parecen obvios una vez que se descubren.

En este sentido, la práctica de Machine Learning es muy diferente de la ingeniería de software. Por ejemplo

Estaba trabajando para una startup sin nombre hace unos años (que fue adquirida por Google) y el CEO me dijo “todo lo que hiciste fue escribir un script y ejecutar una herramienta de shell Unix”

y respondí

“Has tenido 3 doctorados trabajando en esto durante 9 meses y no has desarrollado nada”

Resolver el problema no es lo mismo que codificar la solución.

En palabras de Einstein

“Todo debe hacerse lo más simple posible, pero no más simple”

¡y esto es bastante difícil de hacer!

ML es tan difícil como quieras.

Creo que Andrew Ng, en el conocido Curso de ML en Coursera, dijo acerca de un tipo de red neuronal una vez que “todavía no es capaz de comprender completamente todas las matemáticas detrás del algoritmo”.

Recuerdo también que en una presentación de Coursera, Geoff Hinton (uno de los padres en las redes neuronales) declaró que “Yann LeCun es el único intestino que sabe que puede entrenar bien una red neuronal”.

No sé cuán precisas son las declaraciones, pero creo que la idea es clara: no pierdas la esperanza, no estás solo, incluso los Dioses no lo saben todo :).

Seguramente esto es solo un problema para encontrar el recurso de aprendizaje adecuado. Encontré lo siguiente útil

  • Amazon.com: Minería de datos: (La serie Morgan Kaufmann en sistemas de gestión de datos) eBook: Ian H. Witten, Eibe Frank, Mark A. Hall: Libros
  • David Barber: Brml
  • Página de tutorial de AWM

Me dijeron que https://www.coursera.org/course/ … también es bueno

No, el aprendizaje automático clásico es trivial de entender. Solo está encontrando grupos de datos en un gráfico N-dimensional.

Estoy de acuerdo en que es difícil. Creo que un enfoque estructurado para aprender lo básico y luego profundizar en lo específico podría ayudar. Encontré que algunos de los cursos en línea son realmente útiles. Especialmente el de Andrew Ng, que es profesor en Stanford. ( https://www.coursera.org/course/ml ). Estos cursos realmente lo hacen simple y las visualizaciones facilitan la comprensión de los fundamentos.

Diría que con un trabajo arduo y una aplicación enfocada, puede comprender cualquier área de ML que tenga valor para los nuevos productos y haga avanzar el campo.

La comprensión intuitiva se puede desarrollar con el tiempo, dele el tiempo y el trabajo que se merece y practique usando su intuición en cada paso. Analizar, predecir, confirmar. Comience con poco y aumente su valor agregado a medida que avanza. La determinación y la persistencia pueden proporcionar un valor real y, con el tiempo, sus esfuerzos serán recompensados.

Si siente que tiene lagunas en su comprensión del conocimiento fundamental, identifique y trabaje en las que más le impiden. Agradezca lo que ya sabe y puede hacer, y esfuércese por compartirlo con otros menos avanzados. Espero que esto te ayude a continuar tus esfuerzos en ML, y que uses tu inteligencia y motivación para hacer que sucedan más cosas grandiosas en el mundo.

La matemática del aprendizaje automático es trivial y fácil. La filosofía del aprendizaje automático es excepcionalmente difícil y compleja. Si te resulta difícil, es probable que te interese lo último 😉

More Interesting

Si encuentro que las matemáticas discretas son totalmente comprensibles pero no realmente emocionantes, ¿debería reconsiderar estudiar CS? (Soy un estudiante de segundo año)

¿Qué es la variable de referencia en C ++ y por qué se usa? ¿Cómo se relaciona con la variable de valor y la variable de puntero?

¿Cómo funcionan la Ley Idempotente y la Ley de Dominación?

Como estudiante de secundaria, ¿cómo puedo aprender Matemáticas para la informática?

¿Por qué me sigue mostrando el valor 0.0 en mi código Python?

Teoría estadística: ¿Cuáles son algunos resultados teóricos interesantes relacionados con la Estimación de la densidad del núcleo?

¿Hay una función que genera los primeros 41 números primos?

¿Qué tan importante es el modelado matemático para los científicos de datos?

¿Cuáles son algunos problemas simplemente en teoría de grafos o combinatoria para estudiantes universitarios?

¿Se consideran [matemáticas] \ matemáticas O (n ^ {\ log n}) [/ matemáticas] y [matemáticas] \ matemáticas O (n ^ {1+ \ log n}) [/ matemáticas] las mismas clases de complejidad?

¿Cuál es una buena manera de aprender y comprender la escritura dependiente en un idioma como Idris / Coq / Agda?

¿Aborda problemas difíciles de NP, como el problema de enrutamiento de vehículos, con algoritmos de ruta más corta? ¿Por qué?

¿Hay una mejor manera que la recursividad para encontrar palabras reducibles?

¿Cómo funciona el grupo electrógeno diesel?

¿Cuál es la mejor manera de aprender Haskell como alguien con una sólida formación matemática pura?