E038_El_salto_de_Word2Vec_a_BERT
Ep. 38

E038_El_salto_de_Word2Vec_a_BERT

Episode description

Entendiendo el significado de las palabras con IA

La inteligencia artificial puede aprender a entender el significado de las palabras a través de modelos como Word2Vec, Glove y FastText, que utilizan vectores para representar las relaciones semánticas entre palabras. Estos modelos pueden aprender a partir de grandes cantidades de texto y capturar relaciones complejas, como la similitud entre palabras y la relación entre conceptos. Sin embargo, tienen limitaciones, como la creación de representaciones estáticas que no dependen del contexto. El modelo BERT, desarrollado por Google en 2018, revolucionó este campo al introducir un enfoque bidireccional que permite al modelo leer y entender el texto de manera más similar a como lo hace un humano.

Download transcript (.srt)
0:10

Buenas, esto es BIMPRAXIS, el podcast donde el

0:13

BIM se encuentra con la inteligencia artificial.

0:20

Exploramos la ciencia, la tecnología y el futuro

0:23

desde el enfoque de la arquitectura,

0:25

ingeniería y construcción.

0:28

¡Empezamos! Hola y bienvenidos.

0:38

Gracias por acompañarnos en este nuevo episodio del

0:41

podcast de BIMPRAXIS.

0:43

Hoy vamos a meternos en un tema que,

0:44

hasta hace no mucho, sonaba a ciencia ficción,

0:47

pura y dura.

0:48

¿Cómo es posible que una máquina entienda el

0:50

significado de una palabra?

0:52

No que la reconozca o la repita,

0:54

sino que entienda su esencia,

0:56

su relación con otras.

0:58

Es una pregunta fascinante, la verdad.

1:27

La distancia entre ellas representa la similitud de

2:01

su significado.

2:12

Entiendo. Es como un mapa conceptual,

2:14

pero generado matemáticamente.

2:16

Pero aquí me surge una duda.

2:17

Un mapa normal tiene dos dimensiones,

2:20

tres a lo sumo.

2:21

Pero en las fuentes se habla de espacios

2:23

de 100, 300 o incluso más dimensiones.

2:26

¿Cómo se mide la distancia ahí?

2:27

No puedes usar una regla, ¿no?

2:29

Esa es la pregunta clave.

2:31

Y la respuesta es sorprendentemente elegante.

2:34

En lugar de medir la distancia en línea

2:37

recta, que puede ser engañosa en tantas dimensiones,

2:40

lo que se mide es el ángulo entre

2:42

los vectores.

2:43

¿El ángulo?

2:44

Sí. El artículo de IBM lo detalla muy

2:47

bien, con el concepto de similitud del coseno.

2:51

Imagina dos flechas que parten del mismo punto,

2:54

se apuntan casi en la misma dirección,

2:56

el ángulo entre ellas es muy pequeño y

2:58

su similitud del coseno es cercana a 1.

3:00

Lo que significa que son semánticamente parecidas.

3:03

Justo. Ah, claro.

3:05

Así que océano y mar serían dos vectores

3:07

con un ángulo minúsculo entre ellos.

3:09

Precisamente. Si los vectores son perpendiculares,

3:13

un ángulo de 90 grados,

3:15

su similitud es cero.

3:16

No tienen nada que ver,

3:18

como democracia y tornillo, y se apuntan en

3:20

direcciones opuestas, las similitudes menos uno,

3:24

lo que indicaría que son antónimos.

3:26

Vale, es una forma muy eficiente de capturar

3:29

estas relaciones complejas, sin importar las dimensiones.

3:32

Eso es. El modelo aprende a orientar los

3:35

vectores según el significado que extrae del texto.

3:39

Y ese es el siguiente paso.

3:41

¿Cómo aprende la máquina a crear este mapa,

3:44

porque alguien no se sienta a colocar río

3:47

cerca del agua a mano?

3:48

Las fuentes dicen que el truco está en

3:50

alimentarlo con cantidades masivas de texto.

3:53

Con toda la Wikipedia, por ejemplo.

3:54

Claro. Ahí entra en juego lo que se

3:57

conoce como la hipótesis distribucional,

4:00

una idea que es la base de todo

4:02

esto, y que se resume en una frase

4:04

famosa.

4:05

Sabrás lo que es una palabra por las

4:07

compañías que frecuenta.

4:08

Me gusta esa frase.

4:10

El modelo no aprende conceptos. Aprende relaciones.

7:07

La relación entre hombre y mujer es un

7:09

cierto vector, una dirección y una distancia en

7:12

ese espacio.

7:12

Y resulta que esa misma flecha vectorial es

7:15

la que conecta rey con reina o tío

7:18

con tía.

7:19

El modelo captura la relación masculino-femenino como una

7:23

dirección constante.

7:24

Fascinante. Y lo que es más increíble,

7:27

y esto lo detallan en el paper,

7:29

es que no se limita a analogías semánticas.

7:32

También captura relaciones sintácticas.

7:34

Por ejemplo, la relación entre caminar y caminando

