¿Qué es el aprendizaje auto supervisado en el aprendizaje automático?

Respuestas:

29

El aprendizaje auto supervisado (o auto supervisión) es una técnica de aprendizaje relativamente reciente (en el aprendizaje automático) donde los datos de entrenamiento se etiquetan de forma autónoma (o automática). Todavía es aprendizaje supervisado, pero los conjuntos de datos no necesitan ser etiquetados manualmente por un humano, pero pueden ser etiquetados, por ejemplo, encontrando y explotando las relaciones (o correlaciones) entre diferentes señales de entrada (es decir, entrada proveniente de diferentes modalidades de sensores). )

Una ventaja natural y una consecuencia del aprendizaje auto supervisado es que se puede realizar más fácilmente (con respecto, por ejemplo, al aprendizaje supervisado) en línea (dado que los datos se pueden recopilar y etiquetar sin intervención humana), donde los modelos se pueden actualizar o entrenado completamente desde cero. Por lo tanto, el aprendizaje auto supervisado también debe ser adecuado para entornos, datos y, en general, situaciones cambiantes.

Por ejemplo, considere un robot que está equipado con un sensor de proximidad (que es un sensor de corto alcance capaz de detectar objetos en frente del robot a distancias cortas) y una cámara (que es un sensor de largo alcance , pero que no proporciona una forma directa de detectar objetos). También puede suponer que este robot es capaz de realizar odometría . Un ejemplo de tal robot es Mighty Thymio .

Considere ahora la tarea de detectar objetos en frente del robot a rangos más largos que el rango que permite el sensor de proximidad. En general, podríamos entrenar a una CNN para lograr eso. Sin embargo, para entrenar a tal CNN, en el aprendizaje supervisado, primero necesitaríamos un conjunto de datos etiquetado, que contiene imágenes etiquetadas (o videos), donde las etiquetas podrían ser, por ejemplo, "objeto en la imagen" o "ningún objeto en la imagen". En el aprendizaje supervisado, este conjunto de datos necesitaría ser etiquetado manualmente por un humano, lo que claramente requeriría mucho trabajo.

Para superar este problema, podemos utilizar un enfoque de aprendizaje auto supervisado. En este ejemplo, la idea básica es asociar la salida de los sensores de proximidad en un paso de tiempot>t con la salida de la cámara en el paso de tiempo t (un paso de tiempo menor que t)

Más específicamente, suponga que el robot está inicialmente en coordenadas(X,y) (en el avión), en el paso de tiempo t. En este punto, todavía no tenemos suficiente información para etiquetar la salida de la cámara (al mismo tiempo, pasot) Supongamos ahora que, a la vezt, el robot está en posición (x,y). A tiempo pasot, la salida del sensor de proximidad será, por ejemplo, "objeto delante del robot" o "ningún objeto delante del robot". Sin pérdida de generalidad, suponga que la salida del sensor de proximidad ent>t es "ningún objeto delante del robot", entonces la etiqueta asociada con la salida de la cámara (un marco de imagen) en ese momento t será "ningún objeto delante del robot".

Para obtener más detalles sobre este ejemplo específico, eche un vistazo al artículo Aprendizaje de la percepción de largo alcance usando la auto-supervisión de sensores de corto alcance y odometría de Mirko Nava, Jérôme Guzzi, R. Omar Chavez-Garcia, Luca M. Gambardella y Alessandro Giusti

Tenga en cuenta que el aprendizaje auto supervisado se define de manera ligeramente diferente dependiendo del contexto o área, que puede ser, por ejemplo, robótica, aprendizaje de refuerzo o aprendizaje de representación (o característica). Más precisamente, la definición dada anteriormente se usa en robótica. Véase, por ejemplo, también este documento Aprendizaje visual auto supervisado multitarea . Para una definición ligeramente diferente de aprendizaje auto supervisado, ver, por ejemplo, el artículo Excavando en la estimación de profundidad monocular auto supervisada .

