You are on page 1of 54

Hizkuntzaren Prozesamendua

7. gaia: Semantika
Gardenkien iturria (ANLP & NLP, David Bamman, UC Berkeley)
Aurkibidea


Semantika Lexikoa 1:
Hitzen errepresentazio bektoriala
– Sarrera
– Ikasketa
– Erabilera

Semantika Lexikoa 2:
Hitzen errepresentazio ontologikoa

Semantika
Hitzen errepresentazio bektoriala

Hiztegia

… ardoa garagardoa katua txakurra …

4.1 4.2 0.1 0.12

-0.9 -0.7 0.3 0.28

Bektore-espazioa
Hitz-embeddingak (word embedding)
Errepresentazio banatuak
Bektore dentsoak
3
y

tx
a
katua

ku
rr
a
txakurtxoa

ardoa
garagardoa

4
Errepresentazio banatuak

5
x β

like 0

movie 0 y

love 1

6
x = ezaugarri-bektorea β = koefizienteak

Ezaugarria Balioa Ezaugarria β

movie 0 movie 0.1

sad 0 sad -6.8

funny 0 funny 1.4

film 0 film 0.3

love 1 love 8.7

hate 0 hate -7.9

it 0 it 0.01

boring 0 boring -1.7


7
x = ezaugarri-bektorea

Ezaugarria Balioa

movie 0

sad 0

funny 0 “errepresentazio lokala”


( one-hot encoding)
film 0

love 1

hate 0

it 0

boring 0
8
Errepresentazio banatua

“Entitate bakoitza (hitza) aktibazio-patroi batekin


errepresentatzen da zeina konputu elementu
batzuen artean banatuta dagoen. Konputu
elementu bakoitza entitate desberdin askoren
errepresentazioan dago” (Hinton 1984)

“Each entity is represented by a pattern of


activity distributed over many computing
elements, and each computing element is
involved in representing many different entities”
(Hinton 1984)”
9
W V

like 0
h1

y
movie 0
h2

love 1

W
like movie love
• Dimentsio baxuko hitz
errepresentazioak zuzenean
4.1 0.7 0.1
pisu matrizetatik irakurrita
-0.9 1.3 0.3

10
Dimentsionalitatea
gutxiagotzea
… …
the 1
a 0 the
One-hot an 0
encoding edo
for 0 Low- 4.1
sparse
(gehienak 0ak) dimensional
in 0 edo dense
-0.9
on 0
dog 0
cat 0
… …

the V-dimentsio espazioan puntu bat da the 2-dimentsioko espazioan puntu bat da

11
Antzekotasuna

Hinton 1984

12
y

tx
a
katua

ku
rr
a
txakurtxoa

ardoa
garagardoa

13
Kosinu-
antzekotasuna

• Bi bektoreen arteko kosinu-antzekotasuna


kalkula dezakegu, haien arteko antzekotasun
maila erabakitzeko [Salton 1971]

• Distantzia euklidearrak bi puntuen arteko


distantzia magnitudea neurtzen du
• Kosinu-antzekotasunak angelua neurtzen du
14
y

tx
a
katua

ku
rr
a
txakurtxoa

ardoa
garagardoa

15
Errepresentazio banatuak

• Ez soilik hizkuntzetarako; edozein ezaugarrik


errepresentazio banatua izan dezake
testuinguru honetan.

• Irteerekiko antzeko erlazioak dituzten


sarrerek, antzeko errepresentazioak izango
dituzte (ikasketan indar partekatua,
orokortzea)

16
Aurkibidea

Semantika Lexikoa 1:
Hitzen errepresentazio bektoriala
– Sarrera
– Ikasketa
– Erabilera

Semantika Lexikoa 2:
Hitzen errepresentazio ontologikoa

Semantika
Iragarpenetatik bektore
dentsoak ikasten
• Nola ikasi hitz-embeddingak?

• Hitzen dimentsio baxuko errepresentazioak


(errepresentazio dentsoak) ikasten dira,
iragarpena egiterakoan

• Ikasteko ataza unibertsala: hitz bat aurreikusi


inguruko hitzetan, testuinguruan, oinarrituta

• Hau gainbegiratutako iragarpen problema


batean bihurtu
18
Sailkapena
Sarrerako instantzia-
espazioko x datuetatik h
mapatze bat y etiketa batera
(edo batzuetara) zeina irteera-
espazio zenbagarrikoa den

𝓧= dokumentu guztien multzoa


y= {ingelesa, mandarin, grekera, …}

x= dokumentu bat (testua)


