Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Algorytmy grupowania przedrostków i rozbudowy komputerowego słownika dla jęz. polskiego Ispell Promotor: prof. zw. dr hab. inż. Jacek Mościński Konsultant:

Podobne prezentacje


Prezentacja na temat: "Algorytmy grupowania przedrostków i rozbudowy komputerowego słownika dla jęz. polskiego Ispell Promotor: prof. zw. dr hab. inż. Jacek Mościński Konsultant:"— Zapis prezentacji:

1 Algorytmy grupowania przedrostków i rozbudowy komputerowego słownika dla jęz. polskiego Ispell Promotor: prof. zw. dr hab. inż. Jacek Mościński Konsultant: mgr inż. Krzysztof Rzecki Autor: Piotr Baran

2 Plan prezentacji Cel i zakres pracy Budowa słownika Ispell Algorytmy deprefiksacji Napotkane problemy i rozwiązania Osiągnięte rezultaty

3 Zakres pracy Przegląd i porównanie możliwości oraz wydajności komputerowych słowników języka polskiego Zaprojektowanie, implementacja i przetestowanie algorytmów służących odnajdywaniu prawidłowych przedrostków oraz grupowaniu wyrazów posiadających te same grupy przedrostków w plikach słownika dla języka polskiego Ispell

4 Cel pracy Zmniejszenie rozmiaru słownika Zmniejszenie wymagań pamięciowych Ułatwienie dodawania nowych wyrazów do słownika Ułatwienie budowy narzędzi bazujących na słowniku Ispell

5 Pliki Ispella polish.dict – zawiera lematy języka polskiego (ok. 290 tys.) oraz flagi, na podstawie których zachodzi odmiana polish.aff – zawiera opis flag odmieniających polish.hash – plik generowany automatycznie przez Ispella na podstawie polish.dict i polish.aff

6 Polish.dict Fragment pliku: czołem czołgać/dHIik czołgowisko/UV czołgowy/bXxY czołg/QsST Składnia: lemat/flagi lemat

7 Polish.aff – przykład flagi Flaga s – mianownik l.mn. dla rzeczowników nieosobowych rodzaju męskiego oraz osobowych, lecz odmienianych identycznie jak nieosobowe [^ACĆGJKLŃOŚZŹŻ]>Y# komputery [CJLYŻ]>E# instruktaż [^CDS] Z>Y# aplauz [CDS] Z>E# utleniacz [KG]>I# pociąg Ć>-Ć,CIE# gość Ń>-Ń,NIE# boleń Ś>-Ś,SIE# goguś Ź>-Ź,ZIE# chabaź O>-O,E# brudzio

8 Flagi przedrostkowe Flagi można użyć również do definiowania przedrostków Przykład: flag *b:.>NIE#dobry -> niedobry Część praktyczna pracy polega na wyszukaniu przedrostków w słowniku i utworzeniu dla nich flag

9 Podstawowy algorytm wyszukiwania przedrostków Pobierz wyraz ze słownika Sprawdź czy kończy się na jakikolwiek inny wyraz ze słownika Jeżeli tak, początkowa część wyrazu jest przedrostkiem rozchodzić I wyraz II wyrazprefix

10

11 Etapy deprefiksacji Wyszukiwanie pseudoprzedrostków algorytmem podstawowym Wybór prawidłowych przedrostków Filtrowanie niepoprawnych związków przedrostek-lemat Usuwanie nieregularności w odmianie Rozwiązanie problemu tzw. wyrazów wieloprzedrostkowych Rozbudowa słownika o nowe wyrazy Podział na słowniki temetyczne

12 Problemy – złe przedrostki Algorytm podstawowy wyszukuje wszystkie przedrostki, nawet niepoprawne z punktu widzenia języka polskiego, np. przedrostek woj- w wyrazie wojna Rozwiązanie: filtrowanie przedrostków na podstawie tabeli poprawnych przedrostków ze Słownika poprawnej polszczyzny PWN

13 Problemy – złe przedrostki Algorytm wyszukuje poprawne przedrostki, ale niepasujące do danej części mowy, np. prefix czasownikowy ob- w rzeczowniku obraz Rozwiązanie: ręczna analiza słownika i stworzenie tabeli przyporządkowania przedrostek=>pasujące formy

14 Problemy - nieregularności Różnice w odmianie wyrazów z i bez przedrostka: zarobić => zarabiać robić => rabiać #błąd! Rozwiązanie: wyrazy z nieregularnościami nie są poddawane deprefiksacji (ze wzglądów wydajnościowych i objętościowych)

15 Problemy - wieloprzedrostkowość W języku polskim występują wyrazy wieloprzedrostkowe, np. przenajświętszy – Ispell nie obsługuje flag wielokrotnych Rozwiązanie: zwijanie tylko zewnętrznego przedrostka (na szczęście mało takich wyrazów – 1,98%)

16 Problemy – brak flag Słownik Ispell zawiera 26 flag – definicja przyrostków Wymagane dodatkowe 33 flagi na zdefiniowanie przedrostków Rozwiązanie: przekompilowanie korektora Ispell do obsługi wszystkich znaków ASCII jako możliwych flag

17 Rozbudowa słownika Dodanie obsługi przedrostków – rozbudowa funkcjonalna Dodanie przedrostka nie- do imiesłowów przymiotnikowych (np. nieusprawiedliwiony) Dodanie przedrostka wielo- do wyrazów z możliwym przedrostkiem jedno- (jednoślad => wieloślad) Skutek: ponad 6 tys. nowych wyrazów

18 Osiągnięcia Zmniejszenie słownika polish.dict o 8,73%

19 Osiągnięcia Zmniejszenie pliku polish.hash o 6% (mniejsze zużycie pamięci podczas działania słownika) Ponad 6 tys. nowych form wyrazowych Nowa funkcjonalność słownika pozwalająca wykorzystać go w projektach NLP

20 Dziękuję za uwagę Proszę o pytania


Pobierz ppt "Algorytmy grupowania przedrostków i rozbudowy komputerowego słownika dla jęz. polskiego Ispell Promotor: prof. zw. dr hab. inż. Jacek Mościński Konsultant:"

Podobne prezentacje


Reklamy Google