Atenció (aprenentatge automàtic)

una tècnica que pretén imitar l'atenció cognitiva

A les xarxes neuronals, l'atenció és una tècnica que pretén imitar l'atenció cognitiva. L'efecte millora algunes parts de les dades d'entrada mentre disminueix altres parts, la motivació és que la xarxa hauria de dedicar més atenció a les parts petites, però importants, de les dades. Aprendre quina part de les dades és més important que una altra depèn del context, i això s'entrena mitjançant el descens del gradient.[1][2]

Codificador-descodificador amb atenció. La part esquerra (línies negres) és el codificador-descodificador, la part central (línies taronges) és la unitat d'atenció i la part dreta (en gris i colors) són les dades calculades. Les regions grises de la matriu H i del vector w són valors zero. Els subíndexs numèrics indiquen mides vectorials mentre que els subíndexs amb lletres i i i - 1 indiquen passos de temps. Codificador-descodificador amb atenció. La part esquerra (línies negres) és el codificador-descodificador, la part central (línies taronges) és la unitat d'atenció i la part dreta (en gris i colors) són les dades calculades. Les regions grises de la matriu H i del vector w són valors zero. Els subíndexs numèrics indiquen mides vectorials mentre que els subíndexs amb lletres i i i - 1 indiquen passos de temps.

Els mecanismes semblants a l'atenció es van introduir a la dècada de 1990 amb noms com ara mòduls multiplicatius, unitats sigma pi i hiperxarxes. La seva flexibilitat prové del seu paper de "pesos suaus" que poden canviar durant el temps d'execució, en contrast amb els pesos estàndard que han de romandre fixos en temps d'execució. Els usos de l'atenció inclouen la memòria en màquines de Turing neuronals, tasques de raonament en ordinadors neuronals diferenciables, processament del llenguatge en transformadors i processament de dades multisensorials (so, imatges, vídeo i text) en perceptors.[3]

Donada una seqüència de fitxes etiquetades per l'índex , una xarxa neuronal calcula un pes suau per cada testimoni amb la propietat que no és negatiu i . A cada testimoni se li assigna un vector de valor que es calcula a partir del mot incrustat de l'element . La mitjana ponderada és la sortida del mecanisme d'atenció.[4]

El mecanisme clau de consulta calcula els pesos suaus. A partir de la incrustació de mots en cada element, calcula el seu vector de consulta corresponent i vector clau . Els pesos s'obtenen prenent la funció softmax del producte puntual on representa l'element actual i representa l'element que s'està atenent.[5]

En algunes arquitectures, hi ha múltiples caps d'atenció, cadascun d'ells operant de manera independent amb les seves pròpies consultes, claus i valors.

Referències modifica

  1. Cristina, Stefania. «What Is Attention?» (en anglès). https://machinelearningmastery.com,+24-08-2022.+[Consulta: 31 octubre 2022].
  2. Swaminathan, Nandhini. «Understanding Attention in Machine Learning» (en anglès). https://medium.com,+22-02-2022.+[Consulta: 31 octubre 2022].
  3. Mansour, Fadi. «Attention in Machine Learning» (en anglès). https://neurolabx.com,+19-07-2022.+[Consulta: 31 octubre 2022].
  4. «Attention» (en anglès). https://www.ml-science.com.+[Consulta: 31 octubre 2022].
  5. Lamba, Harshall. «Intuitive Understanding of Attention Mechanism in Deep Learning» (en anglès). https://towardsdatascience.com,+09-05-2019.+[Consulta: 31 octubre 2022].