y = grekera
Sailkapena
Sarrerako 𝓧 instantzia- espazioko
x datuetatik h mapatze bat y
etiketa batera (edo batzuetara)
zeina 𝒴 irteera-espazio
zenbagarrikoa den

* Sailkapena: testuingurua
emanda, zein da falta den hitza?

𝒴 = {the, of, a, dog, iphone, …}

x = (testuingurua)
y = hitza
20
Hizkuntza-ereduaren idea, hitz-
embeddingak lortzeko
• Klase anitzeko erregresio logistikoa erabil
dezakegu hitzak testuinguruan iragartzeko,
hiztegia (vocabulary) irteerako espazio
moduan kontsideratuz. Adib. “I like ...”

• Ideia nagusia: corpus handi bat erabiliz,


geruza anitzeko pertzeptroi sinple bat ikasi
hizkuntza-eredua bailitzan. Irteera hitz-
embeddingak izango dira (baztertu
ereduaren gainerakoa) 21
Iragarpenetatik bektore
dentsoak ikasten

Skipgram eredua x y
(Mikolov et al. 2013):
esaldi batean hitz bakar gin a
bat emanda, inguruko gin cocktail
testuinguru leiho bateko
hitzak iragarri. gin with

gin and

a cocktail with gin and seltzer gin seltzer

Leihoaren tamaina=3 (3 eskuinera eta 3 ezkerrera)


5 sailkatze problema!

22
Erregresio logistikoa

Irteera-espazioa
Ez digu balio...irteera 0 edo 1 eta
guk klase anitz behar ditugu irteeran
23
Klase anitzeko erregresio
logistikoa

Irteera-espazioa

Klase bakoitzeko, y bakoitzeko, β multzo bat


24
x = ezaugarri-bektorea β = koefizienteak

Ezaugarria Balioa Ezaugarria β

the 0 the 0.01

and 0 and 0.03

bravest 0 bravest 1.4

love 0 love 3.1

loved 0 loved 1.2

genius 0 genius 0.5

not 0 not -3.0

fruit 1 fruit -0.8

BIAS 1 BIAS -0.1


25
x = ezaugarri-bektorea β = koefizienteak

β1 β2 β3 β4 β5
Ezaugarria Balioa Ezaugarria
k=“a” k=“an” k=“and” k=“ant” k=“anti”

the 0 the 1.33 -0.80 -0.54 0.87 0

and 0 and 1.21 -1.73 -1.57 -0.13 0

bravest 0 bravest 0.96 -0.05 0.24 0.81 0

love 0 love 1.49 0.53 1.01 0.64 0

loved 0 loved -0.52 -0.02 2.21 -2.53 0

genius 0 genius 0.98 0.77 1.53 -0.95 0

not 0 not -0.96 2.14 -0.71 0.43 0

fruit 1 fruit 0.59 -0.76 0.93 0.03 0

BIAS 1 BIAS -1.92 -0.70 0.94 -0.63 0


26
Dimentsionalitatea
gutxiagotzea
… …
the 1
a 0 the
an 0
for 0 4.1
in 0 -0.9
on 0
dog 0
cat 0
… …

the V-dimentsio espazioan puntu bat da the 2-dimentsio espazioan puntu bat da

27
gin x1 y gin

cocktail x2 y cocktail

globe x3 y globe
Softmax

Erregresio logistikoa (sare neuronala, ezkuturik gabe). Ez dabil...

β1 β2 β3
Ezaugarria
k=“gin” k=“cocktail” k=“globe”

gin 1.33 -0.80 -0.54

cocktail 1.21 -1.73 -1.57

globe 0.96 -0.05 0.24

28
gin x1 y gin
h1

cocktail x2 y cocktail
h2

globe x3 y globe

Badabil!

29
W V

gin x1 y gin
h1

cocktail x2 y cocktail
h2

globe x3 y globe
Sarrera Softmax

x W V y

gin 0 -0.5 1.3 4.1 0.7 0.1 1 gin

cocktail 1 0.4 0.08 -0.9 1.3 0.3 0 cocktail

globe 0 1.7 3.1 0 globe


30
W V

gin x1 y gin
h1

cocktail x2 y cocktail
h2

globe x3 y globe

Sarreretan bakarra W V
da ez-zero
(cocktail). -0.5 1.3 4.1 0.7 0.1

= sarrerak benetan 0.4 0.08 -0.9 1.3 0.3


Wcocktail dira
1.7 3.1
31
x W
0.13 0.56
-1.75 0.07
0.80 1.19
-0.11 1.38
-0.62 -1.46
-1.16 -1.24
0.99 -0.26
-1.46 -0.85
0.79 0.47
0.06 -1.21
-0.31 0.00

