Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wyszukiwanie w repozytoriach tekstowych w języku polskim inż. Maciej Klubiński Opiekun pracy: prof. dr hab. Henryk Rybiński.

Podobne prezentacje


Prezentacja na temat: "Wyszukiwanie w repozytoriach tekstowych w języku polskim inż. Maciej Klubiński Opiekun pracy: prof. dr hab. Henryk Rybiński."— Zapis prezentacji:

1 Wyszukiwanie w repozytoriach tekstowych w języku polskim inż. Maciej Klubiński Opiekun pracy: prof. dr hab. Henryk Rybiński

2 2 Plan prezentacji Sens tworzenia wyszukiwarek Budowa wyszukiwarki Zasada działania wyszukiwarki Miary jakości wyszukiwania Problemy natury językowej

3 3 Po co nam wyszukiwarki? Eksplozja informacyjna Internet jako najpopularniejszy kanał dystrybucji informacji Większość ludzkiej wiedzy zapisana jest w postaci dokumentów w języku naturalnym Potrafimy liczyć znacznie szybciej niż na początku XX wieku, ale czy potrafimy szybciej czytać?

4 4 Budowa wyszukiwarki tułów -> repozytorium dokumentów, korpusy, zbiory danych, sieć WWW serce -> indekser głowa -> moduł budowy zapytań mózg -> moduł wyszukujący

5 5 Jak zbudować indeks? (1/7) Rozpoznanie języka Na podstawie: unikalnych dla danego języka ciągów znaków (np. eux - Francuski, cchi - Włoski, der - Niemiecki) występowanie określonych znaków np. ü - Niemiecki, ć - Polski wykorzystując cechy składniowe sylab danego języka wykorzystanie rozkładu prawdopodobieństwa występowania liter oraz dłuższych ciągów znaków (n-gramów) porównywanie dokumentów ze słowami ze stop-listy

6 6 Jak zbudować indeks? (2/7) Tokenizacja Podział tekstu na: akapity zdania -> język chiński, znaki interpunkcyjne wyrażenia (związki frazeologiczne) słowa –> skróty, apostrof, myślnik wybór termów – Prawo Zipfa Jeżeli weźmiemy wystarczający zbiór dokumentów z typowymi angielskimi słowami i posortujemy te słowa według częstości występowania, to iloczyn częstości występowania słowa i numeru w tym uporządkowaniu będzie stały.

7 7 Jak zbudować indeks? (3/7) Usunięcie STOP WORDS – 30% wszystkich słów a, an, and, are, as, at, be, but, by, for, if, in, into, is, it, no, not, of, on, or, such, that, the, their, then, there, these, they, this, to, was, will, with a, aby, ale, bardziej, bardzo, bez, bo, bowiem, był, była, było, były, będzie, co, czy, czyli, dla, dlatego, do, gdy, gdzie, go, i, ich, im, innych, iż, jak, jako, jednak, jego, jej, jest, jeszcze, jeśli, już, kiedy, kilka, która, które, którego, której, który, których, którym, którzy, lub, ma, mi, między, mnie, mogą, może, można, na, nad, nam, nas, naszego, naszych, nawet, nich, nie, nim, niż, o, od, oraz, po, pod, poza, przed, przede, przez, przy, również, się, sobie, swoje, są, ta, tak, takie, także, tam, te, tego, tej, ten, też, to, tu, tych, tylko, tym, u, w, we, wiele, wielu, więc, wszystkich, wszystkim, wszystko, właśnie, z, za, zawsze, ze, że

8 8 Jak zbudować indeks? (4/7) Stemming Trzy podejścia: stemmer algorytmiczny Pierwszy skuteczny algorytm dla angielskiego - Lovins stemmer (1968) – stemmer jednoprzebiegowy, wykorzystujący tablicę 250 możliwych podstawień końcówek oraz dodatkowy etap postprocessingu – był projektowany jako uniwersalny Obecnie najpopularniejszy stemmer – Porters stemmer, specjalizowany dla IR, wieloprzebiegowy, nie generuje poprawnych językowo rdzeni Inne – Krovets (1993) – trójprzebiegowy stemmer wyłącznie fleksyjny, Dawson (1974) – poprawiona wersja stemmera Lovins, zawiera tablicę 1200 podstawień, Paice/Husk (1990) – stemmer oparty na dopasowywaniu reguł, nie ma ograniczenia na liczbę kroków podstawień

