Narzędzia do automatycznej analizy odniesień w tekstach
Transkrypt
Narzędzia do automatycznej analizy odniesień w tekstach
CLARIN-PL Narzędzia do automatycznej analizy odniesień w tekstach Michał Marcińczuk Jan Kocoń Politechnika Wrocławska Katedra Inteligencji Obliczeniowej Grupa Naukowa G4.19 [email protected] [email protected] Politechnika Wrocławska, 2016 -04-26 Agenda Część I Część III Wstęp teoretyczny Normalizacja wyrażeń temporalnych Czym są odniesienia Metoda i ocena Część II Część IV Automatyczne rozpoznawanie odniesień w tekście Praca z odniesieniami Korpus wzorcowy, modele statystyczne Przeglądanie wyników, ręczna ocena 2 Agenda Część I Część III Wstęp teoretyczny Normalizacja wyrażeń temporalnych Czym są odniesienia Metoda i ocena Część II Część IV Automatyczne rozpoznawanie odniesień w tekście Praca z odniesieniami Korpus wzorcowy, modele statystyczne Przeglądanie wyników, ręczna ocena 3 I. Czym są odniesienia Odniesienia to fragmenty tekstu reprezentujące pojęcia określonych kategorii. Rozważane kategorie odniesień: A) Jednostki identyfikacyjne, B) Wyrażenia temporalne. 4 I.A. Jednostki identyfikacyjne Jednostki identyfikacyjne to fragmenty tekstu odnoszące się do pewnych obiektów lub grup obiektów określonych kategorii. Wyróżniamy trzy główne grupy jednostek identyfikacyjnych: nazwy: º nazwy własne – np. Politechnika Wrocławska, Polska, º nazwy ogólne – nazwy klas lub serii, np. iPhone 4, Astra 2.0, przymiotniki pochodzące od nazw własnych, np. polski, gdański, europejskimi. wyrażenia liczbowe – jednoznacznie identyfikujące obiekty lub będące częścią takich wyrażeń, np. numer domu/mieszkania, numer PESEL, itp. 5 I.A. Wytyczne znakowania Nie ma jednej ugruntowanej definicji czym są jednostki identyfikacyjne – konieczność sformułowania definicji i określenia zakresu znakowania. http://nlp.pwr.wroc.pl/narzedzia-i-zasoby/wytyczne/kpwrjednostki-identyfikacyjne Kategoryzacja semantyczna – Sekine's Extended Named Entity Hierarchy (http://nlp.cs.nyu.edu/ene/), wytyczne ACE Definicja nazw własnych: Słownik nazw własnych J. Grzeni. Ekspertyza Zespołu Ortograficzno-Onomastycznego http://www.rjp.pan.pl/index.php?option=com_content&id=1486:ekspertyzy&Itemid=71 Własne założenia wynikające z planowanych zastosowań i docelowej reprezentacji danych. 6 I.A. Schemat jednostek identyfikacyjnych (1/2) Schemat definiuje ponad 100 kategorii jednostek identyfikacyjnych. Kategorie są ułożone w kilkupoziomową hierarchię. Na najwyższym poziomie znajduje się dziewięć grup: nam_eve – wydarzenia organizowane lub ustalone przez ludzi, nam_fac – konstrukcje (budowle, budynki, pomniki) stworzone przez ludzi. nam_liv – istoty żywe (ludzie, postacie, zwierzęta), nam_loc – toponimy (lokalizacje, jednostki geopolityczne i geograficzne), nam_org – organizacje, instytucje, zespoły, zorganizowane grupy itd. nam_oth – nazwy technologii, walut, adres e-mail, strony www, itd. nam_pro – chrematonimy (wytwory ludzkie). nam_adj – przymiotniki pochodzące od nazw własnych, nam_num – wyrażenia liczbowe, 7 I.A. Schemat jednostek identyfikacyjnych (2/2) Kategorie szczegółowe dla nam_loc (toponimy): nam_loc_astronomical – naturalne ciała niebieskie, nam_loc_country_region – regiony geograficzne w obrębie kraju, nam_loc_gpe – jednostki geopolityczne. nam_loc_gpe_admin – podział administracyjny,, nam_loc_gpe_city – miasta I 4 pozostałe podkategorie nam_loc_gpe_* nam_loc_hydronym – naturalne obiekty wodne, nam_loc_hydronym_river – rzeki, nam_loc_hydronym_lake – jeziora, i 4 pozostałe podkategorie nam_loc_hydronym_* nam_loc_land – ziemne obiekty geograficzne, nam_loc_land_cape – przylądki. nam_loc_land_continent – kontynenty. I 8 pozostałych podkategorii nam_loc_land_* 8 I.B. Wyrażenia temporalne Wyrażenia temporalne to fragmenty tekstu odnoszące się do czasu. Wyrażenia te mówią nam kiedy coś się stało, jak długo coś trwało albo jak często coś się wydarza.. Wytyczne anotacji zostały opracowane w oparciu o wytyczne TimeML. (oryginalnie stworzone dla j. angielskiego). http://clarin-pl.eu > Mediateka > materiały z warsztatów > WytyczneKPWr-WyrażeniaTemporalneTIMEX.pdf Cztery kategorie wyrażeń temporalnych: • czas • pora • trwanie • seria 9 I.B. Wyrażenia temporalne Przykłady Data (t3_date) Wyrażenie opisujące termin zgodnie z kalendarzem. Jest to jednostka czasu większa lub równa jednemu dniowi (rozumianemu jako doba). Odpowiada na kluczowe pytanie: kiedy. piątek 1 października 1999 roku . drugiego grudnia . wczoraj. Trwanie (t3_duration) Wyrażenie opisujące czas trwania jakiejś sytuacji, wyodrębniony przedział czasowy, w którym coś się dzieje. Odpowiada na kluczowe pytanie: jak długo. dwa miesiące. 48 godzin latem 1964 roku . trzy tygodnie [we] wtorek osiemnastego . całą ostatnią noc [w] listopadzie 1943 . 20 dni w lipcu latem tego roku 3 godziny w zeszły poniedziałek Pora (t3_time) Typ wyrażenia lokalizującego. Określenie to odnosi się do pory dnia (nocy). Nie musi ono być bardzo precyzyjne. Odpowiada na kluczowe pytanie: kiedy. , Seria (t3_set) Wyrażenie opisujące serię zdarzeń. Odpowiada na kluczowe pytanie: jak często za dziesięć trzecia . dwa razy w tygodniu. dwadzieścia po dwunastej . co dwa dni. wpół do pierwszej . [o] jedenastej rano . każdej niedzieli. 9.00 w piątek 1 października 1999 . rankiem 31 stycznia . wczoraj w nocy . 10 Agenda Część I Część III Wstęp teoretyczny Normalizacja wyrażeń temporalnych Czym są odniesienia Metoda i ocena Część II Część IV Automatyczne rozpoznawanie odniesień w tekście Praca z odniesieniami Korpus wzorcowy, modele statystyczne Przeglądanie wyników, ręczna ocena 11 II. Liner2 Cechy narzędzia do automatycznego rozpoznawania odniesień: wykorzystuje model statystyczny (warunkowe pola losowe, CRF), klasyfikacja w oparciu o cechy z lokalnego kontekstu. dedykowane metody regułowo-słownikowe, Procedura konstrukcji modelu: 1) Opracowanie wytycznych i oznakowanie korpusu treningowotestowego. 2) Definicja potencjalnych cech do opisu tokenów w tekście. 3) Eksperymentalna selekcja cech istotnych i optymalizacja parametrów modelu statystycznego. 4) Uczenie modelu statystycznego. 5) Uzupełnienie modelu statystycznego regułami i metodami słownikowymi. 12 II. Statystyki anotacji w KPWr Na potrzeby uczenia, dostrajania parametrów i testowania korpus KPWr został podzielony na trzy części: Część ucząca (ok 50%) - testowanie różnych konfiguracji modelu, badanie istotności statystycznej między różnymi wariantami modelu (walidacja krzyżowa), uczenie ostatecznej wersji modelu,, Część pomocnicza (ok 25%) - dostrajanie parametrów, Część testowa (ok 25%) - ocena ostatecznego modelu. Kategoria Uczący Pomocniczy Testowy Razem ~50% ~25% ~25% 100% Dokumenty Jednostki identyfikacyjne Anotacje 600 300 305 1 205 9 604 5 274 4 976 19 854 Dokumenty 819 408 408 1 635 2 949 1 632 1 518 6 099 Wyrażenia temporalne Anotacje 13 II. Modele danych Dostępne modele danych: 1) Jednostki identyfikacyjne ● ● ● granice jednostek – Named Entities (nam) główne kategorie – Named Entities (top9) szczegółowe kategorie – Named Entities (n82) 2) Wyrażenia temporalne ● ● granice wyrażeń – Temporal Expressions (1class) cztery kategorie – Temporal Expressions (4classes) 14 II.A. Jednostki identyfikacyjne » jakość rozpoznawania (1/3) Model n82 (wybrane kategorie) Precyzja Precyzja Kompletność nam_adj_country 73% 66% nam_adj_country nam_fac_road 74% 61% nam_fac_road nam_liv_person 71% 79% nam_liv_person nam_loc_gpe_admin1 79% 65% nam_loc_gpe_admin1 nam_loc_gpe_admin2 86% 72% nam_loc_gpe_admin2 nam_loc_gpe_city 69% 81% nam_loc_gpe_city nam_loc_gpe_country 91% 94% nam_loc_gpe_country nam_loc_hydronym_river 89% 50% nam_loc_land_continent 92% 78% nam_loc_land_continent nam_org_group_team 78% 68% nam_org_group_team nam_org_nation 81% 59% nam_org_political_party 89% 74% nam_oth_currency 100% 74% Łącznie 67% 59% Granice 86% 75% Kategoria Kompletność nam_loc_hydronym_river nam_org_nation nam_org_political_party nam_oth_currency Łącznie Granice 0 10 20 30 40 50 60 70 80 90 15 100 II.A. Jednostki identyfikacyjne » jakość rozpoznawania (2/3) Model top9 Precyzja Kategoria Precyzja Kompletność nam_adj 74% 61% nam_adj nam_eve 55% 28% nam_eve nam_fac 69% 37% nam_fac nam_liv 79% 78% nam_liv nam_loc 82% 87% nam_loc nam_num 100% 64% nam_num nam_org 65% 68% nam_org nam_oth 75% 48% nam_oth nam_pro 57% 50% nam_pro Łącznie 73% 69% Łącznie Granice 85% 80% Granice 0 10 20 30 Kompletność 40 50 60 70 80 90 100 16 II.A. Jednostki identyfikacyjne » jakość rozpoznawania (3/3) Model nam Kategoria Precyzja Kompletność nam 85% 83% Granice (top9) 85% 80% Granice (top9) Granice (n82) 86% 75% Granice (n82) Precyzja Kompletność 20 40 nam 0 10 30 50 60 70 80 90 100 17 II.B. Wyrażenia temporalne » jakość rozpoznawania Modele 1class i 4classes Precyzja Kompletność t3_date 90% 86% t3_date t3_time 77% 54% t3_time t3_duration 72% 70% t3_duration t3_set 68% 34% t3_set Łącznie 86% 79% Łącznie timex 86% 83% timex Kategoria Precyzja 0 10 20 30 Kompletność 40 50 60 70 80 90 100 18 Agenda Część I Część III Wstęp teoretyczny Normalizacja wyrażeń temporalnych Czym są odniesienia Metoda i ocena Część II Część IV Automatyczne rozpoznawanie odniesień w tekście Praca z odniesieniami Korpus wzorcowy, modele statystyczne Przeglądanie wyników, ręczna ocena 19 III. Normalizacja w. temporalnych » znaczenie lokalne i globalne Pierwsza wojna światowa wybuchła 28 lipca 1914 roku . 1914-07-28 1914-07-28 Byłem wczoraj w kinie na ciekawym filmie. -0000-00-01 2016-04-25 XXXX-WXX-1 Wyrażenie temporalne Znaczenie lokalne 3 stycznia xxxx-01-03 dziewiętnasty xxxx-xx-19 sześćdziesiątym trzecim xx63 za dziesięć trzecia xxxx-xx-xxt02:50 za minutę północ xxxx-xx-xxT23:59 zeszłego lata -0001-SU o szóstej dwa dni temu -0000-00-02t06:00 20 III. Normalizacja w. temporalnych » reguły normalizacji lokalnej pierwsza połowa XV wieku → 14-H1 "rules": { "partAge": { "extract": "$rePart%s+$reAgeNumber%s+wiek[.]?", "normalise": "@group(1)@group(0)" } }, "patterns": { "rePart": [ "pierwszy połowa", "drugi połowa" ], "reAgeNumber": [ "%d", "[12]%d", "i", ... "xv", "xvi", ... ] }, "normalisation": { "part": { "pierwszy połowa": "H1", "1 połowa": "H1", "drugi połowa": "H2", "2 połowa": "H2" }, "roman": { "^i$": "00", "^ii$": "01", ... "^xv$": "14", "^xvi$": "15", ... } } 21 III. Normalizacja w. temporalnych » wyniki (zestawienie z SemEval 2013) 22 Agenda Część I Część III Wstęp teoretyczny Normalizacja wyrażeń temporalnych Czym są odniesienia Metoda i ocena Część II Część IV Automatyczne rozpoznawanie odniesień w tekście Praca z odniesieniami Korpus wzorcowy, modele statystyczne Przeglądanie wyników, ręczna ocena 23 IV. Rozpoznawanie odniesień Sposoby korzystania z narzędzi: 1) Dostęp programistyczny – narzędzie Liner2 wraz modelami dostępne jest na licencji GPL; strona www: http://nlp.pwr.wroc.pl/liner2. 2) Demo Liner2 – możliwość szybkiego przetworzenia i wyświetlenia wyników rozpoznawania dla krótkich tekstów; strona www: http://inforex.clarin-pl.eu/index.php?page=ner. 3) Przetwarzanie przez D-Space – daje możliwość przetworzenia dowolnej liczby tekstów bez konieczności instalowania narzędzia. 24 IV. Demo Liner2 http://inforex.clarin-pl.eu/index.php?page=ner 25 IV. DSpace ->Inforex Dokumenty użytkownika DSpace any2txt wcrft2 Liner2 WoSeD on 1) Jednostki identyfikacyjne (nam) 2) Jednostki identyfikacyjne (top9) 3) Jednostki identyfikacyjne (n82) 4) Wyrażenia temporalne (timex1) 5) Wyrażenia temporalne (timex4) Przeglądanie anotacji w dokumencie (Preview) Weryfikacja anotacji (Bootstrapping) Przeglądanie anotacji po kategoriach (Annotation browser ) Eskport listy anotacji do plikuCSV (Annotation browser ) 26 CLARIN-PL Dziękuję bardzo za uwagę