1 -1.01 -2.52 -1.01 -2.52


-1.50 -0.14
-0.14 0.01
-0.13 -1.76
Hau da sarrerako
-1.08 -0.56
hitzaren
-0.17 -0.74
embeddinga
0.31 1.03
-0.24 -0.84
-0.79 -0.18

32
Hitz-embeddinga

• Sarrerako hitzaren bektore errepresentazio


batetik abiatuta, irteerako hitza iragarri
dezakezu?

• Sarrera one-hot moduan kodetutako bektore


moduan ikusi beharrean zeinak zehazten
duen zein hiztegiko hitz lantzen ari garen,
ikus dezakegu W pisuen matrizean errenkada
egokia indexatzen ariko ginatekeen moduan.

33
Hitz-embeddinga
• Modu berean, V-k H-dimentsioko bektore bat du
hiztegiko elementu bakoitzarentzako (iragartzen ari
garen hitzentzako)

gin cocktail cat globe Hau da hitzaren


irteerako
4.1 0.7 0.1 1.3 embedding-a

-0.9 1.3 0.3 -3.4

Zein pisu dira hitz-embeddingak? Mikolov-ek V bota egiten zuen (normalean W


erabiltzen da). Gero ikusi da W eta V embedding-en artean informazio gehiago
dagoela eta hori osagarria dela, beraz, biak ere ikasten dira eta parametroak
partekatu. 34
W V

gin x1 y gin
h1

cocktail x2 y cocktail
h2

globe x3 y globe

x W V y

gin 0 -0.5 1.3 4.1 0.7 0.1 1 gin

cocktail 1 0.4 0.08 -0.9 1.3 0.3 0 cocktail

globe 0 1.7 3.1 0 globe


35
y

tx
Hitz-embeddingek

a
katua

ku
semantikoki antzekoak

rr
diren hitzak hurbil

a
kokatzen ditu bektore-
espazioan. Zergatik? txakurtxoa

ardoa
garagardoa

36
• Zergatik portaera hau? dog, cat antzeko
posiziotan agertzen dira

• Esanahi antzekoa...testuinguru antzekoa!

the black cat jumped on the table


the black dog jumped on the table
the black puppy jumped on the table
the black wine* jumped on the table
the black beer* jumped on the table

37
• Zergatik portaera hau? dog, cat antzeko
posiziotan agertzen dira

the black [0.4, 0.08] jumped on the table

the black [0.4, 0.07] jumped on the table

the black puppy jumped on the table


the black wine* jumped on the table
the black beer* jumped on the table

Iragarpen berak egiteko, zenbaki hauek bata bestetik hurbil egon


behar dute
38
Semantika lexikoa
(Teoria linguistikoa)

“Hitz bat duen konpainiagatik ezagutuko duzu”

“You shall know a word by the company it


keeps”
[Firth 1957]

Semantika
distribuzionala

39
Inferentzia analogikoa
• Mikolov et al. 2013-ek erakutsi zuten bektore
errepresentazioek arrazoitze analogikorako
potentziala zutela, horretarako bektore-
aritmetika erabiliaz.

• Apple is to apples what car is to?

apple - apples ≈ car - cars


king - man + woman ≈ queen

Mikolov et al., (2013), “Linguistic Regularities in Continuous Space Word Representations” (NAACL)
41
Berezko ebaluazioa (Intrinsic
Evaluation)
Urre-patroia

giza-
hitza 1 hitza 2
puntuazioa
• Erlazioa: hitz pareen
bektore midday noon 9.29

antzekotasunaren journey voyage 9.29


(kosinua adib.?) eta
giza-erabakien car automobile 8.94
arteko korrelazioa … … …
(Spearman/Pearson)
professor cucumber 0.31

king cabbage 0.23


WordSim-353 (Finkelstein et al. 2002)
42
Berezko ebaluazioa
• Arrazoitze analogikoa (Mikolov et al. 2013).
Honako analogiarako
Germany : Berlin :: France : ???,
honakorako hurbileneko bektorea topatu
v(“Berlin”) - v(“Germany”) + v(“France”)
Urre-patroia

helburua
possibly impossibly certain uncertain
generating generated shrinking shrank
think thinking look looking
Baltimore Maryland Oakland California
shrinking shrank slowing slowed
Rabat Morocco Astana Kazakhstan

43
Man is to doctor what woman is to....?
https://ai6034.mit.edu/wiki/images/Narayanan-183.full.pdf
44
Aurkibidea