9 9 Jak zbudować indeks? (5/7) Stemming stemmer słownikowy wykorzystuje słownik zawierający znaczną liczbę różnych form gramatycznych poszczególnych słów oraz odpowiadającej każdej z nich formę podstawową (lemat lub rdzeń) bezbłędne znajdywanie rdzeni słów zawartych w słowniku brak wyników w przypadku, gdy słowa w słowniku brakuje konieczność przechowywania i przeszukiwania słownika o dużych rozmiarach stemmer mieszany (hybrydowy) dla słów występujących w słowniku – stemmer słownikowy dla słów spoza słownika – stemmer algorytmiczny i próba dopasowania rdzenia do rdzeni zesłownikowanych w przypadku poprawnej klasyfikacji – uzupełnienie słownika

10 10 Jak zbudować indeks? (6/7) Usuwanie synonimów - użycie tezaurusa Zastąpienie terminów bardziej ogólnymi - np. pies -> ssak (użycie ontologii) Rozbijanie zlepków wyrazowych - np. nazw chemicznych, związków frazeologicznych Obliczanie wag dla słów kluczowych - np. miejsce wystąpienia słowa w tytule, streszczeniu, bibliografii

11 11 Jak zbudować indeks? (7/7) Tworzenie indeksu o czym trzeba pamiętać? – częste przeszukiwanie, rozmiar fizyczny, szybki i bezpośredni dostęp co zapamiętać? – id dokumentu, klucz (słowo, leksem, rdzeń), położenie w tekście, położenie fizyczne (adres URL), częstość występowania słowa, słowo po inwersji, … jak zorganizować? – budowa logiczna (podział na rekordy, segmentacja itp.), sortowanie alfabetyczne (statystyczne, częstotliwościowe), optymalizacja, kompresja jak przeszukiwać? – zależnie od organizacji danych w indeksie, byle szybko i wydajnie

12 12 Jak szukać? po słowach kluczowych Boolowskie (zbiory odwrócone) koncepcyjne (tezaurus) szukanie frazy szukanie z określeniem odległości pomiędzy słowami szukanie z zastosowaniem masek szukanie dokumentów podobnych do już znalezionych szukanie dokumentów po statystykach odwiedzin inne

13 13 Miary jakości wyszukiwania Legenda d s - znalezione dokumenty przez system d r - dokumenty w bazie uznane za relewantne (arbitralnie) DB- liczebność bazy danych precyzja – wyszukane relewantne do znalezionych (|d s d r |) / |d s | odzysk – wyszukane relewantne do relewantnych (|d s d r |) / |d r | dokładność – uznane za nierelewantne do wszystkich (|d s d r | + |DB – (d s d r )|) / |DB| szum – wyszukane nierelewantne do wszystkich nierelewantnych |d s - d r | / |DB –d r |

14 14 Problemy Fleksja – np. umią zamiast umieją Pojęcia wielowyrazowe – np. kwas dezoksyrybonukleinowy Homonimia – np. ranny (zraniony, o poranku), zamek (budowla, mechanizm w drzwiach, suwak) Synonimia – np. problem, zagadnienie, zadanie Niezgodność semantyki słów z semantyką tekstu (brak analizy składniowej i semantycznej) – np. potoczne określenie policjanta i radiowozu, zakręcony jak słoik na zimę Błędy ortograficzne Swobodna składnia – np. Wczoraj kupiłem auto, Kupiłem wczoraj auto, Kupiłem auto wczoraj

15 15 Pytania? Dziękuję za uwagę.

16 16 Co robię w ramach pracy mgr? używam Apache Lucene buduję polski stemmer hybrydowy implementuję moduł do analizy tekstów w języku polskim przeprowadzam testy dla różnych rozwiązań postać i zawartość indeksu modyfikacja zapytań wykorzystanie słownika w stemmingu

17 17 Pytania? Dziękuję za uwagę.


Pobierz ppt "Wyszukiwanie w repozytoriach tekstowych w języku polskim inż. Maciej Klubiński Opiekun pracy: prof. dr hab. Henryk Rybiński."

Podobne prezentacje


Reklamy Google