Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Dziļieneironutīkli,vārdureprezentācijumācīšanās
untekstaapstrādeArtūrsZnotiņš,[email protected] vadītājs:Gunts Bārzdiņš,Dr.sc.comp.
Mērķi
• Dziļāsmašīnmācīšanās (deep learning)priekšrocībasunierobežojumi• Tekstareprezentācijasuntopielietojumidabīgāsvalodasapstrādē(NLP)• Ierobežotiresursi(apmācībasdatiuntosagatavošana)
2
Saturs
• Neironutīkli• Ievadsparvārduvektoriem• Latviešuvalodasvārduvektoriunpielietojumi• Secinājumi
3
Dziļie neironu tīkli
4
Dziļo neironu tīklu arhitektūra
5
Izejas slānis
Ieejas slānis
Slēptie slāņi
biasievadiaktivizācijas funkcija
izvads
Nelinearitāte: 𝑓 𝑧 =1
1 + 𝑒'(
ℎ*,, 𝑥 = 𝑓 𝑤/𝑥 + 𝑏
Dziļo neironu tīklu priekšrocības
• Reprezentāciju mācīšanās (end-to-end)• Vairāku līmeņu reprezentācijas• Vajadzība pēc distributētām reprezentācijām(dimensiju lāsts)• Neuzraudzīta pazīmju mācīšanās• Transfer-learning
• Labāka ātrdarbība ar blīviem vektoriem/matricāmuz vairākkodolu CPU,GPU
6
Vārdu reprezentācijas
7
Ievads:vārdureprezentācijas
• Zemalīmeņareprezentācijas• Attēls–>pikseļuintensitāte• Audio–>spektrālāblīvumakoeficienti• Vārds–>?
• Tradicionālivārdstiekuzskatītspardiskrētuvērtību• Navinformācijasparvārduattiecībām(ierobežotiārējiresursi:sinonīmukopas,taksonomijas)• Daturetumaproblēma(data sparsity)
8
Kaķis [000000000010000]Suns[000000000100000]
1-no-Nvektors (one-hot):
Ievads:vārdureprezentācijas
• Līdzīgivārditieklietotilīdzīgoskontekstos
“You shall know a word by the company itkeeps”(Firth,J.R.1957)
Vīrietis norīta lasīja avīzi/laikrakstu.Viņš pērk šo avīzi/laikrakstu katru dienu.
• Varamreprezentētvārduartākaimiņiem
9
Ievads:vārdureprezentācijas
Blakus-sastopamībumatrica
10
• Risinājums:zemasdimensionalitātes blīvivektori(word vectors,embeddings)• Tipiski25– 1000dimensijas• Singular Value Decomposition (SVD),LDA,RI,…
11
𝑋2 - labākāk-rankaaproksimācijamatricaiX
Kaķis =
0.120.56-0.340.030.23-0.95
Ievads:vārdureprezentācijas
𝑃𝑀𝐼 𝑤,𝑤′ = log𝑝 𝑤,𝑤′𝑝 𝑤 𝑝 𝑤′
𝑇𝐹𝐼𝐷𝐹 𝑤, 𝑧 = 𝑓𝑟𝑒𝑞*,( @ log𝑉𝑛(
Ievads:vārdu reprezentācijas
12
[Rohdeetal.,2005,AnImprovedModelofSemanticSimilarityBasedonLexicalCo-Occurrence]
Ievads:vārdu reprezentācijas
Tiešā veidā iemācīties vārdu vektorus:• Learningrepresentationsbyback-propagatingerrors.(Rumelhart etal.,1986)• Aneuralprobabilisticlanguagemodel(Bengio etal.,2003)• NLP(almost)fromScratch(Collobert &Weston,2008)• word2vec (Mikolov etal.2013)
13
FFNNvalodasmodelis
14
L,L’– ieejasunizejasvektoriD- vektorudimensijaV– vārdnīca
𝑝 𝑤[ 𝑤['\, … , 𝑤['^_\)
=exp 𝑦*d
∑ exp 𝑦*�*∈h
ℎ = 𝜎 𝐴𝑣['^_\['\ + 𝑏l𝑦m = 𝐵ℎ + 𝑏,
𝑉 ×𝐷 D×|𝑉|
word2vec
• Aizmirstamparblakussastopamību skaitiemunmēģināmparedzētkontekstavārdus• Dažādasmetodesunoptimizācijas,kasļaujiemācītiesnoļotilielatekstukorpusa(unsupervised)• Saglabādažādasattiecībasstarpvārdiem:• v(krastmala)≈v(piekraste)• v(karaliene)≈v(karalis)- v(vīrietis)+v(sieviete)• v(grāmata)- v(grāmatas)≈v(ābols)- v(āboli)
15
Skip-grammu modelis
16
𝑣q = 𝑥/𝐿
𝑠 t 𝑥, 𝑦 t = 𝑢v w/ 𝑣q, k ∈ 1. . 𝐾
max 𝑝 𝑦 𝑥) = max log 𝑝 𝑦 𝑥
= max logexp 𝑠 𝑥, 𝑦
∑ exp 𝑠 𝑥, 𝑤�*∈z
Mērķafunkcija:
𝐽 𝐿, 𝐿m = logexp 𝑢v/𝑣q
∑ exp 𝑢*/ 𝑣q�*∈z
Vārduanaloģijupiemērs
17
Kā tas strādā?
X=King– man+woman
18
argmaxqcos 𝑥, 𝑘 − 𝑚 + 𝑤 = argmax
q
𝑥 @ 𝑘 − 𝑚 + 𝑤𝑥 𝑘 − 𝑚 + 𝑤
= argmaxq
𝑥𝑘 − 𝑥𝑚 + 𝑥𝑤Ekvivalentsar:argmax
q(cos 𝑥, 𝑘 − cos 𝑥,𝑚 + cos 𝑥, 𝑤 )
𝑥𝑘 − 𝑥𝑚 + 𝑥𝑤 =>aditīva kombinācija(vienstermsvardominēt)qt @ q*q�
=>multiplikatīva kombinācija(daudzbalansētāk)
argmaxq
cos 𝑥, 𝑘 cos 𝑥, 𝑤cos 𝑥,𝑚 + 𝜖
1konstante
[Levy,Goldberg,2014,LinguisticRegularitiesinsparseandexplicitwordrepresentations]
Vārduvektorukompozīcija
19
Kā tas strādā?
Reprezentē teikumu/paragrāfu/dokumentu kāiekļauto vārdu vektoru vidējo svērto vektoru=>visu vārdu pāru vidējā svērtā līdzība (efektīvāveidā)
20
𝑑𝑜𝑐𝐴 = 𝐴 + 𝐵 + 𝐶𝑑𝑜𝑐𝐵 = 𝑋 + 𝑌 + 𝑍
cos docA, docB =
=𝑑𝑜𝑐𝐴 @ 𝑑𝑜𝑐𝐵𝑑𝑜𝑐𝐴 @ 𝑑𝑜𝑐𝐵
== 𝐴 + 𝐵 + 𝐶 @ 𝑋 + 𝑌 + 𝑍𝐴 + 𝐵 + 𝐶 @ 𝑋 + 𝑌 + 𝑍
𝐴 + 𝐵 + 𝐶 @ 𝑋 + 𝑌 + 𝑍= 𝐴𝑋 + 𝐴𝑌 + 𝐴𝑍 + 𝐵𝑋 + 𝐵𝑌 + 𝐵𝑍 + 𝐶𝑋 + 𝐶𝑌 + 𝐶𝑍
Latviešuvalodasvārduvektoriuntopielietojumi
21
Latviešuvalodasjēdzientelpa
• Latviešuvalodasziņuarhīvs• Apstrādessoļi:• NoņemtHTMLtagus,tabulas• Noņemtspeciālossimbolus,punktuāciju• Aizvietotciparusar“0”• Sadalīšanateikumos,vārdos• Lemmatizēšana
Teikumi 66.8 M
Vārdi 1.7B
Vārdnīcas izmērs:- >10lietojumi- lemmas
0.97M0.55M
22
Dažādimodeļi
• Modeļi:• Skip-grams(SG),Continuous bag-of-words (CBOW)• Structured skip-grams(SSG),Continuous window (CWIN)• Character level word embeddings(CWE)
• Parametri:dimensionalitāte,kontekstaizmērs• Korpuss:apjoms,lemmatizēšana
23
Piemērs
24
Līdzīguvārduklasterēšanās,t-SNEprojekcija
Piemērs
25
Vārduvektorukosinusulīdzībasvairākoslīmeņos,dendrogramma:
Piemērs
Brazılija
Brazilja
Svazilenda
MbabaneSenegala
Dakara
Vjetnama
Hanoja
Japana
Tokija
Urugvaja
Montevideo
Krievija
MaskavaZviedrija
Stokholma
(a)
skriet
skrienu
skreja
dziedat
dziedu
dziedaja
(b)
26
Vārduattiecības,PCAprojekcija
Īpašības
• Latviešuvaloda–morfoloģiskibagātavaloda• Blakusatrodošiesvārdi:• Semantiskalīdzība• Sintaktiskalīdzība• Locījumi• Biežikopālietotasvārdugrupas• Pareizrakstībaskļūda
• Kātovaramnovērtēt?
27
𝑎𝑟𝑔𝑚𝑎𝑥�∈h cos 𝑣, ’treniņš’
Vārdformulīmeniskardiotreniņš (0.76)aerobais(0.76)
treniņprocess(0.75)treniņs (0.75)
iesildīšanās(0.74)trenniņš (0.70)
Lemmulīmenisiesildīšanās (0.79)treniņprocess (0.79)trenēties (0.77)trenēšanās (0.77)
starts(0.77)sparings(0.76)
Simbolulīmenistreniņa (0.99)treniņu(0.99)treniņi(0.99)
treniņiem (0.99)koptreniņš (0.99)treniņam (0.99)
Novērtēšanaunpielietojumi
• Morfoloģiskātagošana (vārdšķira,vienkāršotsmorfoloģiskaistags)• Nosauktoentītijuatpazīšana(PER,ORG,LOC)• Sintaktiskāparsēšana (UD,treebank)
28
Datukopa train dev testMorfoloģiskianotētskorpuss 88,600(5,560) 11,500(750) 8,000(620)
Sintaktiskianotētskorpuss(treebank)
49,000(3,900) - 4,000(220)
Universālāsatkarības(UD) 12,600(670) 3,500(190) 4,000(220)
Nosauktoentītijuanotētskorpuss 44,000(2,400) - -
Izmantotodatukopustatistika:vārduskaits(teikumi)
IzmantotāNNarhitektūra
29
Bi-directional LSTM-CRF,kaskombinē:• iepriekšapmācītusvārduvektorus;• simbolulīmeņavārdureprezentācijas;• joint cross-label modeling
[G.Lample etal.,2015]
CRFslānis
LSTM
Vārduvektori
Simbolalīmeņavārduvektoru
Morfoloģiskāmarķēšana(POS)
• Bāzlīnija:CMMmorfoloģiskaismarķētājs:• Leksikons• Morfoloģiskaisanalizators
• LSTM-CRF
30
Metode POS (ACC, %) Tags*(ACC, %) Pilns tags(ACC,%)
CMM 97.7 - 93.6
LSTM-CRF 96.7 91.2 -
LSTM-CRF+WE 98.3 94.6 -
*Vienkāršotsmorfoloģiskaistags:vārdšķira,locījums,skaitlis,dzimums,persona,darbībasvārdaizteiksme(~200unikālitagi)
Nosaukumuatpazīšana(NER)
• Bāzlīnija:CRFnosaukumuatpazinējs• Vārdusaraksti(gazetteers)• Vārduklāsteri• Morfoloģija
• LSTM-CRF
31
Metode NER(F1, %)
CRF 83.4
LSTM-CRF 63.7
LSTM-CRF+WE 90.5
NERapmācībaslīkne
0% 20% 40% 60% 80% 100%
Corpus fraction used for training
50%
60%
70%
80%
90%
100%
F1-
scor
e
58.8%
66.0%
57.1%
53.9%
80.1%
62.6%
57.1%
84.5%
72.1%
60.0%
86.6%
83.4%
63.7%
90.2%
CRF
LSTM-CRF
LSTM-CRF + embeddings
32
Sintaktiskāparsēšana
• Bāzlīnija:Maltparser rīkkopa,hibrīdaatkarībāsbalstītagramatika• LSTMbalstītsatkarībumodelis[M.Ballesteros et al.,2015,Improved Transition-Based Parsing byModeling Characters instead of Words with LSTMs]
33
Metode Treebank(UAS, %) UDTreebank (UAS, %)
Maltparser 76.8 -
LSTM+WE 76.8 75.1
LSTM+WE+morpho-tag - 75.4
Rezultāti
Modelis POS(ACC,%) NER(F1, %) UD(UAS,%)
ssg_200 98.3 89.1 74.9ssg_100 98.3 89.0 74.9sg_100 97.5 86.0 72.6cbow_100 97.5 85.9 72.6cwin_100 98.3 88.9 74.8cwe_100 96.9 74.6 68.2sg_100_lem 97.3 84.5 71.2avg(ssg_100,sg_100_lem) 98.2 86.5 72.8concat(ssg_100,sg_100_lem) 98.3 90.2 75.1
34
Svarīgākieparametri
107 108 109
(a) Corpus size (word count)
60%
65%
70%
75%
80%
85%
90%
95%
100%
97.2%
76.8%
69.8%
98.0%
86.9%
73.5%
98.3%
89.0%
74.9%
POS
NER
Parsing
50 100 150 200
(b) Dimension size
98.3%
89.1%
74.9%
98.3%
89.0%
74.9%
98.0%
88.3%
72.2%
97.4%
85.0%
71.2%
POS
NER
Parsing
35
Secinājumi
• State-of-the-art rezultāti trijos latviešu valodas NLPuzdevumos• Neizmanto ārējus resursus• Neizmanto manuāli veidotas/atlasītas pazīmes
• Lemmatizēšana var palīdzēt uzlabot rezultātus
36
Tālāk
• Dokumentuvektorinovārduvektoriem• Vārdureprezentācijuuzlabošanaflektīvām valodām• Ārpusvārdnīcasvārdi• Dažāduneironutīkluarhitektūrusalīdzināšana• Specifiskunosaukumuunterminuatpazīšanarunā
• Vairākvalodu vektortelpas• Vārdanozīmjunodalīšana,inducēšana• Multimodālasvektortelpas
37
Bilinguāli vārdu vektori
38
[Socher etal.,2013]
doc2vec
39http://gensim.narkive.com/RavqZorK/gensim-4914-graphic-representations-of-word2vec-and-doc2vec:i.5.2.full
Skip-thoughtvektori
40http://gabgoh.github.io/ThoughtVectors/
Multimodālasvektortelpas
41
[Socher etal.,2013]
Publikācijas• Miranda,S.,Znotins,A.,Cohen,S.B.,Barzdins,G.(2017).OnlineMonolingualandCrosslingual ClusteringofNewsArticles.InEMNLP.
• Znotiņš,A.(2016).WordEmbeddingsfor Latvian NaturalLanguage ProcessingTools.InHumanLanguageTechnologies:TheBalticPerspective,IOSPress.WebofScience.
• Znotiņš,A.,Polis,K.,andDarģis R.(2015).MediamonitoringsystemforLatvianradioandTVbroadcasts.InProceedingsofthe16thAnnualConferenceoftheInternationalSpeechCommunicationAssociation(INTERSPEECH),732–733.WebofScience,Scopus.
• Darģis,R.andZnotiņš,A.(2014).BaselineforKeywordSpottinginLatvianBroadcastSpeech.InHumanLanguageTechnologies:TheBalticPerspective,IOSPress,75–82.WebofScience.
• Znotiņš,A.andPaikens,P.(2014).Coreference ResolutionforLatvian.InProceedingsoftheNinthInternationalConferenceonLanguageResourcesandEvaluation(LREC),3209–3213.WebofScience.
• Pretkalniņa,L.,Znotiņš,A.,Rituma,L.,Goško,D.(2014).Dependencyparsingrepresentationeffectsontheaccuracyofsemanticapplications— anexampleofaninflectivelanguage.InProceedingsoftheNinthInternationalConferenceonLanguageResourcesandEvaluation(LREC),4074–4081.WebofScience.
42