¿Qué tan importante es la matemática para una IA?

Las matemáticas son importantes para la IA, por supuesto. Pero para realmente impulsar el progreso de la IA, necesitamos muchas aplicaciones que exploten la economía de la escala. Lo que significa, hacer que la IA sea tan barata que casi todos puedan pagarla, a pesar de que la I + D inicial requiere muchos recursos y requiere una inversión sustancial.

Por lo tanto, la forma de avanzar es kernelize / encapsular las matemáticas de la IA en una herramienta habilitadora. Esto es lo que Google ha hecho con TensorFlow, y también otros marcos como Theano se esfuerza por hacer. Si bien es bueno comprender las matemáticas detrás del aprendizaje automático y el aprendizaje profundo, también debemos hacer una distinción entre los desarrolladores de aplicaciones y los desarrolladores de sistemas. Esta distinción es aproximadamente la misma entre los programadores y los desarrolladores del sistema operativo. Los desarrolladores del sistema operativo son especialistas que permiten a los programadores escribir aplicaciones sin tener que preocuparse por las peculiaridades e idiosincrasias de varios procesadores de hardware. Sin embargo, sí ayuda al programador a conocer las diversas características y las compensaciones asociadas con él.

Así que puedes pensar en las matemáticas como el sistema operativo de las aplicaciones de IA. Los desarrolladores de aplicaciones necesitan saber acerca de las herramientas en su kit de herramientas, sus fortalezas y debilidades que los ayudarían a resolver el problema en cuestión, y no preocuparse por construir el conjunto de herramientas.

En un nivel abstracto, AI se preocupa por encontrar el tipo de función “correcta” , que toma la entrada y produce la salida esperada (la mayoría de las veces). Si la función “correcta” es proporcionada directamente por el humano, entonces se parece a un algoritmo. Ejemplo: si proporciono un algoritmo de ordenación, y proporciono un montón de números, y obtengo números ordenados como salida. Sin embargo, si una máquina aprende por sí misma a ordenar, como resultado de haber sido entrenada con numerosos ejemplos, comenzamos a entrar en el dominio de la inteligencia artificial. La mayor parte de las matemáticas tiene que ver con permitir que la máquina aprenda la “función” correcta de una manera efectiva y computacionalmente eficiente. Los profetas de datos han proclamado que la cantidad de datos puede vencer efectivamente a los mejores algoritmos.

Entonces todo se reduce a si quieres salir a cazar con el arco y la flecha, hecho por el tipo inteligente, o si prefieres hacer el mejor arco y flecha. Algunas personas hacen ambas cosas, algunas son buenas en una de ellas. Sin embargo, es muy posible que el mejor arquero y los mejores arqueros sean personas diferentes con un temperamento y una misión diferentes.

Voy a tomar una visión contraria aquí: realmente depende de la aplicación, y si el 80% es o no lo suficientemente bueno, con una gran excepción si tiene datos muy escasos o muy ruidosos o muy largos, o si va a aplicar un modelo que no sea un árbol impulsado o una red neuronal. Esa es la respuesta corta. La larga respuesta sigue.

A medida que mi carrera se desarrollaba, el aprendizaje automático estaba de moda como una herramienta para la producción de productos (aunque como una técnica de ciencia de datos tiene siglos de antigüedad), y había un ecosistema bastante limitado a su alrededor. Algunos de los modelos iniciales que construí los escribí a mano. No hace falta decir que una comprensión profunda de las matemáticas era esencial. Solía ​​encontrarme con todo tipo de problemas matemáticos, desde la optimización a utilizar hasta cómo manejar matrices singulares y pequeños errores de redondeo que se propagan a través del modelo y se vuelven muy significativos. Los grandes datos exacerbaron mucho esto: muchas de las técnicas (como calcular el SVD) no se distribuyeron bien.