7:38

es el mismo vector que la que hay

7:40

entre correr y corriendo.

7:41

O sea, captura el concepto de gerundio.

7:44

Justo. Para probar esto, los autores crearon un

7:47

conjunto de pruebas con miles de estas preguntas

7:50

de analogías.

7:50

Por primera vez, se podía medir objetivamente la

7:54

calidad del conocimiento semántico de un modelo.

7:57

Diendo lo de Word2Vec y su análisis del

7:59

contexto cercano, pero me da la sensación de

8:01

que se está perdiendo información al mirar solo

8:04

una ventana de unas pocas palabras a la

8:06

vez.

8:06

Absolutamente. Y esa es precisamente la idea que

8:13

el equipo de la Universidad de Stanford exploró

8:19

con su modelo GLOBE, que son las siglas

8:24

de Global Vectors.

8:27

Vectores globales. Exacto.

8:29

Mientras Word2Vec aprende de forma indirecta,

8:32

prediciendo palabras en contextos locales,

8:35

GLOBE ataca el problema de frente.

8:37

Construye primero una matriz gigantesca de coocurrencias. Básicamente,

8:43

cuenta cuántas veces aparece cada palabra junto a

8:46

cualquier otra palabra en todo el corpus.

8:49

Por ejemplo, contará que hielo y frío aparecen

8:52

juntas muy a menudo, mientras que hielo y

8:55

fuego aparecen juntas con menos frecuencia,

8:59

aunque siguen teniendo una relación.

9:02

Su objetivo es que los vectores generados reproduzcan

9:05

las proporciones de esas probabilidades de coocurrencia.

9:09

Le da una base estadística muy sólida y

9:11

robusta. Muchísimo más, vale.

9:13

Un enfoque diferente para llegar a un resultado

9:16

similar.

9:17

Y las fuentes mencionan un tercer modelo, FastText,

9:21

de Facebook.

9:23

Este parece que introduce una idea interesante,

9:25

no mirar solo la palabra entera.

9:27

Sí, esa fue su gran aportación.

9:45

FastText descompone las palabras en sus partes,

10:12

en n-gramas de caracteres.

10:28

Por ejemplo, la palabra planeta la descompone en

10:31

pla, lan, ane, net, eta,

10:32

además de la palabra completa.

10:34

Y esto tiene dos ventajas enormes.

10:37

Así es.

10:38

Sirve para palabras que no ha visto nunca.

10:41

El topográfico no se queda en blanco.

10:44

Puede inferir su significado a partir de las

10:48

partes que sí conoce.

10:50

Claro, como si aprendiera las letras de las

12:03

palabras.

12:22

Justo. Por eso, si se encuentra con una

12:24

palabra inventada como caminanteando, aunque no la haya

12:27

visto nunca, puede intuir que tiene que ver

12:30

con caminar o caminante.

12:31

Y la segunda ventaja, que mencionan los artículos,

12:33

es especialmente útil para un idioma como el

12:35

español, con tantas conjugaciones y derivaciones.

12:37

Totalmente. Para un modelo como Word2Vec, correr,

12:40

corría y corredor son tres palabras totalmente distintas.

12:43

FastText, al compartir los n-gramas de caracteres,

12:45

entiende que están intrínsecamente relacionadas y sus vectores

12:48

estarán mucho más cerca.

12:50

Es una forma de entender la morfología.

12:53

Sin embargo, todos estos modelos, Word2Vec, Glove, FastText,

12:56

comparten una limitación fundamental.

12:58

Crean representaciones estáticas. Es decir,

13:11

la palabra banco tiene un único vector,

13:21

un único punto en el mapa,

13:28

sin importar si hablo del banco de un

13:38

parque, de un banco de peces o de

13:47

un banco para sacar dinero.

13:55

Y ese es el problema.

13:56

El significado de una palabra depende totalmente del

13:59

contexto.

13:59

Necesitábamos modelos que generaran vectores dinámicos, contextuales.

14:02

Exactamente. Ahí es donde entra en escena el

14:05

nombre que cambió todo. BERT,n-gramas

14:07

desarrollado por Google en 2018.

14:09

El artículo original de BERT es denso,

14:12

pero la idea central que lo diferencia de

14:14

todo lo anterior es que es profundamente bidireccional.

14:18

¿Y qué significa eso en la práctica?

14:21

Pues significa que lee como lo haría un

16:29

humano.

16:57

Los modelos anteriores, incluso los más avanzados de

17:00

la época, como GPT, eran unidireccionales.

17:03

Para entender una palabra, solo miraban el texto

17:06

que venía antes, de izquierda a derecha.

17:08

Claro, no podían esperar al final de la

17:11

frase para entender el principio.

17:13

Era un problema. Lo que hizo BERT,

17:20

y esto es lo que su artículo describe

17:28

como la clave de su éxito,

17:33

fue forzar al modelo a mirar en ambas

17:41

direcciones a la vez.

17:46

Para ello, inventaron una tarea de entrenamiento muy

17:46

ingeniosa llamada Masked Language Model.