¿Qué matemáticas se requieren para comenzar los cursos de aprendizaje automático?

Depende del nivel que realmente quiera comprender el campo. Al ver muchas versiones de cursos de aprendizaje automático en el nivel universitario y en línea, creo que hay dos niveles diferentes de cursos de aprendizaje automático, cada uno de los cuales requiere diferentes niveles de madurez matemática.

El primer nivel de cursos es algo que me gusta llamar “aprendizaje automático”. El curso Coursera de Andrew Ng sobre aprendizaje automático es un ejemplo de dicho curso. Muchas versiones en línea de cursos de aprendizaje automático se encuentran en este nivel.

Estos cursos se centran más en aplicaciones prácticas, introducen algunas de las matemáticas detrás de él, pero no profundizan en las matemáticas. Y eso está bien. Para algunas personas, estos cursos son mejores para ellos y pueden sacar mucho provecho de estos cursos. Estos son los antecedentes matemáticos que recomendaría para estos cursos de “aprendizaje automático”:

  1. Álgebra lineal básica: sepa cómo realizar operaciones con matrices, vectores, valores propios, vectores propios, etc.
  2. Cálculo multivariable: sepa qué derivadas parciales y gradientes son
  3. Probabilidad: conozca los conceptos básicos de modelado probabilístico, distribuciones gaussianas de variable única, etc.

Ahora, hay una segunda versión de los cursos de aprendizaje automático (estos cursos son más del nivel de posgrado, pero a veces también están abiertos para estudiantes universitarios). El curso de aprendizaje automático Berkeley CS 189 se encuentra en este nivel. El CS229 de Stanford: Machine Learning también se encuentra en este nivel. Estas clases profundizan mucho en por qué funcionan muchas de las técnicas en el aprendizaje automático moderno. Para comprender realmente una comprensión de los conceptos en este tipo de clases, será útil tener una formación matemática mucho más sólida:

  1. Fondo fuerte de álgebra lineal: siéntase cómodo con todo tipo de descomposiciones (por ejemplo, descomposición espectral, descomposición de valores singulares), cambio de bases, matrices simétricas, modelado, etc.
  2. Cálculo multivariable y matricial: sepa cómo tomar gradientes de expresiones que involucran matrices y vectores
  3. Probabilidad: probabilidad discreta y continua, variables aleatorias, distribuciones gaussianas multivariadas, estimación de máxima verosimilitud, estimación máxima a posteriori, límites de Chernoff, etc.
  4. Optimización: programación lineal, programación cuadrática, optimización convexa, que muestra la convergencia de diferentes técnicas de optimización, etc.
  5. Alguna teoría de la información es útil para comprender las funciones de pérdida, como la función de pérdida de entropía cruzada.

(1) es probablemente el más crucial, (2) y (3) son bastante importantes, mientras que (4) y (5) generalmente se pueden recoger a medida que avanza en estos cursos.

Al final del día, sin embargo, para comprender este campo, cuantos más antecedentes matemáticos tenga, mejor. En mi opinión, es mucho mejor pasar el tiempo extra teniendo los antecedentes suficientes que tratar de comprender los conceptos sin los antecedentes adecuados. Ese camino lo frustrará o lo engañará para que piense que comprende los conceptos cuando en realidad no lo hace en absoluto.

De CSC411: Aprendizaje automático y minería de datos (invierno de 2017) – Universidad de Toronto

Los estudiantes deben sentirse cómodos con el cálculo, la probabilidad y el álgebra lineal.

Aquí están (aproximadamente) las matemáticas que necesitas para este curso. Álgebra lineal: vectores: el producto escalar, la norma del vector, la suma del vector; matrices: multiplicación de matrices. Cálculo: derivados, derivados como la pendiente de la función; integrales Probabilidad: variables aleatorias, expectativa, independencia. Se necesitarán otros temas, pero no son parte de los requisitos previos, por lo que les dedicaré una cantidad adecuada de tiempo de lectura.

De CS229: Aprendizaje automático – Stanford

Se espera que los estudiantes tengan los siguientes antecedentes:

  • Conocimiento de los principios y habilidades básicas de la informática, a un nivel suficiente para escribir un programa informático razonablemente no trivial.
  • Familiaridad con la teoría de probabilidad (CS 109 o STATS 116)
  • Familiaridad con el álgebra lineal (cualquiera de Math 104, Math 113 o CS 205 debería ser suficiente)

================================================== ==========

¿Asumo que necesitas los materiales para comenzar? De lo contrario, omita esta parte.

