¿Por qué es importante conocer las matemáticas detrás del aprendizaje automático si desea implementar algoritmos de aprendizaje automático en el mundo real?

Déjame darte un ejemplo…

¿Cómo definirás una línea para las computadoras? Por su imagen? No. Tienes que darle su ecuación. Para que pueda entender lo que quieres decir.

Mira, Maths es solo una herramienta para expresar nuestros pensamientos. Es como un lenguaje de conversación entre humanos y máquinas. No entiende ingles. Pero sabe matemáticas.

Maths es una herramienta muy fácil que hace que nuestro trabajo sea fácil de dar órdenes a las máquinas. Pero internamente las máquinas no saben inglés, ruso o español … ¿Entendido?

La física completa se basa en reglas matemáticas. Podemos definir todo el UNIVERSO por nuestras matemáticas. Las matemáticas son generadas por los humanos (no por la naturaleza) y ahora dan una explicación al Universo (creado por la naturaleza) muy correctamente. Que maravilla

Que tengas un buen día.

Digamos que no conoce las matemáticas detrás del aprendizaje automático o los algoritmos de aprendizaje automático y que acaba de aprender cómo implementarlos en el lenguaje de programación en el que se sienta cómodo. Ahora no habría ningún problema en ejecutar un bosque aleatorio o un aumento de gradiente algoritmo o cualquier algoritmo que desee implementar en cualquier conjunto de datos que haya proporcionado, lo haya limpiado y tenga en un formato que su algoritmo pueda tomar como entrada (eliminando valores faltantes / conversión de variables categóricas en numéricas, etc. ) Incluso puede obtener una predicción sobre el conjunto de datos de prueba con una buena precisión.

Pero el problema es que no conoce las matemáticas detrás del algoritmo que está utilizando. Ahora tiene una predicción con una cierta precisión, pero no sabe cómo mejorarla porque no tiene idea de cómo esos parámetros en ese algoritmo están afectando su modelo. No sabes qué papel juegan realmente en tu modelo. Por lo tanto, no tiene ninguna ventaja al implementar ese algoritmo de esa manera, especialmente porque desea hacerlo en problemas del mundo real.

Ahora, si hubiera sabido las matemáticas detrás del algoritmo (no todas las derivaciones, cálculos y cosas complejas, sino al menos cuáles son los parámetros y cómo afectan su modelo y una idea básica de cómo su algoritmo intenta lograr lo que quiere lograr) ), entonces sabría cómo ajustar su modelo y obtener mejores predicciones y definitivamente cómo obtener buenos resultados para el problema del mundo real que está tratando de resolver.

Por lo tanto, saber un poco de matemática detrás de lo que está aplicando o cómo funciona su algoritmo siempre es una buena idea y esto es cierto no solo con la implementación de algoritmos de aprendizaje automático en el mundo real, sino de hecho en cualquier dominio.

¡Solo mis dos centavos! ¡Espero que esto ayude!

La cantidad de matemática importante depende de lo que quieras lograr.

En primer lugar, el aprendizaje automático es un campo complejo, donde conocer todas las matemáticas por sí solo no ayudará. Gran parte del progreso es el resultado de retoques, ideas locas, a veces incluso renunciando a lo obvio:

  • ¿No hay suficientes datos etiquetados? usemos rellenos (pre-entrenamiento no supervisado)
  • “Romper” cosas para arreglar algo (por ejemplo, arreglar el sobreajuste agregando ruido gaussiano o binario (también conocido como abandono; pero verlo como una red de conjunto necesitará ese pensamiento matemático))
  • haz las cosas un poco diferente, y obtienes un progreso 10 veces más rápido con 10 veces menos recursos (A3C)

Sí, necesita las matemáticas para la investigación, para formalizar nuevas ideas, pero necesita experiencia e imaginación aún más. Sin embargo, las matemáticas te ayudarán a vender la idea una vez que funcione.

Sin embargo, si solo desea construir una red neuronal para una aplicación práctica, una buena comprensión de alto nivel de cómo funcionan las cosas debería ser suficiente (un poco de matemática ayuda aquí). Use un marco que implemente todas las matemáticas y la capacitación Algos para usted, busque algunos valores predeterminados razonables para los hiperparámetros, luego siga ajustándolos hasta que las cosas mejoren (o haga una búsqueda en la cuadrícula). Sabiendo que las matemáticas no ayudarían aquí de todos modos; en su lugar, podría dirigirse al Tensorflow Playground (Tensorflow – Neural Network Playground) para desarrollar una comprensión intuitiva.

Además, puede ser útil navegar a través de un montón de trabajos de investigación sobre arxiv; incluso si ignoras gran parte de las matemáticas, generalmente puedes aprender mucho sobre las ideas genéricas detrás de ellas.

es como entender algo de adentro hacia afuera, sabes

Lo que los usas en el mundo real es la punta del iceberg. La matemática detrás de ellos es la parte sumergida, y el núcleo más importante del aprendizaje automático está oculto bajo una función de Python.

El aprendizaje automático como kit de herramientas es más un zoológico que una teoría unificada de los datos generados por la naturaleza.

Ignorando la belleza intrínseca y la efectividad de las matemáticas en el mundo real por un segundo, las matemáticas actúan como un protocolo de codificación que le permite comprimir las ideas centrales de ciertas implementaciones en su cerebro al eliminar los detalles específicos de la implementación y elevarlos a un nivel más amplio. estado abstracto de las relaciones.

Entonces, en ese sentido, las matemáticas actúan más como un codificador / decodificador, hasta el punto en que puedo encontrar un modelo arbitrariamente complejo para un problema, todo derivado sistemáticamente de los primeros principios, y confiando menos en un módulo de memoria externo (una receta libro).

Existen muchas familias diferentes y disjuntas de métodos, por lo que el ROI en matemáticas para un profesional como yo es inconmensurable.