Diseñando un sistema de aprendizaje automático: principios y pasos clave

Diapositivas de Deusto.es sobre el diseño de un sistema de aprendizaje automático. El Pdf, de Informática para Universidad, presenta los principios y pasos clave para la creación de un ciclo de aprendizaje, distinguiendo entre la aplicación de algoritmos existentes y la necesidad de desarrollar nuevos.

Ver más

49 páginas

Diseñando un sistema de
aprendizaje automático
Aitor Almeida
aitor.almeida@deusto.es
Diseñando un sistema de aprendizaje
En esta unidad vamos a analizar los diferentes pasos que debemos
tener en cuenta para diseñar un ciclo de aprendizaje.
En algunas aplicaciones de la vida real, no necesitareis diseñar la
mayoría de estos pasos desde cero, ya que aplicareis algoritmos y
métricas existentes.
En otros casos, será necesario diseñar nuevos algoritmos o modificar
los ya existentes.
2

Visualiza gratis el PDF completo

Regístrate para acceder al documento completo y transformarlo con la IA.

Vista previa

Diseño de Sistemas de Aprendizaje Automático

Modelos, Hiperparámetros y Datos

Model + Hyperparameters + Data Error Analysis Training

Aitor Almeida aitor.almeida@deusto.es

Diseño de un Sistema de Aprendizaje

  • En esta unidad vamos a analizar los diferentes pasos que debemos tener en cuenta para diseñar un ciclo de aprendizaje.
  • En algunas aplicaciones de la vida real, no necesitareis diseñar la mayoría de estos pasos desde cero, ya que aplicareis algoritmos y métricas existentes.
  • En otros casos, será necesario diseñar nuevos algoritmos o modificar los ya existentes.

2

Pasos en el Diseño de un Sistema de Aprendizaje

  1. Elegir la experiencia de entrenamiento
  2. Elegir la función de entrenamiento
  3. Elegir una representación de la función de entrenamiento
  4. Elegir un algoritmo de aproximación de funciones
  5. El diseño final

3

Problema a Tratar en el Diseño de un Sistema de Aprendizaje

  • Para ilustrar algunos de los problemas básicos de diseño y enfoques en el aprendizaje automático, consideremos diseñar un programa para aprender a jugar a la damas.
  • Nuestro objetivo: participar en el torneo mundial de damas.
  • Adoptamos la medida de rendimiento obvia: el porcentaje de partidas que gana en este torneo mundial.

4

Sistema Actual para el Aprendizaje de Damas

Un problema de aprendizaje de damas:

  • Tarea T: jugar a las damas
  • Medida de rendimiento P: porcentaje de partidas ganadas en el torneo mundial

5

Pasos del Diseño de un Sistema de Aprendizaje

  1. Elegir la experiencia de entrenamiento
  2. Elegir la función de entrenamiento
  3. Elegir una representación de la función de entrenamiento
  4. Elegir un algoritmo de aproximación de funciones
  5. El diseño final

6

Primera Decisión de Diseño: Experiencia de Entrenamiento

  • La primera decisión de diseño que enfrentamos es elegir el tipo de experiencia de entrenamiento de la cual nuestro sistema aprenderá.
  • El tipo de experiencia de entrenamiento disponible puede tener un impacto significativo en el éxito o fracaso del aprendiz.
  • No todos los tipos de experiencia son adecuados para todos los problemas.
  • Un atributo clave es si la experiencia de entrenamiento proporciona retroalimentación directa o indirecta con respecto a las decisiones tomadas por el sistema de rendimiento

7

Experiencia de Entrenamiento: Ejemplos Directos

  • En nuestro ejemplo, el sistema podría aprender a partir de ejemplos de entrenamiento directos que consisten en estados individuales del tablero de damas y el movimiento correcto para cada uno.

