![]() |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1. Introducere Recunoaşterea inferenţelor textuale (En: Textual entailment recognition) RTE [2] (Dagan et al, 2005) este o competiţie, în care, fiind date două fragmente de text se cere precizarea dacă înţelesul unuia din texte poate fi dedus din celălalt text. Scopul acestei competiţii este de a crea o platformă independentă de aplicaţie, care să fie capabilă să identifice inferenţele semantice atât de folositoare în aplicaţiile din lingvistica computaţională. Formal, inferenţa textuală – IT - (En: Textual Entailment) definită în (Dagan et al, 2005) este o relaţie unidirecţională între două fragmente de text, denumite T – textul, şi H - ipoteza. Se spune că din T se poate infera H dacă, un om care citeşte T poate infera faptul că H este de regulă adevărată. Această definiţie se bazează pe faptul (şi presupune) cunoaşterea umană a limbajului şi cunoaşterea suplimentară despre lume. Sistemele de IT participă în fiecare an în competiţia RTE, organizată de PASCAL [3] (Pattern Analysis, Statistical Modelling and Computational Learning), o comisie Europeană de excelenţă. Acest an, în cadrul competiţiei RTE3, am participat pentru prima dată în această competiţie cu un sistem realizat pe limba engleză.
2. Sistemul de inferenţe textuale Românesc În SIT-ul englezesc construit de noi anul acesta pentru competiţia RTE3 [4], ideea principală este de a transforma ipoteza folosind cunoaşterea semantică din resurse precum DIRT (Lin and Pantel, 2001), WordNet, Wikipedia, o baza de date de acronime. În plus, am construit un sistem capabil să achiziţioneze cunoaştere suplimentară din Wikipedia englezească. De asemenea, rularea sistemului necesită o parte de pre-procesare realizată cu MINIPAR (care construieşte arborii de dependenţă asociaţi textului şi ipotezei) (Lin, 1998) şi cu LingPipe [5] (care identifică entităţile de tip nume din text şi ipoteză), urmată de încercarea găsirii distanţei minime dintre arborii asociaţi (Kouylekov, Magnini, 2005). După terminarea competiţiei am construit un SIT românesc care să poată fi inclus într-un sistem de ÎR. Pentru a putea face acest lucru am înlocuit majoritatea componentelor din sistemul englezesc cu variante ale acestora care funcţionează pe limba română. În figura următoare putem observa arhitectura acestui sistem.
În continuare vom prezenta resursele şi uneltele folosite de noi în construcţia SIT-ului românesc.
2.1. GATE Am pornit cu identificarea entităţilor de tip nume, unde am folosit GATE (Cunningham et al., 2002) setat pe limba română, obţinând o lista cu entităţi de tip nume specifice limbii române. Deoarece, în sistemul englezesc am avut o regulă care se ocupa cu identificarea numelor de entităţi, numere şi date, şi a cărei folosire a dus la o îmbunătăţire a preciziei sistemului cu 16 %, am acordat o atenţie deosebită acestui modul. În (Hamza et al., 2002), un sistem de identificare a entităţilor de tip nume a fost dezvoltat pe limba română folosind ANNIE, componenta centrală a sistemului de entităţi de tip nume pe limba engleză construit în cadrul arhitecturii GATE, şi prezentată în (Pastra et al., 2002). Sistemul de identificare a entităţilor de tip nume pe limba română foloseşte împărţirea în cuvinte, un dicţionar geografic şi un modul cu reguli gramaticale din ANNIE. Însă, deoarece multe din întrebările din cadrul competiţiei QA@CLEF au inclus nume de scriitori ai literaturii universale sau personalităţi universale, am rulat şi cu GATE setat pe limba engleză, iar în final am considerat ambele mulţimi de entităţi.
2.2. Lematizare şi POS-tagging Pentru lematizare am utilizat un lematizator implementat în Perl ce utilizează un dicţionar de forme flexionate pentru limba română realizat de grupul de la Chişinău şi completat de noi în cadrul competiţiei QA@CLEF. La POS-tagging am utilizat un model de limbă dezvoltat la RACAI de colectivul prof. Dr. Dan Tufiş.
2.3. Acronime Baza de date cu acronime ne ajută să găsim relaţii între acronim şi semnificaţia lui: “UE – Uniunea Europeană”. Pentru a găsi acronimele pentru limba română am extras automat o listă de acronime dintr-o colecţie de ziare româneşti cu articole din economie şi politică folosind un algoritm asemănător celui prezentat în (Shinyama et al., 2002). De asemenea, am folosit o listă de acronime româneşti de pe Internet [6].
2.4. Cunoaşterea suplimentară Cunoaşterea suplimentară pentru entităţile de tip nume şi pentru numere a fost construită semi-automat pentru entităţile din ipoteză fără corespondent în text. Pentru acestea, am folosit un modul asemănător celui din (Iftene, Balahur, 2007) care extrage într-un fişier fragmente de text din Wikipedia [7], dar care are setată limba pe română şi care foloseşte Wikipedia [8] românească. În continuare am folosit fişierul cu fragmentele extras mai sus şi şabloane cu relaţii între entităţile de tip nume, cu scopul de a identifica relaţii cunoscute între entitatea cu probleme şi altă entitate. Aceste şabloane construite pentru limba română sunt asemănătoare şabloanelor construite pentru limba engleză, dar am adăugat în plus şabloane specifice limbii române. Aceste reguli vin în mare parte din regulile de extragere a contextelor de definiţii româneşti descrise în (Iftene et al., 2007). După cum se poate observa în tabela 1, şabloanele noastre identifică două tipuri de relaţii între cuvinte:
Tabela 1: Cunoaşterea suplimentară
Rezultatele pe limba română sunt incomplete, întrucât numărul articolelor Wikipedia în limba română este încă redus. De aceea, atunci când nu avem rezultate satisfăcătoare pe limba română folosim cunoaşterea suplimentară obţinută pe limba engleză.
2.5. WordNet WordNet-ul românesc (Tufiş et al., 2004) a fost folosit pentru a găsi sinseturile cuvintelor din ipoteză fără corespondent în text, urmând ca mai apoi să încercăm să găsim corespondent pentru acestea în text. Datorită temerilor generale ale unor anumiţi lexicografi, conform cărora simpla traducere a sinseturilor din WordNet-ul Princeton (Fellbaum, 1999) nu va avea ca rezultat un dicţionar reprezentativ pentru limba vizată, în (Tufiş, 1999) a fost adoptată o metodă centrată pe limbă (în contrast cu o metodă mai simplă bazată pe traducerea cuvintelor din Princeton WordNet), bazată pe resurse lexicografice de referinţă: Dicţionarul Explicativ al Limbii Române, Dicţionarul de Sinonime, şi de asemenea un dicţionar propriu român-englez.(Tufiş et al., 1999)
2.6. Regulile de variabilitate semantică: negaţii şi termeni contextuali Regulile de variabilitate semantică pentru sistemul IT pentru limba engleză au inclus reguli de negaţie pentru termeni specifici ca “no”, “never”, “don’t” etc., utilizarea verbelor modale în formă condiţională sau folosirea verbelor la forma infinitivă. Alte reguli au ca scop surprinderea influenţei pe care o au cuvintele pozitive asupra contextului – accentuarea înţelesului unui verb şi a influenţei cuvintelor negative micşorarea gradului de probabilitate a acţiunii reprezentate de verb şi introducerea incertitudinii. În varianta sistemului pentru limba română, am identificat reguli de negaţie şi cuvinte care influenţează contextul şi am introdus reguli similare. Pentru regulile de variabilitate semantică am considerat negaţia cu următoarele cuvinte “nu”, “poate” (care reprezintă forma pură de negaţie). De asemenea, subjunctivele au fost identificate prin faptul că sunt precedate de particula “să”. În acest caz, dacă subjunctivul este precedat de un cuvânt precum “permite, impune, indica, propune” sau sinonimele lor, de adjective ca “necesar”, “obligatoriu”, “liber” sau sinonimele lor, sau substantive precum “încercare”, “posibilitate”, “opţiune” şi sinonimele lor, înţelesul devine pozitiv. Pentru cazul cuvintelor care influenţează contextul, am construit, ca şi în cazul limbii engleze, două liste, una conţinând cuvinte precum “sigur”, “absolut”, “categoric”, “cert”, “precis”, “inevitabil”, “infailibil” care accentuează certitudinea contextului şi “probabil”, “posibil”, “fezabil”, “realizabil”, “practicabil” – care micşorează certitudinea contextului.
2.7. Calcularea potrivirii globale Ideea pentru calculul acestei valori constă în verificarea potrivirilor dintre cuvintele din ipoteză cu toate cuvinte din text, urmată de calcularea unei valori globale care reprezintă valoarea normalizată a sumei tuturor valorilor cuvintelor. Toate aceste calcule se fac după folosirea tuturor resurselor prezentate anterior: WordNet, baza de date de acronime, şi cunoaşterea suplimentară. Ideea principală din cadrul abordării constă în determinarea cuvintelor cheie din ipoteză care se găsesc de asemenea în text şi marcarea poziţiilor în care se află. Cuvintele cheie reprezintă termenii din propoziţie în afara stop word-urilor. Primul pas după eliminarea stop word-urilor îl reprezintă expandarea termenilor cheie din ipoteză, utilizând următoarele resurse: WordNet, baza de date de acronime şi cunoaşterea suplimentară. De exemplu, pentru ipoteza: H: Ernest Hemingway, faimos romancier, nuvelist, realizator de povestiri American, a trăit între anii 1899 şi 1961. După eliminarea stop word-urilor, obţinem următoarea listă de termini cheie, ce conţine lemele cuvintelor din ipoteză: {Ernest Hemingway, faimos, romancier, nuvelist, realizator, povestire, American, trăi, an, 1899, 1961} Această listă este mai apoi expandată folosind WordNet-ul Românesc, iar rezultatul este următorul: {Ernest Hemingway, {faimos, celebru, excelent}, {romancier, scriitor}, nuvelist, {realizator, producător, creator, participant}, {povestire, mit, parabolă, naraţiune}, American, {trăi, exista, vieţui}, an, 1899, 1961} În faza următoare, lista expandată este completată utilizând cunoaşterea suplimentară. În această colecţie, găsim American [in] America şi înlocuim American cu lista {American, America}. În final, folosind colecţia de acronime, expandăm încă o dată lista de termini pentru America cu US şi USA. Lista completă rezultată este: {Ernest Hemingway, {faimos, celebru, excelent}, {romancier, scriitor}, nuvelist, {realizator, producător, creator, participant, autor}, {povestire, mit, parabolă, naraţiune}, {American, America, US, USA}, {trăi, exista, vieţui}, an, 1899, 1961}. Rolul “textului” pentru sistemul de inferenţe textuale este jucat de fragmentul de text următor rezultat în urma interogării cu Lucene: “Ernest Hemingway (n.21 iulie 1899 - d.2 iulie 1961), faimos romancier, nuvelist, realizator de povestiri (short stories în limba engleză), reporter de război, laureat al Premiului Pulitzer în 1953, laureat al Premiului Nobel pentru Literatură în 1954, probabil cel mai cunoscut autor american în întreaga lume.” Folosind această listă, construim o matrice care conţine apariţiile cuvintelor din ipoteză în textul fără stop word-uri:
Tabela 2: Maparea ipotezei pe text
Formula pentru calcularea potrivirii globale este următoarea: Pentru cazul considerat, rezultatul aplicării formulei este:
Pragul dintre perechile pentru care relaţia de inferenţă textuală este adevărată şi cele pentru care este falsă a fost stabilită utilizând perechile de antrenament de la competiţia RTE3. Valoarea sa a fost stabilită la 0.42. În cazul de faţă, deoarece 0.51 este mai mare decât 0.42, decidem că relaţia de inferenţă textuală este adevărată pentru această pereche.
3. Rezultate Sistemul de inferenţe textuale are un nivel de acurateţe de 69.13% şi pentru limba română, rezultatele actuale au o valoare a acurateţii de aproximativ 57%. Cea mai importantă problemă cu care suntem confruntaţi în construirea sistemului de inferenţe textuale pentru limba română este reprezentată încă de lipsa de resurse suficiente, ce constituie motivul principal pentru diferenţa dintre rezultate. Prin adăugarea modulului de inferenţe textuale la sistemul de tip întrebare răspuns, pentru fragmentele de text ce nu reprezintă texte coerente, sistemul de inferenţe textuale este inutil; însă, pentru fragmente de text complexe, care exprimă aceeaşi idee, dar cu actori şi contexte diferite, diferenţa pentru alegerea răspunsului corect este obţinută clar, cu un grad mai mare de certitudine, utilizând modulul de inferenţe textuale. În prezent, utilizăm sistemul de inferenţe textuale numai în găsirea răspunsului corect pentru întrebări ce au răspunsuri de tip PERSOANĂ şi LOCALITATE. În cazul acestora, rezultatele demonstrează o creştere a acurateţii de până la 5%. Pentru viitor, dorim să continuăm dezvoltarea sistemului pentru a putea fi capabil de a procesa întrebări cu răspunsuri de tip DATĂ şi ORGANIZAŢIE. De asemenea, vom utiliza un modul de traducere român-englez, pentru a putea utiliza resursele consistente ce există pentru limba engleză. Mulţumiri. Autorul mulţumeşte membrilor grupului de lingvistică computaţională de la Facultatea de Informatică Iaşi pentru ajutorul şi sprijinul acordat la diferite stagii ale dezvoltării sistemului. Lucrul din cadrul acestui proiect este parţial finanţat de Siemens VDO Iaşi şi de proiectul CEEX Rotel numărul 29.
Referinţe bibliografice Bar-Haim, R., Dagan, I., Dolan, B., Ferro, L., Giampiccolo, D., Magnini, B. and Szpektor, I. (2006) The Second PASCAL Recognising Textual Entailment Challenge. In Proc. of the Second PASCAL Challenges Workshop on Recognizing Textual Entailment. Venice. Italy. Cunningham, H., Maynard, D., Bontcheva, K., Tablan, V.: GATE: A Framework and Graphical Development Environment for Robust NLP Tools and Applications. Proceedings of the 40th Anniversary Meeting of the Association for Computational Linguistics (ACL'02). Philadelphia, July (2002) Dagan, I., Glickman, O. and Magninim, B. (2006). The PASCAL Recognising Textual Entailment Challenge. In Quiñonero-Candela et al., editors, MLCW 2005, LNAI Volume 3944, pages 177-190. Springer-Verlag. Fellbaum, C. (1998). WordNet: An Electronic Lexical Database. MIT Press, Cambridge, Mass. Kouylekov, M. and Magnini, B. (2005) Recognizing Textual Entailment with Tree Edit Distance Algorithms. In Proceedings of the First Challenge Workshop Recognising Textual Entailment, Pages 17-20, 25–28 April, 2005, Southampton, U.K. Hamza, O., Tablan, V., Maynard, D., Ursu, C., Cunningham, H. and Wilks, Y. (2002). Name entity recognition in Romanian. Technical report, Department of Computer Science, University of Sheffield. Forthcoming. Iftene, A., Balahur-Dobrescu, A. (2007). Hypothesis Transformation and Semantic Variability Rules Used in Recognizing Textual Entailment. In Proceedings of the ACL-PASCAL Workshop on Textual Entailment and Paraphrasing. Pp.125-130. 28-29 June, Prague, Czech Republic. Iftene, A., Trandabăţ, D. and Pistol, I. (2007). Grammar-based Automatic Extraction of Definitions and Applications for Romanian. In Proceedings of RANLP workshop "Natural Language Processing and Knowledge Representation for eLearning environments". September 26, Borovets, Bulgaria. Lin, D. (1998). Dependency-based Evaluation of MINIPAR. In Workshop on the Evaluation of Parsing Systems, Granada, Spain, May. Lin, D. and Pantel, P. (2001). DIRT - Discovery of Inference Rules from Text. In Proceedings of ACM Conference on Knowledge Discovery and Data Mining (KDD-01). pp. 323-328. San Francisco, CA. Pastra, K., Maynard, D., Hamza, O., Cunningham, H. and Wilks, Y. (2002). How feasible is the reuse of grammars for Named Entity Recognition? In Proceedings of 3rd Language Resources and Evaluation Conference. Shinyama, Y., Sekine, S., Sudo, K. and Grishman, R. (2002). Automatic Paraphrase Acquisition from News Articles. Proceedings of Human Language Technology Conference, San Diego, USA. Tufiş, D., Barbu, E., Barbu Mititelu, V., Ion, R., Bozianu, L. (2004) The Romanian Wordnet. Romanian Journal of Information Science and Technology, Volume 7, Numbers 1-2, pp. 107-124. Tufiş, D. (1999). Blurring the distinction between machine readable dictionaries and lexical databases, Research Report, RACAI-RR56. Tufiş, D., Rotariu, G., Barbu, A.M. (1999). TEI-Encoding of a Core Explanatory Dictionary of Romanian, In Papers in Computational Lexicography, 219-228, Kiefer, F., Pajzs J. (Eds.), Hungarian Academy of Sciences.
CLEF: http://clef-qa.itc.it/ RTE: http://www.pascal-network.org/Challenges/RTE/ PASCAL: http://www.pascal-network.org/ Competiţia RTE3: http://www.pascal-network.org/Challenges/RTE3 Lingpipe: http://www.alias-i.com/lingpipe/ Acronime: http://www.abbreviations.com/acronyms/ROMANIAN Wikipedia englezească: http://en.wikipedia.org Wikipedia românească: http://ro.wikipedia.org
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Limbile şi culturile pe Internet ― Studiu 2007 | Portalingua | | Uniunea Latină |