Para otra introducción al aprendizaje auto supervisado, eche un vistazo a este artículo web: https://hackernoon.com/self-supervised-learning-gets-us-closer-to-autonomous-learning-be77e6c86b5a . En este artículo, el autor también compara el aprendizaje auto supervisado con el aprendizaje no supervisado, el aprendizaje semi-supervisado y el aprendizaje de refuerzo.

Además, si desea conocer los métodos actuales que se utilizan para el aprendizaje auto supervisado, eche un vistazo a este artículo: https://amitness.com/2020/02/illustrated-self-supervised-learning . En este artículo, el autor resume ideas clave de métodos auto supervisados ​​existentes con diagramas y visualización.

También hay una lista curada de enlaces a documentos donde se utiliza este enfoque de aprendizaje en la siguiente URL: https://github.com/jason718/awesome-self-supervised-learning .

nbro
fuente
No estoy de acuerdo con que el aprendizaje auto supervisado signifique que los datos están etiquetados, de modo que la capa de salida idealmente debería ser igual a las capas. Tomemos este y este trabajo, por ejemplo, ambos dicen que usan el aprendizaje auto supervisado, pero ninguno usa ninguna etiqueta. En cambio, la pérdida se calcula deformando un cuadro en el video de acuerdo con la salida de la red y comparando el cuadro deformado con otro cuadro.
HelloGoodbye
@HelloGoodbye Existen diferentes definiciones de aprendizaje auto supervisado, de hecho. Debería actualizar esta respuesta. La definición que utilicé es la más común y se usa en robótica. Todos los demás no están muy relacionados con el aprendizaje supervisado, por lo que su uso es un poco inapropiado o engañoso. Este uso del aprendizaje auto supervisado, en robótica, es el más apropiado, dada su relación con el aprendizaje supervisado.
nbro
2
Gracias por vincular mi publicación sobre el mediodía hacker
Dickey Singh
6

El aprendizaje auto supervisado es cuando usa algunas partes de las muestras como etiquetas para una tarea que requiere un buen grado de comprensión para ser resuelta. Destacaré estos dos puntos clave, antes de dar un ejemplo:

  • Las etiquetas se extraen de la muestra , por lo que se pueden generar automáticamente, con un algoritmo muy simple (tal vez solo una selección aleatoria).

  • La tarea requiere comprensión . Esto significa que, para predecir el resultado, el modelo debe extraer algunos buenos patrones de los datos, generando en el proceso una buena representación.

Un caso muy común para el aprendizaje semi-supervisado tiene lugar en el procesamiento del lenguaje natural, cuando necesita resolver una tarea pero tiene pocos datos etiquetados. En tales casos, debe aprender una buena representación o modelo de lenguaje, de modo que tome oraciones y asigne a su red tareas de auto-supervisión como estas:

  • Pídale a la red que prediga la siguiente palabra en una oración (que sabe porque la quitó).

  • Enmascara una palabra y pide a la red que prediga qué palabra va allí (lo cual sabes porque tenías que enmascararlo).

  • Cambie la palabra por una aleatoria (que probablemente no tenga sentido) y pregunte a la red qué palabra está mal.

Como puede ver, estas tareas son bastante simples de formular y las etiquetas son parte de la misma muestra, pero requieren una cierta comprensión del contexto a resolver.

Y siempre es así: modifique sus datos de alguna manera, genere la etiqueta en el proceso y pregúntele al modelo algo relacionado con esa transformación. Si la tarea requiere suficiente comprensión de los datos, tendrá éxito.

David
fuente
2

El reconocimiento visual auto supervisado a menudo se aplica al aprendizaje de representación. Aquí aprendemos primero las características de los datos no etiquetados (aprendizaje de representación), y luego aprendemos el modelo real de las características extraídas de los datos etiquetados. Esto tiene sentido especialmente cuando tenemos muchos datos sin etiquetar y pocos datos etiquetados.

Las características se pueden aprender resolviendo las llamadas tareas de pretexto . Ejemplos de tareas de pretexto son predecir la rotación de una imagen con fluctuaciones, reconocer instancias con fluctuaciones de una misma imagen o predecir la relación espacial de parches de imagen.

Una buena descripción general y resultados interesantes se pueden encontrar en este artículo reciente.

ssegvic
fuente