2. Black makes a double jump. I. A simple move by a piece 4. Or, this Red piece could jump the Black piece after its double jump. 3. After Black makes his dou- ble jump, Red could jump as shown because the space oppo- site the adjacent Black piece will be empty-

8

Experiencia de Entrenamiento: Información Indirecta

  • Alternativamente, podría disponer solo de información indirecta que consista en las secuencias de movimientos y los resultados finales de varios juegos jugados.
  • En este último caso, la información sobre la corrección de movimientos específicos al principio del juego debe inferirse indirectamente a partir del hecho de que el juego fue eventualmente ganado o perdido.
  • Aquí, el aprendiz enfrenta un problema adicional de asignación de crédito, o de determinar en que medida cada movimiento en la secuencia merece crédito o culpa por el resultado final.
  • La asignación de crédito puede ser un problema particularmente difícil, ya que el juego se puede perder incluso cuando los movimientos iniciales son óptimos, si estos son seguidos mas later por movimientos deficientes.
  • Por esta razón, aprender a partir de retroalimentación de entrenamiento directo suele ser más fácil que aprender de retroalimentación indirecta.

9

Segunda Decisión de Diseño: Control de Ejemplos

  • Un segundo atributo importante de la experiencia de entrenamiento es el grado en que el aprendiz controla la secuencia de ejemplos de entrenamiento.
  • El aprendiz podría depender del maestro para seleccionar estados de tablero informativos y proporcionar el movimiento correcto para cada uno > Aprendizaje Supervisado.
  • El aprendiz podría proponer por sí mismo estados de tablero que encuentra particularmente confusos y preguntar al maestro por el movimiento correcto > Aprendizaje Activo.
  • El aprendiz podría tener control total sobre ambos, los estados del tablero y las clasificaciones de entrenamiento (indirectas), como ocurre cuando aprende jugando contra sí mismo sin la presencia de un maestro > Aprendizaje por Refuerzo.
  • Nótese que en este último caso, el aprendiz puede elegir entre experimentar con estados de tablero novedosos que aún no ha considerado o perfeccionar su habilidad jugando variaciones menores de líneas de juego que actualmente encuentra más prometedoras -> Exploración vs Explotación en el Aprendizaje por Refuerzo.

10

Tercera Decisión de Diseño: Representatividad de la Experiencia

  • Un tercer atributo importante de la experiencia de entrenamiento es qué tan bien representa la distribución de ejemplos sobre los cuales se debe medir el rendimiento final del sistema P.
  • En general, el aprendizaje es más confiable cuando los ejemplos de entrenamiento siguen una distribución similar a la de los ejemplos de prueba futuros.
  • Los modelos de aprendizaje automático están aprendiendo una distribución a partir de los ejemplos; si no ven ejemplos de una clase, no podrán identificar nuevas instancias de esa clase.
  • Sin embargo, esto no es completamente cierto > aprendizaje de una sola muestra (one-shot) y aprendizaje de cero muestras (zero-shot).

11

Representatividad de la Experiencia en el Juego de Damas

  • En nuestro ejemplo, la métrica de rendimiento P es el porcentaje de partidas que el sistema gana en el torneo mundial.
  • Si su experiencia de entrenamiento E consiste solo en partidas jugadas contra sí mismo, existe un peligro evidente de que esta experiencia de entrenamiento no sea completamente representativa de la distribución de situaciones sobre las que será probado más adelante.
  • Por ejemplo, el aprendiz podría no encontrarse nunca con ciertos estados cruciales del tablero que son muy probables en partidas jugadas por el campeón humano de damas.

12

