Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Promotor: prof. zw. dr hab. inż. Jacek Mościński

Podobne prezentacje


Prezentacja na temat: "Promotor: prof. zw. dr hab. inż. Jacek Mościński"— 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 Ispell’a 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 Ispell’a 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ć rozchodzić prefix II wyraz I wyraz

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 "Promotor: prof. zw. dr hab. inż. Jacek Mościński"

Podobne prezentacje


Reklamy Google