Documente Academic
Documente Profesional
Documente Cultură
Proiect de Diploma
Proiect de Diploma
DEPARTAMENTUL DE CALCULATOARE
Computer Science - Logo
HBFX
Computer Science
& Engineering
Department
Computer Science
& Engineering
Department
PROIECT DE DIPLOMA
Tudor Enescu
Coordonator stiinti c: , ,
BUCURESTI ,
2021
CUPRINS
1 Introducere 1
1.1 Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Solutia propusa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
, 1
1.4 Analiza Cerintelor / Motivatie . . . . . . . . . . . . . . . . . . . . . . . . .
, , 2
2 Metode Existente 4
2.1 Introducere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 YAKE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.1 Principiile si modul de lucru . . . . . . . . . . . . . . . . . . . . . .
, 5
2.2.2 Testare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 TextRank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3.1 Principiile si modul de lucru . . . . . . . . . . . . . . . . . . . . . .
, 6
2.3.2 Testare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 TopicRank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4.1 Principiile si modul de lucru . . . . . . . . . . . . . . . . . . . . . .
, 8
2.4.2 Testare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.5 SentenceBERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3 Solutia Propusa
, 11
3.1 Corpus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Keyword Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.1 Rake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.2 EmbedRank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2.3 Extragerea cuvintelor cheie din siere de tip PDF . . . . . . . . . . .
, 13
1
3.2.4 Extragerea secventelot cheie din sinopsisuri . . . . . . . . . . . . . .
, 14
3.3 Topic classi cation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.3.1 Descrierea pasilor de prelucrare . . . . . . . . . . . . . . . . . . . .
, 16
4 Detalii de implementare 19
4.1 ^Incarcarea sierului PDF . . . . . . . . . . . . . . . . . . . . . . . . . . . .
, 19
4.2 ^Incarcarea sinopsisului ^n format text . . . . . . . . . . . . . . . . . . . . . 21
5 Evaluare 24
6 Concluzii 32
Bibliogra e 33
SINOPSIS
Acest proiect exploreaza diferite tehnici de extragere a cuvintelor cheie din articole stiinti ce,
, ,
familiar utilizatorilor, prin intermediul unei aplicatii web. Interfata expusa prin intermediul
, ,
aplicatiei permite at^at introducera datelor sub forma unui document de tip PDF, c^at si sub
, ,
forma de text, ind ulterior analizate si a sate rezultatele prelucrarii. ^In perspectiva analizarii
, ,
participante ^n situatia de a alege un set de cuvinte sau secvente de cuvinte pe care le
, ,
considera a avea cea mai mare relevanta din 5 texte, pentru a le putea compara cu alegerile
,
facute de aplicatie. Rezultatele obtinute releva similitudini semni cative, cele mai multe dintre
, ,
secventele alese de participanti regasindu-se ^ntre secventele alese de algoritmi. ^In completarea
, ,
putea atribui o multime de cuvinte legate de subiectul vizat, fara ca acestea sa se regaseasca
obligatoriu ^n materialul prelucrat.
ABSTRACT
This project seeks to evaluate di erent techniques for keyword extraction from scienti c
papers, using di erent machine learning algorithms, while also being available in a user-friendly
format, through a web-based application. The interface exposed by the application allows the
user to provide data either as a PDF le, either as a plain text, which will be analyzed and
the results displayed. Regarding the relevance and validity of the results, I created a form in
which the participants were asked to pick the most relevant words or word sequences from
5 di erent texts, to be able to compare the choices made by them, to the choices made by
the application. The results showed signi cant similarities, most of the sequences picked by
the participants being also picked by the algorithm. To complement the already mentioned
functionalities, I trained a model designed for topic classi cation, to be able to assign a set
of words tied to the topic assigned to the text, that do not necessarily occur within its body.
1 INTRODUCERE
1.1 Context
Acest proiect ^si propune sa evalueze diferite tehnici prin care se pot extrage secvente
, ,
relevante din texte stiinti ce, realiz^and o analiza calitativa ^ntre algorimtul KeyBert si algoritmul
, , ,
Rake, ^n contextul ^n care nu exista un standard de facto pentru etichetarea corespunzatoare
a acestui tip de continut. Diferenta fundamentala de abordare dintre cei doi candidati este
, , ,
data de faptul ca Rake se foloseste de retele neuronale recurente, ^n tandem cu metrici
, ,
str^ans legate de frecventa cuvintelor din textul analizat, ^n timp ce KeyBert se bazeaza
,
pe transformatoare[18], un mecanism care ^i permite sa poata analiza secvente de text ^n ,
ordine aleatoare, paralelizarea procesului de codi care a textului ind mai e cienta, reusind sa ,
cuanti ce relevanta unei secvente ^n contextul fragmentului analizat. De asemenea, algoritmul
, ,
KeyBert ne permite folosirea transformatoarelor proprii, care pot accentua importanta anumitor ,
secvente, ^n functie de tipul de text analizat, fapt pentru care rezultatele obtinute arata un
, , ,
avantaj clar ^n favoarea acestuia ^n ceea ce priveste relevanta secventelor alese. Un alt factor
, , ,
important ^n etichetarea continutului unui text este reprezentat de subiectul abordat, motiv
,
pentru care, folosind un model antrenat pe un set de aproximativ 23000 de rezumate de articole
stiinti ce pe teme legate de procesarea limbajului natural, ^ncerc sa asignez textului o tema,
, ,
careia ^i corespund un set de cuvinte cheie, care pot ajuta la o etichetare corespunzatoare a
continutului.
,
1.2 Problema
Problema pe care ^si propune sa o abordeze proiectul este reprezentata de gasirea unei
,
solutii pentru etichetarea corespunzatoare a articolelor stiinti ce, solutie care ar putea facilita
, , , ,
automatizarea procesului de organizare al bazelor de date care contin lucrari stiinti ce, dar si
, , , ,
Obiectivul proiectului este acela de a descoperi cea mai buna solutie bazata pe tehnici de ,
^nvatare autonoma[19], prin intermediul unui studiu care pune ^n evidenta performantele a 2
, , ,
algoritmi, realiz^and o comparatie directa intre rezultatele obtinute prin intermediul algoritimlor
, ,
1
^In vederea atingerii acestor obiective, solutia implementata este reprezentata de o aplicatie , ,
web care permite utilizatorilor sa testeze cei 2 algoritmi, av^and posibilitatea de a ^ncarca e
un sier PDF, care contine articolul stiinti c vizat, e textul sau un rezumat su cient de
, , , ,
cuprinzator al articolului. ^In momentul submisiei, continutul este trimis server-ului pentru ,
prelucrare, ^n timp ce utilizatorul este redirectionat catre o pagina care va ^ncarca rezultatele ,
atunci c^and este nalizata procesarea. Formatul de a sare prespune ^ncarcarea a 2 liste, ,
care reprezinta rezultatele celor 2 algoritmi, iar ^n cazul sumbisiei bazate pe text, a sarea ,
textului cu secventele alese scoase ^n evidenta, alaturi de o lista suplimentara de cuvinte
, ,
asociate temei asignate, acolo unde aceasta a putut determinata. Diferentele de a sare a , ,
rezultatelor dintre cele 2 modalitati de submisie sunt date de tehnicile imperfecte de extragere
,
a datelor din cadrul sierelor de tip PDF, care fac imposibila scoaterea^n evidenta a secventelor
, , ,
selectate si ^ngreuneaza considerabil asignarea textului la un topic, ^n ciuda multiplelor tehnici
,
Motivatia acestui proiect este data de necesitatea creari unui instrument care sa vina ^n
,
sprijinul cercetatorilor ^n ceea ce priveste organizarea unui set larg de date, fara a necesara
,
interventia directa a acestora. Astfel, ^mi propun sa gasesc niste candidati ^n forma unor
, , ,
capabilitatile acestora de a extrage secvente cheie si de a asocia unui text stiinti c o tematica,
, , , , ,
cu lucrari stiinti ce , ,
^Indeplinirea obiectivelor propuse poate conduce la mai multe scenarii care aduc, dupa
caz, diferite c^astiguri. ^In primul scenariu, ^n care baza de date retine at^at sinposisul, c^at
, ,
si documentul propriu-zis al lucrarii stiinti ce, poate conduce la etichetarea si clasi carea
, , , ,
mai e cienta, prin agregarea rezultatelor procesarii ambelor surse de informatii. ^In al doilea ,
scenariu, documentul reprezinta singura sursa de informatie disponibila procesarii, caz ^n ,
care este redusa dimensiunea informatiei din baza de date. Pentru a pune in evidenta o
, ,
situatie concreta pentru cel de-al doilea scenariu, voi face o referinta catre portalul web ACL
, ,
Anthology[8], prin intermediu caruia pot accesate, p^ana ^n acest moment, un numar de
2
aproximativ 66000 de lucrari. Portalul pune la dispozitie posibilitatea de a descarca bibliogra a
,
completa ^n varianta cu si fara sinopsis inclus. Fisierul care contine si sinopsisurile este de
, , , ,
aproape 2 ori mai mare, av^and o dimensiune de 59.1 MB, prin comparatie cu cel fara, care
,
3
2 METODE EXISTENTE
2.1 Introducere
Privind problema extragerii cuvintelor sau a secventelor cheie din text, ^nt^alnim 2 tipuri
,
neetichetate. ^In acest proiect ne vom orienta catre solutiile nesupervizate de extragere.
,
Cea de-a doua categorie se potriveste situatiilor, destul de frecvente ^n aplicatiile moderne, ^n
, ,
care setul de date este foarte mare, ind foarte di cila etichetarea manuala a acestora.
4
2.2 YAKE
YAKE este un algoritm nesupervizat de extragere a secventelor cheie din text, care nu ,
se bazeaza pe dictionare de cuvinte si poate lucra cu texte de diferite marimi si limbi, fara
, , ,
informatii exterioare acestora. Sistemul propus de acest algoritm ia forma unei benzi de
,
{ Tipul literelor cu care este scris termenul (litere mari sau mici)
{ Pozitionarea termenului^n cadrul textului, plec^and de la presupunerea ca un termen
,
a at la^nceputul textului este mai probabil sa e mai relevant pentru textul analizat
{ Frecventa termenului^n text, plec^an de la presupunerea ca exista o relatie aproximativa
, ,
ca un termen ^nconjurat de multi termeni diferiti, nu este relevant ^n text
, ,
Calculul unui scor pe baza unei euristici care combina toate caracteristicile enumerate
mai sus
Generarea listei de candidati folosind o fereastra glisanta de dimensiune 3 (permite
,
analizarea n-gramelor formate din cel mult 3 termeni consecutivi), ecarui candidat
indu-i atribuit un scor cumulat bazat pe scorul anterior calculat pentru ecare termen
care intra ^n alcatuirea n-gramei alese
Selectia nala a secventelor de text cheie din lista de candidati anterior alcatuita, pe
, , ,
Similar algritmului RAKE, este bazat pe metode statistice de extragere a secventelor cheie, ,
fapt care constituie un avantaj prin prisma arhitecturii sale de tip "plug'n'play", dar si un ,
dezavantaj, dat ind faptul ca sensul contextual al cuvintelor nu este cuanti cat.
2.2.2 Testare
Folosind urmatorul sinopsis:
"Speech directed to children di ers from adult-directed speech in linguistic aspects such as
repetition, word choice, and sentence length, as well as in aspects of the speech signal itself,
such as prosodic and phonemic variation. Human language acquisition research indicates that
child-directed speech helps language learners. This study explores the e ect of child-directed
5
speech when learning to extract semantic information from speech directly. We compare the
task performance of models trained on adult-directed speech (ADS) and child-directed speech
(CDS). We nd indications that CDS helps in the initial stages of learning, but eventually,
models trained on ADS reach comparable task performance, and generalize better. The results
suggest that this is at least partially due to linguistic rather than acoustic properties of the
two registers, as we see the same pattern when looking at models trained on acoustically
comparable synthetic speech."
am testat algoritmul folosind interfata web disponibila la adresa https://boiling-castle-88317.
,
Secventa extrasa
, Scor
word choice 0.031
sentence length 0.036
phonemic variation 0.036
directed to children 0.043
children di ers 0.043
prosodic and phonemic 0.043
Speech 0.0482
child-directed speech 0.064
models trained 0.069
aspects 0.086
Tabela 2: Top 10 rezultate ^n urma rularii YAKE
Remarcam faptul ca desi secventele cheie se a a ^ntre cele selectate, nu ocupa primele pozitii
, , ,
conform relevantei lor in text, prima mentiune a unei variatii a cuv^antului "child" a ^andu-se
, , ,
pe pozitia a 4-a.
,
2.3 TextRank
inspirat de algoritmul Google PageRank[3], ^n care sunt alcatuite ierarhii locale, bazate pe
cunostinte inferate la nivelul ^ntregului set de date. Ideea de baza presupune stabilirea unor
, ,
ponderi ale v^arfurilor grafului, pe baza informatiilor legate de contextul global, extrase ^n mod
,
recursiv. Atunci c^and un v^arf are o muchie care ^l leaga de un alt v^arf, spunem ca v^arful din
urma a primit un vot. Ponderea unui v^arf este in uentata de numarul voturilor primite. De
,
asemenea, ponderea v^arfului votant impacteaza ponderea votului primit de v^arful votat.
6
^In contextul procesarii limbajului natural, ^n speta, extragerea de cuvinte cheie, v^arfurile
,
grafului sunt reprezentate de unitati lexicale, scopul ind acela de a alege unitatatile cu
, ,
ponderile cele mai favorabile ca ind cele mai relevante pentru un text dat. Daca doua unitati ,
care poate lua valori ^ntre 2 si 10, atunci exista o muchie ^ntre cele 2 v^arfuri asociate. Se
,
pot aplica ltre asupra textului procesat, ^nainte de construirea grafului propriu-zis, pentru
a elimina unitatile lexicale care nu sunt relevante cautarii, un exemplu ^n acest sens ind
,
conjunctiile. De asemenea, poate conditionata suplimentar crearea muchiilor, ^n baza unor
, ,
reguli arbitrare, cum ar imposibilitatea stabilirii unei muchii ^ntre 2 substantive. Astfel de
reguli au si rolul de a micsora complexitatea temporala a unei iteratii, micsor^and numarul de
, , ,
muchii si, implicit, ad^ancimea calculului recurent al ponderilor. Ponderile initiale ale v^arfurilor
, ,
sunt egale cu 1, iar numarul de iteratii care asigura o eroare de convergenta neglijabila este
, ,
cuprins ^ntre 20 si 30. Dupa nalizarea iteratiilor, se selecteaza topul v^arfurilor cu cea mai
, ,
mica pondere pentru procesarea nala, unde, unitatile lexicale lexicale adiacente ^n textul
,
2.3.2 Testare
Am alcatuit un mediu de testare bazat pe interpretorul Python 3.8.10, pentru a vedea
rezultatele algoritmului TextRank pentru acelasi sinopsis ca cel utilizat anterior, folosind 2
,
biblioteci care pun la dispozitie functionalitatile necesare "out of the box", numite "spacy" si
, , , ,
"pytextrank".
Secventa extrasa
, Scor
Speech 0.162
speech 0.162
child-directed speech 0.111
adult-directed speech 0.108
comparable task performance 0.105
linguistic aspects 0.101
acoustically comparable synthetic speech 0.097
models 0.093
children 0.091
the speech signal 0.087
Tabela 3: Top 10 rezultate ^n urma rularii TextRank
Remarcam faptul ca rezultatele sunt semni cativ mai bune dec^at ^n cazul algoritmului
YAKE, fapt ce se datoreaza modelului folosit, care encapsuleaza functionalitati de interpretare
, , ,
si lematizare a textului speci ce limbii engleze. Din aceasta cauza, functionarea la parametrii
, ,
7
optimi pentru texte ^n alta limba nu mai este garantata, asa cum era ^n cazul algoritmilor
nesupervizati bazati pe elemente statistice. De asemenea, se observa o tendinta de overlapping
, , ,
mai pronuntata, dar si un interval de lungime mai larg pentru n-gramele selectate. O alta
, ,
diferenta este reprezentata de arhitectura, care, ^n acest caz, nu permite rularea fara atasarea
, ,
2.4 TopicRank
diferenta fundamentala ind faptul ca un v^arf din graful format nu reprezinta o unitate lexicala,
,
ci o grupare de cuvinte cheie similare, numite ^n mod generic topic. Plec^and de la premisa ca o
secventa cheie este mult mai probabil sa e alcatuita din substantive, o astfel de grupare este
,
care spune ca 2 secvente sunt considerate similare daca au un overlapping al unitatilor lexicale
, ,
componente de cel putin 25%. Reducerea cuvintelor din aceeasi familie lexicala la o forma
, ,
comuna ^n etapata de preprocesare ^mbunatateste semni cativ procesul de grupare, proces
, ,
Dupa nalizarea procesului de grupare, obtinem un graf ^n care v^arfurile sunt reprezentate
,
de temele rezultate, iar ponderile muchiilor de legatura reprezinta relatiile semantice dintre
,
acestea. Spunem ca doua grupari au o relatie semantica puternica daca secventele care intra
, ,
^n componenta acestora se a a la distante relativ scurte unele de celelalte ^n textul dat. Odata
, ,
stabilite aceste metrici, ^ncepe procesul de "votare", dupa acelasi principiu ca la TextRank,
,
av^and un numar de iteratii su cient de mare pentru ca eroarea de convergenta sa e neglijabila.
, ,
Dupa nalizarea procesului de "votare", se face o selectie a gruparilor cu cel mai bun scor,
,
pentru ecare dintre ele aleg^andu-se un singur candidat, pentru reduce redundanta setului ,
nal de secvente cheie. ^In ceea ce priveste selectia candidatului unei grupari, se pot pune ^n
, , ,
Alegerea secventei care apare prima ^n text, plec^and de la premisa ca o secventa a ata
, ,
ale gruparii
8
2.4.2 Testare
Pentru a testa algoritmul TopicRank, voi folosi acelasi mediu de dezvoltare ca ^n exemplul
,
anterior, la care voi adauga biblioteca "topicrankpy" si dependintele sale si acelasi sinopsis.
, , , ,
^In tabelul de mai jos se a a primele 10 rezultate ^n ordinea scorurilor obtinute dupa rulare.
,
Secventa extrasa
, Scor
speech 0.128
child 0.068
models 0.056
ads 0.048
cds 0.045
adult 0.042
phonemic variation 0.028
human language acquisition research 0.028
language learners 0.028
due 0.028
Tabela 4: Top 10 rezultate ^n urma rularii TopicRank
Observam faptul ca overlap-ul este inexistent ^ntre candidatii gruparilor care fac parte
,
din selectia nala, conform asteptarilor, ^nsa, spre deosebire de algoritmii testati anterior,
, , ,
secventele de text extrase au un caracter mai general, fapt datorat procesului de selectie
, ,
interna din cadrul ecarei topici. ^In situatia ^n care scopul nal este alcatuirea unei multimi
, ,
de topici pentru un set larg de texte, acest lucru ne poate avantaja, ^nsa, strict din punct
de vedere al obiectivului constituit de extragerea de secvente cheie, rezultatele algoritmilor
,
2.5 SentenceBERT
transformarea secventelor de text de dimensiuni mai mari, cum sunt propozitiile, ^n vectori cu
, ,
ajutorul carora putem determina relatiile semantice ^ntre structuri lexicale complexe.
,
Primul pas, pentru a putea cuanti ca relatia lexicala a 2 structuri complexe, este aplicarea
,
embed-ului BERT pentru ecare element al ecarei structuri. Pentru a putea obtine o ,
perspectiva uni cata asupra proiectiei ecarei dintre cele 2 structuri ^n spatiul vectorial,
, ,
9
este necesara implementarea unei modalitati de agregare a vectorilor obtinuti la primul pas.
, , ,
Strategia standard pentru acest pas de agregare este calcularea mediei vectorilor asociati ,
un vector. Aplic^and una din cele 2 strategii, se obtin 2 vectori, v si w, care pot prelucrati
, , ,
Folosind cei 2 vectori rezultati, se poate calcula cosinusul unghiului dintre ei, pentru
,
EmbedRank, sau se poate calcula distanta euclidiana dintre punctele de nite de acestia.
, ,
Pentru a putea antrena un model de clasi care, se aplica o functie de normalizare softmax
,
jv wj. [14]
Algoritmul EmbedRank, parte din solutia implementata ^n acest proiect, foloseste astfel
, ,
de embed-uri pentru a putea calcula similaritatea dintre secvente de text candidate pentru
,
selectie si documentul din care fac parte, cu ajutorul formulei de calcul a relevantei marginale
, , ,
maxime.
10
3 SOLUTIA PROPUSA ,
3.1 Corpus
Speci cul textelor pe care se axeaza acest proiect este cel al lucrarilor siinti ce din aria
, ,
cercetarii tehnicilor de procesare a limbajului natural. Sursa sinopsisurilor pe baza carora voi
realiza evaluarile si a setului de texte de antrenament crearea pentru modelului necesar task-
,
ului de topic classi cation este reprezentat de platforma web dedicata agregarii textelor de
acest tip numita ACL Anthology[8].
Pentru prima problema, cea a extragerii de secvente cheie din articole stiinti ce, ^n acest
, , ,
Rake
EmbedRank
3.2.1 Rake
Am ales Rake(Rapid Automatic Keyword Extraction) pentru a putea evalua performantele ,
unui algoritm nesupervizat, ale carui metrici de extragere bazate pe statistici interne textului
analizat nu iau^n considerare relatiile semantice^ntre unitatile lexicale. Prin natura sa, Rake nu
, ,
este conditionat de limba ^n care este scris textul, singurul factor extern capabil sa in uenteze
, ,
rezultatul nal al rularii acestuia ind etapa de pre-procesare. Pe l^anga caracterul angostic
^n raport cu limba ^n care este scris documentul, implementarea Rake mai are avantajul de
a avea o arhitectura "plug'n'play", similara cu cea a lui YAKE, care ne permite o integrare
extrem de facila ^ntr-o aplicatie. Prin contrast cu YAKE, metricile calculate pentru Rake sunt:
,
frecventa unui cuv^ant, care favorizeaza cuvintele care apar des ^n document
,
gradul unui cuv^ant, care favorizeaza cuvintele care apar des si ^n secvente mai lungi
, ,
raportul dintre grad si frecventa, care favorizeaza cuvintele care apar predominant ^n
, ,
rezultatul celor 3 ind cuanti cat ^n forma unui scor al cuv^antului si ulterior ^nsumat pentru
,
secventele compuse din mai multe cuvinte, pentru a obtine scorul secventei[15].
, , ,
11
Figura 2: Fluxul de prelucrare al documentelor folosind algoritmului Rake
Selectia nala a secventelor cheie se face ^n ordinea descrescatoare a scorurilor obtinute.
, , ,
3.2.2 EmbedRank
Spre deosebire de toti algoritmii nesupervizati prezentati p^ana acum, EmbedRank^si propune
, , , ,
2 noi obiective: sa minimizeze overlap-ul secventelor extrase, fara sa sacri ce speci citatea
,
acestora(ca ^n cazul TopicRank), pentru o selctie mai diversi cata si sa ia ^n calcul relatiile
, , ,
semantice dintre cuvinte. Elementul de noutate care permite cuanti carea acestor relatii sunt ,
niste structuri numite "word embeddings", care ^si propun sa transforme cuvintele ^n vectori
, ,
a ati ^ntr-un spatiu vectorial continuu. Pentru problema abordata de acest proiect, am folosit
, ,
^n spatiul vectorial continuu. Pentru cazul speci c al textelor stiinti ce ^n limba engleza
, , ,
de dimensiuni variabile, am ales sa folosesc embed-ul pre-antrenat "SciBERT"[1], care s-a
dovedit a o solutie potrivita. Aceasta trecere ^ntr-un spatiu vectorial se face at^at la nivelul
, ,
^ntregului document, aceasta etapa incluz^and si o procedura care pastreaza doar adjectivele
,
se aleg secventele ^n baza unui scor numit relevanta marginala maxima, calculat dupa
, ,
formula:
MMR = [ Sim 1 (Di ; Q) (1 ) max Sim 2 (Di ; Dj )] (1)
Dj 2S
unde Di este secventa pentru care calculam MMR, Q este documentul, S este multimea
, ,
tuturor secventelor evaluate din document, functiile Sim 1 si Sim 2 reprezinta cosinusul
, , ,
12
unghiului format de reprezentarile vectoriale a doua secvente, iar 2 [0; 1] este un
parametru ales la implementare, astfel ^nc^at pentru = 0 rezultatul este o lista cu
,
diversitate maxima, iar pentru = 1 rezultatul este identic cu selectia bazata exclusiv
,
Pentru solutia implementata ^n acest proiect, am ales sa ma folosesc de MMR, cu = 0:5,
,
pentru a obtine un overlap acceptabil si diversitate, fara a sacri ca speci citatea secventeor
, , ,
texte mai scurte, selectiile curpind secvente mult prea lungi raportate la lungimea totala a
, ,
documentului.
Pentru a putea obtine un set de secvente cheie chiar si ^n absenta unui rezumat curpinzator,
, , , ,
proiectul include si o banda de asamblare care contine mai multi pasi meniti sa extraga textul
, , , , ,
propriu-zis dintr-un document PDF, sa ^l ltreze, deoarece adesea contine caractere invalide,
,
care nu pot intra ^n componenta unui text, si sa ^ncerce sa extraga, pe baza a ceea ce s-a
, ,
obtinut, secventele cheie. Aceasta abordare pleaca de la premisa ca documentul prelucrat are
, ,
13
o structura bine de nita, fara foarte multe insertii gra ce, raportat la dimensiunea totala si
, ,
cu text inserat folosind etichete speci ce LaTeX, extragerea ne ind posibila ^n cazului unui
document scanat si transformat ^n sier PDF, deoarece solutia nu include functionalitati de
, , , , ,
tip OCR. Motivatia din spatele neincluderii unei astfel de tehnologii este data de structurarea
,
pe 2 coloane a majoritatii documentelor de acest tip, care ar putea da rezultate slabe din
,
^In vederea extragerii textului din document, am folosit functionalitatile puse la dispozitie de , , ,
de a aduce textul la o forma su cient de buna c^at sa poata prelucrat de catre algoritmii
EmbedRank, respectiv Rake:
am eliminat continutul parantezelor, deoarece, ^n cele mai multe cazuri contin referinte
, , ,
catre elemente gra ce sau catre alte lucrari stiinti ce, irelevante din perspectiva prelucrarii
, ,
textului
am eliminat portiunea de referinte de la nalul lucrarii, pe baza tiparului obervat pe
, ,
textele extrase, care contin aceste referinte dupa secventa de text "nnReferences"
, , ,
anterioare
Dupa aplicarea acestor prelucrari, pentru a elimina artefactele ramase ^n urma extragerii
imperfecte a textului din document, am preaplicat stemmer-ul disponibil prin intermediul
bibliotecii "nltk" numit "TreebankWord", ltr^and ^nacelasi timp unitatile lexicale care nu , ,
fac parte din dictionarul limbii engleze. Pentru a putea realiza aceasta ltrare, am folosit
,
^In nal, textul prelucrat este dat celor 2 algoritmi, Rake si EmbedRank, pentru a realiza ,
extragerea propriu-zisa.
Spre deosebire de extragerea din PDF, textul unui sinopsis nu necesita la fel de multa
sanitizare, datorita faptului ca nu contine artefacte rezultate ^n urma extragerii, ^nsa, poate
,
14
Figura 4: Fluxul de prelucrare al unui document PDF
contine elemente irelevante obiectivului, care pot eliminate, fapt care poate in uenta pozitiv
, ,
rezultatele extragerii secventelor cheie. Pe baza observatiilor facute pe un set relativ redus de
, ,
sinopsisuri analizare din baza de date ACL Anthology, am concluzionat faptul ca urmatoarele
actiuni de preprocesare sunt necesare:
,
referintelor catre repozitoare care contin codul sursa al unei aplicatii care modeleaza
, , ,
Av^and la dispozitie un text fara artefacte, putem sa omitem pasul de lematizare. Acest
,
lucru nu este ^nsa singurul avantaj al unei surse de text clare. De aceasta data putem include
si o functionalitate estetica de subliniere a secventelor extrase de ecare dintre cei 2 algoritmi.
, , ,
este necesara re^mpartirea textului initial ^n unitati lexicale folosind tokenizer-ul embed-ului
, , ,
15
"SciBERT" pentru a putea realiza marcarea corespunzatoare a textului. ^In cazul Rake, o
simpla substitutie textuala este su cienta.
,
Procesul de asignare a unei teme pentru un text dat nu are numai rolul de organizare
automata a unui set de texte siinti ce, ind si o solutie de a ^mbunatati rezultatul procesului
, , , , ,
de extragere de cuvinte cheie, prin adaugarea cuvintelor care caracterizeaza tematica la setul
deja existent, cuvinte care nu sunt neaparat prezente ^n text. Pentru a putea ^ndeplini si ,
acest obiectiv, am ales sa folosesc un algoritm care are la baza aceeasi idee a transformarii
,
documentelor ^n vectori, folosind acelasi embed pre-antrenat pentru texte stiinti ce ca la
, , ,
Spre deosebire de algoritmii prezentati p^ana acum, de aceasta data este nevoie de un
,
set de documente pe care algoritmul sa antreneze un model, care va ^ncerca sa produca
un set de topici caracterizate de c^ate o lista de cuvinte. Acest model va folosit ulterior
pentru a ^ncerca atribuirea textului celei mai apropiate topici din punct de vedere semantic,
prin transformarea documentului analizat ^n vector si prin calcularea similaritatii cu topicile
, ,
curpinzator pentru orice arie de cercetare, este necesar un set de documente foarte mare si ,
divers, asa ca, pentru scopul demonstrativ al acestui proiect, am limitat setul la texte din aria
,
16
Antrenarea propriu-zisa este realizata premergator utilizarii, se bazeaza pe un set de aproximativ
23000 de sinopsisuri, extrase din bibliogra a completa a platformei ACL Anthology, si parcurge
,
urmatorii pasi: ,
folosirea embeding-ului "Specter" pentru transformarea ecarui document din set ^n
vectori
reducerea dimensionalitatii vectorilor rezultati folosind UMAP[9]
, ,
extragerea cuvintelor cheie, bazata pe TF-IDF, metrica statistica care cuanti ca relatia
,
dintre frecventa unui cuv^ant ^ntr-un document si numarul documentelor care contin
, , ,
acel cuv^ant, aplicata de aceasta data pe clase de documente, prin uni carea textelor
din acelasi cluster
,
Pentru a putea evita overlap-ul cuvintelor care fac parte din acelasi topic, am lematizat
,
ecare sinopsis din setul de antrenare, folosind modelul TreeWordBank. O ^ncercare anterioara
de antrenare a unui set de 8900 de texte, fara lematizare, a rezultat ^n obtinerea unor clase
,
Desi overlap-ul a fost redus semni cativ, nu este 0%, deoarece modelul folosit face distinctie
, ,
^ntre partile de vorbire cu aceeasi radacina, cum este cazul cuvintelor "speech"(substantiv) si
, , ,
17
Figura 6: Fluxul de antrenare(fundal rosu) si uxul de asociere a unui text nou unei
, ,
topici(fundal verde)
18
4 DETALII DE IMPLEMENTARE
Implementarea propriu-zisa a interfetei de testare consta ^ntr-un server web care pune la
,
dispozitia utilizatorului 2 formulare care permit ^ncarcarea datelor sub forma unui document
,
PDF sau sub forma de text. Ambele formulare sunt accesibile ^n orice moment printr-un meniu
de navigare amplasat ^n partea de sus a paginii.
procesare a input-ului, am folosit scripturi Python 3.8, alaturi de medii de dezvoltare virtuale
care contin bibliotecile necesare rularii acestora. Printre bibliotecile cele mai importante
,
Primul forumular permite utilizatorului sa ^ncarce un sier PDF si sa ^l previzualizeze, ^nainte
, ,
^n directorul "tmp" ar radacinii serverului, cu numele de forma [guid].pdf. Urmatorul pas
efectuat de server este sa genereze o pagina web speci ca acestei prelucrari, care, odata
trimisa utilizatorului si ^ncarcata de catre browser, va ^ntreba serverul periodic(un request
,
19
a sierului ^ncarcat. La nalul executiei, ^n interiorul directorului se vor gasi 3 siere text
, , ,
format JSON[11] ale rularii celor 2 algoritmi de extragere, respectiv textul sanitizat al sierului ,
PDF, pentru etapa de clasi care. Urmatorul pas este apelarea scriptului Python get topic.py
cu 2 parametri, primul parametru, care contine locatia modelului serializat binar, pentru a-
, ,
l putea ^ncarca, si al doilea parametru, care contine locatia sierului text sanitizat. Dupa
, , , ,
nalizarea acestui script, ^n directorul "tmp" se va regasi acum si sierul text [guid].topic.txt,
, ,
care contine lista cuvintelor asociate topicului ales, serializata ^n format JSON, sau textul
,
"No topic", ^n cazul ^n care nu i s-a putut asocia textului un topic. Ulterior executiei celor ,
2 scripturi, sierul ^ncarcat este sters si este adaugata o intrare ^ntr-un dictionar global, care
, , , ,
Endpoint-ul care raspunde la cererile de tip GET de veri care al progresului prelucrarii,
poate raspunde ^n 2 feluri, ^n functie de status:
,
cu un obiect de tip JSON, cu un singur c^amp de tip boolean, isDone = false, care nu
va determina nici o schimbare ^n pagina ultilizatorului
cu un obiect de tip JSON, cu 4 c^ampuri:
{ isDone, care de aceasta data are valoarea true
{ bert, care contine lista secventelor extrase de EmbedRank
, ,
{ topic, care contine lista cuvintelor asociate topicului ales, ^n cazul ^n care a fost
,
Raspunsul este preluat, si, ^n cazul ^n care isDone este true, a seaza pe ecran cele 3 liste,
, ,
^ntrerup^and bucla de cereri catre server. ^In functie de documentul prelucrat, listele de
,
secvente extrase pot varia ^n lungime. Dupa trimiterea raspunsului favorabil, intrarea asociata
,
acestei prelucrari din dictionarul global este eliminata, iar cele 3 siere generate ^n urma
, ,
prelucrarii sunt sterse. Ruta endpoint-ului care raspunde la aceste cereri este de forma
,
"/minestatus?id=[guid]", unde guid reprezinta id-ul asignat de server prelucrarii, ^n momentul
submisiei.
20
Figura 7: Arhitectura aplicatiei web pentru prelucrarea de siere PDF
, ,
Primul pas pentru ^ncarcarea sinopsisului este accesarea formularului de submisie, rutat la
"/abstractmining". De aceasta data, pagina este alcatuita doar dintr-o caseta de inserare a
textului si un buton de trimitere. Odata apasat, se trimite o cere de tip POST la endpoint-
,
aceea, sa trimita utilizatorului pagina personalizata care sa interogheze serverul ^n legatura
cu statusul prelucrarii. Dupa trimiterea paginii, cele 2 scripturi de Python , abstract mine.py
si get topic.py sunt apelate secvential, produc^and 3 siere, similar cu ceea ce se produce ^n
, , ,
serializate ^n formatul JSON care se a a ^n sierele [guid].bert.txt si [guid].rake.txt contin si
, , , ,
textul partial sanitizat, cu tag-uri HTML de marcare a sceventelor selectate pentru ecare
, ,
algoritm. Aceste tag-uri sunt folosite ulterior la a sare rezultatelor ^ntr-o maniera intuitiva.
,
Dupa nalizarea executiei scripturilor, sierul initial este sters si este adaugat un marcaj ^n
, , , , ,
21
dictionarul global.
,
Endpoint-ul folosit pentru interogarea server-ului ^n legatura cu progresul prelucrarii este
rutat la "/higlightedtext?id=[guid]". Obiectul returnat are o structura identica cu cel de la
PDF, atunci c^and prelucrarea nu este nalizata, iar atunci c^and prelucrarea a fost nalizata,
obiectul pastreaza cele 4 c^ampuri, dintre care "bert " si "rake" se vor transforma la r^andul lor^n
,
obiecte, cu alte 2 c^ampuri, "text" si "keywords", unde "text" contine sinopsisul cu marcaje, iar
, ,
"keywords" contine lista de rezultate. Similar ca ^n uxul anterior, dupa trimiterea obiectului,
,
marcajul din dictionarul global este sters, la fel si sierele care contin rezultatele. Clasa "text-
, , , , ,
success" folosita pentru stilul tag-ului mark face parte din sabloanele de stiluri Bootrstrap si
, ,
este responsabil de colorarea textului din interior cu verde. Listele de rezultate prezente ^n
pagina pentru documente PDF, sunt prezente si aici, imediat sub textele marcate.
,
Datorita numarului redus de pasi pentru acest ux de prelucrare, timpul mediu de asteptare
, ,
pentru un sinopsis de dimensiune medie este semni cativ mai mic. Printre elementele care
sporesc complexitatea ^n cazul sierelor PDF se numara cantitatea mult mai mare de text
,
22
Figura 9: Arhitectura aplicatiei web pentru prelucrarea sinopsisurilor
,
23
5 EVALUARE
Pentru a evalua calitatea selectiilor facute de algoritmii Rake si EmbedRank cu embed-ul
, ,
SciBERT, am compus o lista de 5 sinopsisuri cu tematici variate pe care le-am introdus ^ntr-un
chestionar, care le cere participantilor sa faca o selectie proprie de secvente cheie. Sinopsisurile
, , ,
We propose two novel methodologies for the automatic generation of rhythmic poetry
in a variety of forms. The rst approach uses a neural language model trained on a
phonetic encoding to learn an implicit representation of both the form and content
of English poetry. This model can e ectively learn common poetic devices such as
rhyme, rhythm and alliteration. The second approach considers poetry generation as
a constraint satisfaction problem where a generative neural language model is tasked
with learning a representation of content, and a discriminative weighted nite state
machine constrains it on the basis of form. By manipulating the constraints of the latter
model, we can generate coherent poetry with arbitrary forms and themes. A large-scale
extrinsic evaluation demonstrated that participants consider machine-generated poems
to be written by humans 54% of the time. In addition, participants rated a machine-
generated poem to be the best amongst all evaluated.
Accurately diagnosing depression is dicult{ requiring time-intensive interviews, assessments,
and analysis. Hence, automated methods that can assess linguistic patterns in these
interviews could help psychiatric professionals make faster, more informed decisions
about diagnosis. We propose JLPC, a model that analyzes interview transcripts to
identify depression while jointly categorizing interview prompts into latent categories.
This latent categorization allows the model to de ne high-level conversational contexts
that in uence patterns of language in depressed individuals. We show that the proposed
model not only outperforms competitive baselines, but that its latent prompt categories
provide psycholinguistic insights about depression.
High quality arguments are essential elements for human reasoning and decision-making
processes. However, e ective argument construction is a challenging task for both
human and machines. In this work, we study a novel task on automatically generating
arguments of a di erent stance for a given statement. We propose an encoder-decoder
style neural network-based argument generation model enriched with externally retrieved
evidence from Wikipedia. Our model rst generates a set of talking point phrases
as intermediate representation, followed by a separate decoder producing the nal
argument based on both input and the keyphrases. Experiments on a large-scale
dataset collected from Reddit show that our model constructs arguments with more
topic-relevant content than popular sequence-to-sequence generation models according
24
to automatic evaluation and human assessments.
The COVID-19 pandemic is having a dramatic impact on societies and economies
around the world. With various measures of lockdowns and social distancing in place, it
becomes important to understand emotional responses on a large scale. In this paper,
we present the rst ground truth dataset of emotional responses to COVID-19. We
asked participants to indicate their emotions and express these in text. This resulted
in the Real World Worry Dataset of 5,000 texts (2,500 short + 2,500 long texts). Our
analyses suggest that emotional responses correlated with linguistic measures. Topic
modeling further revealed that people in the UK worry about their family and the
economic situation. Tweet-sized texts functioned as a call for solidarity, while longer
texts shed light on worries and concerns. Using predictive modeling approaches, we
were able to approximate the emotional responses of participants from text within 14%
of their actual value. We encourage others to use the dataset and improve how we
can use automated methods to learn about emotional responses and worries about an
urgent problem.
Speech directed to children di ers from adult-directed speech in linguistic aspects such
as repetition, word choice, and sentence length, as well as in aspects of the speech
signal itself, such as prosodic and phonemic variation. Human language acquisition
research indicates that child-directed speech helps language learners. This study explores
the e ect of child-directed speech when learning to extract semantic information from
speech directly. We compare the task performance of models trained on adult-directed
speech (ADS) and child-directed speech (CDS). We nd indications that CDS helps in
the initial stages of learning, but eventually, models trained on ADS reach comparable
task performance, and generalize better. The results suggest that this is at least partially
due to linguistic rather than acoustic properties of the two registers, as we see the same
pattern when looking at models trained on acoustically comparable synthetic speech.
o metrica pentru secventele alese de cei 2 algoritmi, care sa arate, din punct de vedere
,
procentual, c^ate din secventele alese de respondenti, pentru un anumit sinopsis, au un overlap
, ,
de cel putin 75% din lungimea relevanta a acestora. De nesc lungimea relevanta a unei
,
secvente ca ind numarul de litere ale cuvintelor care apartin secventei, care nu fac parte din
, , ,
multimea cuvintelor de legatura. Procentul de 75% a fost ales pentru a contabiliza si secvente
, , ,
formate din cuvinte care apartin majoritar unei secvente extrase de algoritm. Cuvintele de
, ,
legatura nu sunt luate ^n calcul, deoarece ambii algoritmi nu le iau ^n calcul, av^and un impact
minimal asupra extragerii. De asemenea, voi calcula o metrica globala ambilor algoritmi,
pentru a veri ca necesitatea folosirii ambilor algoritmi ^n tandem, pentru a obtine cele mai
,
bune rezultate.
25
Figura 10: Statistici pentru sinopsisul 1
Se observa o performanta semni cativ mai buna a algoritmului EmbedRank, care acopera
,
75.4% din totalul secventelor respondentilor, spre deosebire de doar 54.4% ale lui Rake.
, ,
Presupun^and ca cei 2 algoritmi furnizeaza un set unitar de secvente cheie, avem un c^astig
, ,
de doar 3.5 procente de acoperire fata de cel mai bun rezultat individual, fapt care releva
,
o incluziune aproape totala multimii de secvente acoperite de Rake, ^n multimea secventelor
, , , ,
acoperite de EmbedRank.
26
Figura 11: Statistici pentru sinopsisul 2
De aceasta data rolurile de la primul sinopsis sunt inversate, EmbedRank av^and un procent
de acoperire de doar 58.2%, prin comparatie cu Rake, care urca la 70.9%. Overlap-ul dintre
,
multimile acoperite de cei 2 algoritmi este, de aceasta data, mai mic, c^astigul combinarii celor
, ,
2 algoritmi ind de 4.5%. Procentul de acoperire rezultat ^n urma combinarii, de 76.4%,
este apropiat de cel de 78.9% al primului sinopsis, ^n ciuda modi carilor semni cative ale
procentelor de acoperire la nivelul ecarui algoritm.
27
Figura 12: Statistici pentru sinopsisul 3
algoritmului EmbedRank este reprezentat de limbajul folosit ^n cadrul acestui sinopsis, care
este predominant uzual, prin contrast cu embed-ul folosit pentru transformarea secventelor ^n
,
vectori, care este antrenat sa scoata ^n evidenta cuvintele din sfera academica.
,
28
Figura 13: Statistici pentru sinopsisul 4
ajung^and la 36%, ^n timp ce Rake ram^ane la 64%. Acoperirea ^nregistrata de combinarea celor
2 algoritmi este de 70%. De aceasta data, rezultatul relativ slab al algoritmului EmbedRank,
se datoreaza acronimelor prezente ^n sinopsis. Desi embed-ul nu le poate valori ca, ^n acest
,
caz speci c, ele fac parte din majoritatea secventelor alese de respondenti.
, ,
29
Figura 14: Statistici pentru sinopsisul 5
Pentru acest sinopsis, EmbedRank a obtinut un procent de acoperire de 67.4%, semni cativ
,
mai bun fata de ultimele sinopsisuri, iar Rake, 52.2%, cel mai slab rezultat al sau. Desi
, ,
rezultatele celor 2 algoritmi nu sunt foarte bune, procentul de secvente ale respondentilor
, ,
acoperite de secventele extrase de cei 2 algoritmi ^mpreuna este cel mai mare de p^ana acum,
,
78.3%.
uctuatii semni cative, mai ales ^n cazul algoritmului EmbedRank. Rezultatele acestuia se
^ncadreaza ^n intervalul [26:7%; 75:4%], av^and o medie de 52.74%, si o deviatie standard
,
, ,
Embed-ul SciBERT poate ajuta la obtinerea unor rezultate foarte bune ^n cazul ^n care textul
,
analizat are un limbaj c^at mai academic si nu contine acronime sau substantive proprii, mai
ales ca parte relevanta a textului. De asemenea, folosirea MMR cu indicele = 0:5 rezulta
, ,
^ntr-o selectie de secvente cu un overlap mic, lucru pe care, participantii la studiu nu ^l iau
, , ,
neaparat ^n calcul, fapt care conduce la situatii ^n care acelasi cuvant se regaseste in mai
, , ,
multe secvente extrase de utilizator, ^n timp ce, printre secventele extrase de algoritm nu se
, ,
30
^In cazul algoritmului Rake, rezultatele se gasesc ^n intervalul [52:2%; 70:9%], av^and o medie
de 61.18% si o deviatie standard de 6.91%. Cu alte cuvinte, raport^andu-ne la rezultatele
, ,
studiului, e cienta algoritmului Rake este mult mai putin uctuanta si ofera,^n medie, rezultate
, , ,
mai bune dec^at EmbedRank. Cu toate acestea, EmbedRank, av^and la dispozitie un text care ,
respecta conditiile mai sus enuntate, are potentialul de a oferi rezultate mai bune.
, , ,
Analiz^and rezultatele celor 2 algoritmi puse la un loc, obtinem un interval de [70%; 78:9%],
,
cu o medie de 74.94% si o deviatie standard de doar 3.69%. Observam ca, cupl^and rezultatele
, ,
extragerilor celor 2 algoritmi, putem obtine rezultate bune ^n mod constant. Acest lucru se
,
datoreaza unui nucleu de secvente asigurat de algoritmul Rake, pe baza statisticilor interne ale
,
pe baza relatiilor semantice inferate cu ajutorul embed-ului antrenat special pentru a scoate
,
^In ceea ce priveste clasi carea textelor, modelul antrenat a asociat pentru 4 din cele 5
,
sinopsisuri procesate un topic si, implicit, o lista de cuvinte care caracterizeaza acel topic.
,
pentru sinopsisul 2: depression, forum, social, suicide, illness, disorder, self, posts,
emotional and depressive
pentru sinopsisul 3: argument, argumentation, argumentative, debate, persuasive, discourse,
arguments, rhetorical and opinion controversial
pentru sinopsisul 4: twitter, tweet, social, tweets, political, pandemic, topic, disaster,
hashtags and outbreak
pentru sinopsisul 5: dialogue, speech, dialog, conversation, utterance, speaker, spoken,
conversational, transcription and audio
Pentru ecare din cele 4 selectii, se observa o legatura semnatica puternica ^ntre setul de
,
Gazduind serverul web pe o con guratie cu un procesor Intel Core i7 4790K 4.0 GHz 4C/8T,
,
pe sistemul de operare MacOS BigSur 11.4, timpul mediu de procesare de la sumbmisia unuia
dintre sinopsisuri, p^ana la a sarea rezultatelor este de aproximativ 21 de secunde. Timpii de
,
procesare pentru analizarea documentelor asociate acestei liste de sinopsisuri este de ordinul
minutelor, ating^and limita superioara de 2 minute si 49 de secunde, de aproximativ 8 ori mai
,
mult. Acest lucru se datoreaza operatiilor suplimentare de extragere si sanitizare, dar si lucrul
, , ,
algoritmilor cu o cantitate de text semni cativ mai mare, sinopsisul reprezent^an un fragment
relativ mic raportat la ^ntregul corp al unei lucrari stiinti ce. , ,
31
6 CONCLUZII
^In ceea ce priveste extragerea secventelor cheie din lucrarile stiinti ce, putem spune faptul
, , , ,
ca nu ne putem baza pe calitatea rezultatelor unui singur algoritm, ^n orice situatie. Variatii ale , ,
limbajului folosit pot afecta drastic rezultatele unui algoritm precum EmbedRank, care, desi ,
are potentialul de a furniza rezultate foarte bune cu un embed BERT antrenat corespunzator
,
secventelor componente este unul ridicat sau limbajul deviaza putin de la formula standard
, ,
a textelor vizate. Pe de alta parte, rezultatele lui Rake ne arata ca, desi metricile statistice ,
de analiza a cuvintelor furnizeaza rezultate relativ constante, ^n raport cu alegerile umane,
rezultatele sale au un potential semni cativ mai redus. Concluzia care se poate trage este
,
aceea ca solutia cea mai buna este combinarea rezultatelor celor 2 algoritmi, pentru a putea
,
bene cia at^at de potentialul embed-urilor BERT, si a modurilor de valori care a relatiilor
, , ,
semantice, c^at si de constanta oferta de metricile statistice, pentru ca cercetatorii sa poata
, ,
Functionalitatea de extragere a cuvintelor cheie din siere PDF, desi are un potential mai
, , , ,
mare de a extrage secvente relevante, av^and ^ntregul text la dispozitie, are un timp de rulare
, ,
semni cativ mai mare. Folosind o estimare medie de 2 minute per document, pentru a putea
indexa o baza de date cum este cea de pe platforma ACL Anthology, care contine 66 de mii ,
de lucrari stiinti ce, ar trebui sa ruleze timp de aproximativ 92 de zile pentru a putea indexa
, ,
corespunzator. Bine^nteles acest numar poate mai mic sau mai mare, ^n functie de puterea
, ,
de procesare disponibla. Conlcluzia, la acest moment, este ca o astfel de functionalitate poate ,
utila, ^n conditiile ^n care timpul de procesare poate redus, e prin upgrade hardware, e
,
Av^and^n vedere rezultatele promitatoare ale modelului de clasi care antrenat pentru subsetul
,
lucrarilor stiinti ce legate de procesarea limbajului natural, putem concluziona ca solutia este
, , ,
promitatoare pentru un astfel de subset bine de nit, dar nu putem prezice cu exactitate
,
scalabiliatea acestuia pentru ^ntregul set, deoarece exista o varietate foarte mare, care ar
conduce la necesitatea unei multimi de antrenare foarte mare, despre care nu avem certitudinea
,
32
BIBLIOGRAFIE
[1] Iz Beltagy, Kyle Lo, and Arman Cohan. Scibert: A pretrained language model for scienti c
text, 2019.
[2] Kamil Bennani-Smires, Claudiu Musat, Andreea Hossmann, Michael Baeriswyl, and
Martin Jaggi. Simple Unsupervised Keyphrase Extraction using Sentence Embeddings.
arXiv e-prints, page arXiv:1801.04470, January 2018.
[3] Monica Bianchini, Marco Gori, and Franco Scarselli. Inside pagerank. ACM Trans.
Internet Technol., 5(1):92{128, February 2005.
[4] Adrien Bougouin, Florian Boudin, and Beatrice Daille. TopicRank: Graph-based topic
ranking for keyphrase extraction. In Proceedings of the Sixth International Joint
Conference on Natural Language Processing, pages 543{551, Nagoya, Japan, October
2013. Asian Federation of Natural Language Processing.
[5] Ricardo Campos, Vtor Mangaravite, Arian Pasquali, Alpio Jorge, Celia Nunes, and
Adam Jatowt. Yake! keyword extraction from single documents using multiple local
features. Information Sciences, 509:257{289, 2020.
[6] Arman Cohan, Sergey Feldman, Iz Beltagy, Doug Downey, and Daniel S. Weld. Specter:
Document-level representation learning using citation-informed transformers, 2020.
[7] Samhaa R. El-Beltagy and Ahmed Rafea. Kp-miner: A keyphrase extraction system for
english and arabic documents. Information Systems, 34(1):132{144, 2009.
[8] Association for Computational Linguistics. Acl anthology. https://www.aclweb.org/
anthology/.
[9] Leland McInnes, John Healy, and James Melville. Umap: Uniform manifold approximation
and projection for dimension reduction, 2020.
[10] Daniel Mullner. Modern hierarchical, agglomerative clustering algorithms, 2011.
[11] Felipe Pezoa, Juan L. Reutter, Fernando Suarez, Martn Ugarte, and Domagoj Vrgoc.
Foundations of json schema. In Proceedings of the 25th International Conference on
World Wide Web, WWW '16, page 263{273, Republic and Canton of Geneva, CHE,
2016. International World Wide Web Conferences Steering Committee.
[12] Mihalcea Rada and Tarau Paul. TextRank: Bringing order into text. In Proceedings
of the 2004 Conference on Empirical Methods in Natural Language Processing, pages
404{411, Barcelona, Spain, July 2004. Association for Computational Linguistics.
33
[13] Md Farhadur Rahman, Weimo Liu, Saad Bin Suhaim, Saravanan Thirumuruganathan,
Nan Zhang, and Gautam Das. Hdbscan: Density based clustering over location based
services, 2016.
[14] Nils Reimers and Iryna Gurevych. Sentence-bert: Sentence embeddings using siamese
bert-networks. CoRR, abs/1908.10084, 2019.
[15] Stuart Rose, Dave Engel, Nick Cramer, and Wendy Cowley. Automatic keyword
extraction from individual documents. Text mining: applications and theory, 1:1{20,
2010.
[16] Chengyu Sun, Liang Hu, Shuai Li, Tuohang Li, Hongtu Li, and Ling Chi. A review of
unsupervised keyphrase extraction methods using within-collection resources. Symmetry,
12(11):1864, 2020.
[17] Xiaojun Wan and Jianguo Xiao. Collabrank: towards a collaborative approach to single-
document keyphrase extraction. In Proceedings of the 22nd International Conference on
Computational Linguistics (Coling 2008), pages 969{976, 2008.
[18] Thomas Wolf, Lysandre Debut, Victor Sanh, Julien Chaumond, Clement Delangue,
Anthony Moi, Pierric Cistac, Tim Rault, Remi Louf, Morgan Funtowicz, Joe Davison,
Sam Shleifer, Patrick von Platen, Clara Ma, Yacine Jernite, Julien Plu, Canwen Xu,
Teven Le Scao, Sylvain Gugger, Mariama Drame, Quentin Lhoest, and Alexander M.
Rush. Huggingface's transformers: State-of-the-art natural language processing, 2020.
[19] Xian-Da Zhang. Machine Learning, pages 223{440. Springer Singapore, Singapore, 2020.
34