Desafíos de la Representatividad en la Experiencia de Entrenamiento

  • En la práctica, a menudo es necesario aprender a partir de una distribución de ejemplos que es algo diferente de aquella en la que se evaluará el sistema final (por ejemplo, jel campeón mundial de damas podría no estar interesado en enseñar al programa!).
  • Conjuntos de Entrenamiento vs Validación vs Prueba
  • Tales situaciones son problemáticas porque dominar una distribución de ejemplos no necesariamente llevará a un buen rendimiento sobre otra distribución diferente.
  • Veremos que la mayoría de las teorías actuales de aprendizaje automático se basan en la suposición crucial de que la distribución de los ejemplos de entrenamiento es identica a la distribución de los ejemplos de prueba > suposiciones i.i.d. (independientes e identicamente distribuidas).
  • A pesar de nuestra necesidad de hacer esta suposición para obtener resultados teóricos, es importante recordar que esta suposición a menudo debe ser violada en la práctica.

13

Decisión Final sobre la Experiencia de Entrenamiento

  • Decidimos que nuestro sistema se entrenará jugando partidas contra sí mismo. Esto tiene la ventaja de que no es necesario un entrenador externo, lo que permite al sistema generar tantos datos de entrenamiento como el tiempo lo permita

14

Estado Actual del Sistema de Aprendizaje de Damas

Un problema de aprendizaje de damas:

  • Tarea T: jugar a las damas
  • Medida de rendimiento P: porcentaje de partidas ganadas en el torneo mundial
  • Experiencia de entrenamiento E: partidas jugadas contra sí mismo

15

Pasos del Diseño de un Sistema de Aprendizaje

  1. Elegir la experiencia de entrenamiento
  2. Elegir la función de entrenamiento
  3. Elegir una representación de la función de entrenamiento
  4. Elegir un algoritmo de aproximación de funciones
  5. El diseño final

16

Elección de la Función Objetivo

  • La siguiente decisión de diseño es determinar exactamente qué tipo de conocimiento se aprenderá y cómo será utilizado por el programa de rendimiento.
  • Vamos a suponer que tenemos un programa para jugar a las damas que puede generar los movimientos legales desde cualquier estado del tablero.
  • El programa solo necesita aprender cómo elegir el mejor movimiento entre esos movimientos legales.
  • Esta tarea de aprendizaje es representativa de una gran clase de tareas en las que los movimientos legales que definen un amplio espacio de búsqueda se conocen de antemano, pero la mejor estrategia de búsqueda no se conoce.
  • Muchos problemas de optimización pertenecen a esta clase, como los problemas de programación y control de procesos de fabricación, donde los pasos de fabricación disponibles están bien comprendidos, pero la mejor estrategia para secuenciarlos no lo está.

17

Definición de la Función Objetivo

  • Dado este escenario en el que debemos aprender a elegir entre los movimientos legales, la opción más obvia para el tipo de información a aprender es un programa o función que elija el mejor movimiento para cualquier estado de tablero dado.
  • Llamémoslo ChooseMove y usemos la notación ChooseMove : B -> M.
  • Esta función acepta como entrada cualquier tablero del conjunto de estados legales del tablero B.
  • Esta función produce como salida algún movimiento del conjunto de movimientos legales M.
  • A lo largo de nuestra discusión sobre el aprendizaje automático, encontraremos útil reducir el problema de mejorar el rendimiento P en la tarea T al problema de aprender alguna función objetivo en particular, como ChooseMove.
  • Por lo tanto, la elección de la función objetivo será una decisión clave de diseño

18

Alternativas para la Función Objetivo

  • Aunque ChooseMove es una elección obvia para la función objetivo en nuestro ejemplo, esta función resultará ser muy difícil de aprender dado el tipo de experiencia de entrenamiento indirecta disponible para nuestro sistema.
  • Una función objetivo alternativa, y una que resultará más fácil de aprender en este contexto, es una función de evaluación que asigna una puntuación numérica a cualquier estado de tablero dado.
  • Llamemos a esta función objetivo V y usemos la notación V : B -> R para indicar que V asigna cualquier estado legal del tablero del conjunto B a algún valor real (usamos R para denotar el conjunto de números reales)

19

¿Non has encontrado lo que buscabas?

Explora otros temas en la Algor library o crea directamente tus materiales con la IA.