CS109: Probabilidad para los informáticos – Stanford – que encontré materiales muy buenos, solo pasa por las diapositivas, puedes saltarte la tarea si no tienes mucho tiempo. Tengo una razón firme para dar sabor a este curso, porque leí un libro de texto y es muy disperso aquí y allá. Este curso es realmente * breve *. Stanford está extremadamente orientado a la ingeniería práctica.

De CS229: Aprendizaje automático – Stanford

  1. Revisión y referencia de álgebra lineal [pdf]
  2. Revisión de la teoría de la probabilidad [pdf]
  3. Descripción general de la optimización convexa, Parte I [ps] [pdf]
  4. Descripción general de la optimización convexa, Parte II [ps] [pdf]
  5. Modelos ocultos de Markov [ps] [pdf]
  6. La distribución gaussiana multivariante [pdf]
  7. Más sobre distribución gaussiana [pdf]
  8. Procesos gaussianos [pdf]

Si está confundido acerca del cálculo, puede recorrer las Lecciones 1 a 15 del Cálculo multivariable del curso abierto del MIT, tenga paciencia para ver los videos que también en Youtube (que omití el video, frustrado y me encuentro viendo de principio a fin ), definitivamente te ayudará!

Hay otros cursos agradables de Álgebra Lineal, etc. También puedes buscar en MIT Open Courseware.

Puede tener problemas con los derivados de vectores o matrices, si es así, consulte

Propiedades de los derivados de trazas y matrices

P / S: si desea comenzar a aprender ML, le recomiendo CS229: Machine Learning – Stanford

Las matemáticas y las estadísticas son la base del aprendizaje automático. Si quieres crecer con ML, debes tener una comprensión básica de las matemáticas. Le ayudará a seleccionar los algoritmos correctos, elegir parámetros, diseñar su algoritmo, validar la estrategia. Pero no necesita muchas matemáticas, en realidad depende del nivel de interés del individuo.

A continuación hay temas, puede ir a través de

  1. Álgebra lineal (matrices, descomposición de matrices, relación, espacios vectoriales)
  2. Probabilidades y estadísticas
  3. Calcula
  4. Algoritmos y estructuras de datos.
  5. Conjuntos y secuencias
  6. Límites
  7. Teoría de juego

Conocimientos básicos sobre álgebra lineal (operaciones vectoriales y matriciales). Al menos debe saber sobre Transposición, Inversa, Multiplicación de matrices. También necesitará conocimientos básicos sobre teoría de probabilidad y cálculo diferencial (derivados tanto ordinarios como parciales).

Por lo general, un mínimo de cálculo multivariable, álgebra lineal, cursos de probabilidad / estadísticas de nivel de posgrado y algún tipo de familiaridad con algoritmos / métodos de optimización. Sin estos, no comprenderá adecuadamente los supuestos de los métodos, su comportamiento asintótico y las posibles debilidades / prejuicios inherentes al método.

Cálculo multivariable, álgebra lineal y probabilidad. Tengo un curso en línea que abarca las matemáticas para el aprendizaje automático, para principiantes. Puede obtener más información visitando:

Introducción Lectura Matemáticas para Machine Learning

More Interesting

¿Qué se puede hacer en una computadora sin conexión a Internet?

¿Cómo utiliza la informática el método científico?

¿Podré obtener CSC o ECE en VIT con un rango de 54k en la categoría B?

Cómo mostrar el principio básico detrás de DMA (acceso directo a memoria)

¿Qué me estoy perdiendo si estoy usando Windows 7 en lugar de Linux / Ubuntu?

¿Cómo construirías un sistema de descubrimiento de drogas usando el aprendizaje automático?

¿Cuánto pagan los informáticos recién graduados, específicamente en el estado de Nueva York?

¿Cómo utiliza BOINC la energía de mi computadora?

¿Cuál es la diferencia entre sincronización de procesos y punto muerto? Si hay sincronización, ¿ocurrirá un punto muerto o no?

¿Cómo gestionar modelos de aprendizaje automático? ¿Cómo realiza un seguimiento de los modelos de aprendizaje automático mientras los itera? ¿Cómo se compara el rendimiento de diferentes modelos / conjuntos de datos? ¿Cuáles son algunos puntos débiles en su flujo de trabajo?

¿Cómo es tener posiciones académicas e industriales conjuntas en imágenes médicas, visión por computadora, gráficos por computadora o aprendizaje automático?

¿Cómo será IIIT-Nagpur para B. Tech en el lote CS de 2020?

¿Qué debo hacer como estudiante de primer año de pregrado para obtener una visión completa de CS?

¿Qué es la ley de Moore? ¿Está terminando?

¿Pueden las herramientas como WordPress, Webflow, wix, etc. ser un sustituto de la codificación HTML / CSS / JavaScript?