Semantika Lexikoa 1:
Hitzen errepresentazio bektoriala
– Sarrera
– Ikasketa
– Erabilera

Semantika Lexikoa 2:
Hitzen errepresentazio ontologikoa

Semantika
Dimentsio baxuko
errepresentazio banatuak

• Dimentsio baxuko hitz errepresentazio dentsoak


oso boteretsuak dira (eta HPn sare neuronaletan
oinarritutako ereduek izan duten arrakastaren
arduradun dira).

• Antzerako portaera duten hitzek distribuzio-


propietateei dagokionez, indar estatistikoa
partekatzen dute (maiz sinonimoak edo klase
berekoak diren hitzak).

46
“Entrenamendurako” bi datu
mota
• Ataza zehatzerako datu etiketatuak (adib.
Pelikula-kritika etiketatuak sentimenduen
analisirako): ~ 2K etiketa/kritika, ~1.5M hitz
→ eredu gainbegiratu bat entrenatzeko
erabilia

• Testu orokorra (Wikipedia, web-a, liburuak,


etab.), ~ hitz trilioiak → hitzen
errepresentazio distribuzionalak entrenatzeko
erabilia

47
1 2 3 4 … 50
the 0.418 0.24968 -0.41242 0.1217 … -0.17862
, 0.013441 0.23682 -0.16899 0.40951 … -0.55641
. 0.15164 0.30177 -0.16763 0.17684 … -0.31086
of 0.70853 0.57088 -0.4716 0.18048 … -0.52393
to 0.68047 -0.039263 0.30186 -0.17792 … 0.13228
… … … … … … …
chanty 0.23204 0.025672 -0.70699 -0.04547 … 0.34108
kronik -0.60921 -0.67218 0.23521 -0.11195 … 0.85632
rolonda -0.51181 0.058706 1.0913 -0.55163 … 0.079711
zsombor -0.75898 -0.47426 0.4737 0.7725 … 0.84014
sandberger 0.072617 -0.51393 0.4728 -0.52202 … 0.23096

https://nlp.stanford.edu/projects/glove/ 48
Bektore dentsoak erabiltzen

• Eredu neuronaletan (MLP, RNN, LM), Hiztegi-


dimentsioko bektore “sparse”-a, askoz ere
txikiagoa den K-dimentsioko bektore
dentsoarekin ordezkatu (W ordezkatu).

• Galera-funtzioa hobetzeko, gradienteko


deribatuak hitz-embedding-etara eraman
daitezke, ataza zehatz baterako
optimizazioak lortzeko.

49
y

- -
2.7 3.1 0.7
1.4 2.3

avg

- - - - - - - - - -
2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7
1.4 2.3 1.4 2.3 1.4 2.3 1.4 2.3 1.4 2.3

I loved the movie !

Iyyer et al. (2015), “Deep Unordered Composition Rivals Syntactic Methods for Text Classification” (ACL)
50
y

- -
2.7 3.1 0.7
1.4 2.3

max

- - - - - - - - - -
2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7
1.4 2.3 1.4 2.3 1.4 2.3 1.4 2.3 1.4 2.3

I loved the movie !

51
y

RNN-tan denbora-
urratseko irteeraren
ordez, hitz-
embeddingak jar 2.7 3.1
- -
0.7
daitezke. 1.4 2.3

- - - - - - - - - -
0.7 7.8 9.1 0.7 7.8 9.1 0.7 7.8 9.1 0.7 7.8 9.1 0.7 7.8 9.1
1.1 5.4 1.1 5.4 1.1 5.4 1.1 5.4 1.1 5.4

I loved the movie !

- - - - - - - - - -
2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7 2.7 3.1 0.7
1.4 2.3 1.4 2.3 1.4 2.3 1.4 2.3 1.4 2.3
52
emoji2vec

Eisner et al. (2016), “emoji2vec: Learning Emoji Representations from their Description”
55
Dagoeneko entrenatutako hitz-
bektoreak

• Word2vec
https://code.google.com/archive/p/word2vec/

• Glove
http://nlp.stanford.edu/projects/glove/

• Levy/Goldberg mendekotasun hitz-


embeddingak
https://levyomer.wordpress.com/2014/04/25/
dependency-based-word-embeddings/

57
12.semantika/
WordEmbeddings.ipynb

• Gensim sw erabiliz zure hitz-embeddingak


propioak entrenatu Wikipediako zati txiki
baten gainean

• Glove hitz-embeddingak aztertu hurbileneko


auzokoak eta analogiak topatzeko

• Zein analogiak dabiltza ongi eta zeintzuk


gaizki?

58

You might also like