Pero con el tiempo, gran parte del aprendizaje automático se ha mercantilizado. Ciertamente no necesita un doctorado en CS para implementar una solución construida a partir de la antorcha o el flujo de teano o tensor, y un curso de 10 semanas en ciencia de datos lo llevará a un punto moderadamente competente con muchos modelos sin realmente aprender matemática Detrás de eso. La ‘mercantilización’ del aprendizaje automático no se aplica universalmente: hay muchos problemas, como la predicción de resultados médicos (un área donde actualmente trabajo), donde el problema sigue siendo lo suficientemente desafiante (más sobre cómo identificar estos problemas a continuación). Pero esta es la tendencia.

Pero la mayoría de los problemas de “IA” no tienen esa característica. Para un sistema típico de rendimiento relativamente alto, usted define algo que está tratando de maximizar, obtiene una gran cantidad de datos e implementa un modelo para predecir o clasificar o lo que haga su sistema con alguna biblioteca estándar. Obtendrá aproximadamente el 80% del camino hacia su objetivo simplemente agregando más datos o agregando datos de mayor calidad. Y este es el secreto oculto del que la mayoría de la gente no habla en la industria de IA: los modelos son mucho menos importantes que la calidad de los datos y la precisión de las etiquetas que se les aplican.

Es decir, para muchos proyectos muy exitosos, un modelo listo para usar y un énfasis en (1) la calidad de los datos, que no requiere un doctorado, y (2) comentarios, que tampoco requieren un phd, dará como resultado un progreso mucho mayor que el modelo altamente complejo y personalizado.

Ahora, hay algunas excepciones.

  1. Tus datos son muy ruidosos
  2. Tus datos son muy escasos
  3. Su espacio de problemas tiene una distribución de cola muy pesada
  4. No sabes a qué me refiero con 1–3.
  5. Debe crear modelos que funcionen con TB o PB de datos

Si su problema tiene cualquiera de esas 5 características, probablemente necesitará a alguien con experiencia en el tema para dirigir el equipo. Por lo general, un individuo como ese tiene un doctorado en CS o matemática aplicada o similar.

De forma análoga a la aritmética para la contabilidad → así como no hay forma de balancear sin aritmética básica, no hay una forma (significativa) de construir sistemas de IA sin matemáticas.

Las matemáticas, especialmente la probabilidad y las estadísticas, son la base de la IA.

La única razón por la que creo que estoy parcialmente calificado para escribir una IA es porque recientemente intenté escribir una red neuronal usando el tensorflow de código abierto de Google.

Para resumir mi experiencia con él en pocas palabras: “Got rekt m8”.

No entendí nada en términos de las matemáticas detrás de las matrices y las pocas matemáticas que pude entender estaban en el nivel más básico, todavía se está trabajando en gran parte del rigor detrás de las redes neuronales y la inteligencia artificial, sin embargo, las matemáticas que sí usan es una gran cantidad de estadísticas, álgebra lineal y funciones de aproximación.

Todo se reduce a lo que quieres decir con esta pregunta, ¿quieres saber cómo implementar una IA? Si ese es el caso, espere a que el equipo de Brain en Google salga con un código abierto para crear IA y usarlo. Si está interesado en comprender cómo funcionarían las IA y los conceptos detrás de las redes neuronales, siga la ruta rigurosa.

Todo se reduce a lo que quieres que sea tu experiencia, si quieres saber exactamente por qué y cómo funciona algo, profundiza en las matemáticas detrás de esto, si no, no lo hagas.

Escuché que hay un buen libro sobre aprendizaje automático teórico llamado “Comprender el aprendizaje automático” de Shai Ben David (es un profesor de UWaterloo) que se supone que debe entrar en los fundamentos teóricos de la informática.

¡Buena suerte!

No hay IA sin matemáticas. No hay computadoras sin matemáticas. No hay ciencia o ingeniería sin las matemáticas.

Ni siquiera podríamos construir una ciudad sin las matemáticas. Ni siquiera uno de piedra.

La matemática es fundamental para la existencia humana. Como fundamental, o quizás más, que el lenguaje hablado.