Definitivamente, hay una manera de introducir lo que muchos llaman aprendizaje reforzado en aplicaciones web, móviles y de estación de trabajo reales.
Las organizaciones militares lo hacen, la industria del cine lo hace, las compañías centradas en software lo están haciendo, y lo he hecho para las empresas Fortune 500 y las pequeñas empresas por igual. Hay componentes de aprendizaje adaptativo en todo tipo de componentes del sistema integrados en sistemas más grandes, que van desde los robots de reconocimiento facial de FaceBook hasta Google Translate, los sistemas de reconocimiento de código postal USPS y los sistemas autónomos de control de tráfico y vuelo. El software de diseño asistido por computadora (CAD) es ciertamente un objetivo viable.
La base para el refuerzo
Considere una serie de vectores que describen eventos. Imagine que se dividen en dos sub-series A y B. Una red neuronal (artificial o biológica) podría entrenarse utilizando A.
La capacitación podría supervisarse, lo que significa que una de las dimensiones del vector se considera la etiqueta y, por lo tanto, la variable dependiente para predecir de manera óptima. Las otras dimensiones se convierten en hechos o señales de entrada y, por lo tanto, en variables independientes que se utilizan para la predicción. La capacitación podría no supervisarse mediante la extracción de características.
De cualquier manera, cuando se le proporciona A antes de B y se espera que funcione en producción (uso real) antes de que llegue B, la llegada posterior de B presenta una opción.
- Borre los pesos y los ajustes de metaparámetros realizados durante el entrenamiento con A y vuelva a ejecutar el entrenamiento con la serie concatenada de A y B.
- Continúe el entrenamiento con B, en cuyo caso la red estaría sesgada con A y el resultado sería diferente del resultado obtenido al entrenar con B y luego con A.
- Encuentre una manera de limitar el sesgo de haberse entrenado primero con A mientras evita el consumo de recursos requerido para la opción # 1 anterior.
La opción n. ° 3 es la mejor opción en muchos casos porque contiene los beneficios de las opciones n. ° 1 y n. ° 2. Matemáticamente, el # 3 se realiza facilitando de alguna manera la prevención de lo aprendido de la serie A. Los pesos de la red neuronal y los ajustes de metaparámetros deben hacerse susceptibles de corrección, ya que la nueva experiencia indica la necesidad de hacerlo. Un enfoque ingenuo puede formularse matemáticamente la función exponencial inversa, que modela la descomposición natural en muchos fenómenos en física, química y ciencias sociales.
P = e -nt , donde P es la probabilidad de que el hecho siga siendo eficaz, n es la tasa de descomposición de la información aprendida en el pasado y t es alguna medida del progreso hacia adelante, como la marca de tiempo, el número de subsecuencia (lote), número de secuencia de hechos o número de evento.
En el caso de las sub-series A y B, cuando la fórmula anterior se implementa de alguna manera en el mecanismo de aprendizaje, el entrenamiento de A colocará menos sesgo en el resultado final después del entrenamiento continuo usando B porque la t para A es menor que la t para B, indicando al mecanismo que B es probablemente más pertinente.
Si dividimos recursivamente A y B en mitades, creando más y más sub-series granulares, la idea anterior de dejar que la información previa decaiga gradualmente sigue siendo válida y valiosa. El sesgo de la red a la primera información utilizada para el entrenamiento es el equivalente de los conceptos psicológicos de mentalidad estrecha. Los sistemas de aprendizaje que se han convertido en cerebros de mamíferos parecen olvidar o perder interés en cosas pasadas para fomentar la mentalidad abierta, que no es más que dejar que el nuevo aprendizaje a veces se adelante al aprendizaje anterior si la nueva información contiene patrones más fuertes para aprender.
Hay DOS razones para permitir que los datos de ejemplo más nuevos superen progresivamente a los datos de ejemplo más antiguos.
- La eliminación anterior del sesgo del aprendizaje anterior para sopesar adecuadamente los eventos más recientes en el aprendizaje posterior tiene sentido si todos los eventos experimentados (entrenados) representan hechos razonables sobre el mundo externo que el sistema intenta aprender.
- El mundo externo puede estar cambiando y el aprendizaje anterior puede volverse irrelevante o incluso engañoso.
Esta necesidad de dejar que la importancia de la información previa decaiga gradualmente a medida que el aprendizaje continúa es uno de los dos aspectos principales del refuerzo. El segundo aspecto es un conjunto de conceptos correctivos basados en la idea de la señalización de retroalimentación.
Retroalimentación y refuerzo
Una señal de retroalimentación en el aprendizaje reforzado es el aprendizaje automático equivalente a conceptos psicológicos familiares como el dolor, el placer, la satisfacción y el bienestar. El sistema de aprendizaje recibe información para guiar la capacitación más allá del objetivo de la extracción de características, la independencia de las agrupaciones o la búsqueda de una matriz de peso neto neural que se aproxime a la relación entre las características del evento de entrada y sus etiquetas.
La información proporcionada puede originarse internamente desde el reconocimiento de patrones preprogramados o externamente desde la recompensa y el castigo, como es el caso de los mamíferos. Las técnicas y algoritmos que se están desarrollando en el aprendizaje automático reforzado utilizan estas señales adicionales con frecuencia (usando el corte de tiempo en el procesamiento) o continuamente usando la independencia de las unidades de procesamiento de las arquitecturas de procesamiento en paralelo.
Este trabajo fue pionero en el MIT por Norbert Wiener y se expone en su libro Cybernetics (MIT Press 1948). La palabra Cibernética proviene de una palabra más antigua que significa dirección de barcos . El movimiento automático de un timón para mantenerse en curso puede haber sido el primer sistema de retroalimentación mecánica. Su motor de cortacésped probablemente tenga uno.
Aplicaciones adaptativas y aprendizaje
La adaptación simple en tiempo real para una posición de timón o un acelerador de cortacésped no está aprendiendo. Dicha adaptación suele ser alguna forma de control PID lineal. La tecnología de aprendizaje automático que se está ampliando hoy abarca la evaluación y el control de sistemas complejos y no lineales que los matemáticos llaman caóticos.
Por caótico, no significan que los procesos descritos estén en un frenesí o que estén desorganizados. Los caóticos descubrieron hace décadas que las ecuaciones no lineales simples pueden conducir a un comportamiento altamente organizado. Lo que quieren decir es que el fenómeno es demasiado sensible a pequeños cambios para encontrar algún algoritmo fijo o fórmula para predecirlos.
El lenguaje es así. La misma afirmación que se dice con una docena de inflexiones vocales diferentes puede significar una docena de cosas diferentes. La oración en inglés, "Realmente", es un ejemplo. Es probable que las técnicas de refuerzo permitan a las máquinas futuras distinguir con altas probabilidades de éxito entre los diversos significados de esa declaración.
¿Por qué los juegos primero?
Los juegos tienen un conjunto de escenarios posibles muy simple y fácil de definir. Uno de los principales contribuyentes al advenimiento de la computadora, John von Neumann, argumentó en Theory of Games and Economic Behavior , un libro del que fue coautor con Oskar Morgenstern, que toda planificación y toma de decisiones es en realidad un juego de diversas complejidades.
Considere los juegos como el conjunto de ejemplos de entrenamiento de la colección de cerebros que, con el tiempo, crearán sistemas que pueden determinar el significado de una declaración como lo pueden hacer las personas educadas a partir de tres fuentes de sugerencias.
- Contexto dentro de una conversación o escenario social
- Las inflexiones vocales del hablante
- Las expresiones faciales y el lenguaje corporal del hablante.
Más allá del ajedrez y el juego de go
A lo largo del camino desde los juegos hasta los sistemas de lenguaje con una comprensión precisa y capacidades de escucha más profundas, hay varias aplicaciones de aprendizaje reforzado que son de mucha mayor importancia para la tierra y la experiencia humana.
- Sistemas que aprenden a apagar o atenuar luces, electrodomésticos, sistemas digitales, HVAC y otros dispositivos que consumen energía: la energía es quizás la mercancía con mayor influencia geopolítica en la historia humana debido al agotamiento de los recursos de combustibles fósiles a lo largo del tiempo).
- Desarrollo de vehículos autónomos: la tendencia peligrosa de la operación de equipos pesados, como aviones, vehículos recreativos, camiones, autobuses y remolques de tractores por personas en estados de ánimo desconocidos en carreteras abiertas, probablemente será vista por las futuras personas como una locura.
- La calificación de confiabilidad de la información: la información está en todas partes y más del 99% está en error, ya sea parcial o completamente. La investigación real autentica muy poco, ya sea estudios aleatorios doble ciego adecuadamente diseñados e interpretados o pruebas y análisis de laboratorio confirmables.
- Aplicaciones de atención médica que diagnostican mejor, adaptan los remedios al individuo y ayudan con la atención continua para evitar la recurrencia.
Estos cuatro y muchos otros son mucho más importantes que la acumulación de riqueza a través del comercio automatizado de alta velocidad o las competiciones de juegos ganadores, dos intereses de aprendizaje automático centrados en sí mismos que simplemente afectan a una o dos generaciones de la familia de una sola persona.
La riqueza y la fama son lo que en teoría de juegos se llama un juego de suma cero . Producen tantas pérdidas como ganancias si se considera la filosofía más alta de la Regla de Oro de que otros y sus familias son de igual importancia para nosotros.
Aprendizaje reforzado para software CAD (diseño asistido por computadora)
El diseño asistido por computadora es el precursor natural del diseño de la computadora (sin la ayuda de humanos), al igual que las roturas antibloqueo conducen naturalmente a vehículos totalmente autónomos.
Considere la orden, "Créame una jabonera para mi ducha que maximice la probabilidad de que mi familia pueda tomar el jabón en el primer intento sin abrir los ojos y minimiza la dificultad de mantener limpios el jabón y las superficies de la ducha. Estas son las alturas de miembros de mi familia y algunas fotos del espacio de la ducha ". Luego, una impresora 3D desplegaría el dispositivo, lista para conectar, junto con las instrucciones de instalación.
Por supuesto, un sistema de CD de este tipo (CAD sin A) debería estar capacitado en tareas domésticas, comportamiento humano sin visión, formas de unir elementos a las baldosas, las herramientas y las capacidades de mantenimiento del hogar del consumidor promedio, las capacidades de la impresora 3D , y varias otras cosas.
Tales desarrollos en la automatización de la fabricación probablemente comenzarían con un aprendizaje reforzado de comandos más simples como "Adjunte estas dos partes utilizando sujetadores producidos en masa y mejores prácticas". El programa CAD luego seleccionaría hardware entre tornillos, remaches, adhesivos y otras opciones, quizás haciendo preguntas al diseñador sobre la temperatura de operación y los rangos de vibración. La elección, la posición y el ángulo se agregarían al conjunto apropiado de piezas CAD y dibujos de ensamblaje y listas de materiales.