El aprendizaje de representaciones contrastivas es un método de aprendizaje auto-supervisado que tiene como objetivo aprender una función de incrustación \( f: \mathcal{X} \to \mathbb{R}^d \) tal que entradas similares \( x_i, x_j \) estén cerca en el espacio de características, mientras que entradas no similares estén más alejadas.
Formalmente, se utiliza frecuentemente la pérdida InfoNCE, definida como:
\[ L_i = -\log \frac{\exp(\mathrm{sim}(f(x_i), f(x_j^+)) / \tau)}{\sum_{k=1}^{N} \exp(\mathrm{sim}(f(x_i), f(x_k)) / \tau)} \]
Aquí, \( x_j^+ \) denota un ejemplo positivo para \( x_i \), \( x_k \) ejemplos negativos, \( \mathrm{sim} \) una función de similitud (por ejemplo, similitud coseno) y \( \tau \) una constante de temperatura.
El proceso de aprendizaje optimiza la función \( f \) para que los pares positivos estén más cerca y los pares negativos más alejados.
El aprendizaje contrastivo es la base de muchos métodos modernos de aprendizaje auto-supervisado como SimCLR, MoCo o BYOL, que permiten obtener representaciones potentes sin necesidad de anotaciones extensas.
Definición:
«El aprendizaje de representaciones contrastivas es un enfoque de aprendizaje auto-supervisado que genera una incrustación significativa maximizando la similitud entre pares de datos positivos y minimizando la similitud entre pares negativos.»
Fuente:
Chen, T., Kornblith, S., Norouzi, M., & Hinton, G. (2020). A Simple Framework for Contrastive Learning of Visual Representations. Proceedings of the 37th International Conference on Machine Learning (ICML).