Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

SYSTEMY WYSZUKIWANIA INFORMACJI

Podobne prezentacje


Prezentacja na temat: "SYSTEMY WYSZUKIWANIA INFORMACJI"— Zapis prezentacji:

1 SYSTEMY WYSZUKIWANIA INFORMACJI
METODA DOYLE’A Łukasz Kajzer, WSTI GR. 5CZ, styczeń 2007

2 Trochę czystej teorii…
Metoda Doyle'a to metoda wyszukiwania informacji w bazie danych. Na początek przedstawię algorytm słowny tej metody, a później zajmiemy się konkretnym przykładem 

3 Algorytm słowny Doyle’a
Dokonujemy wstępnego podziału dokumentów na m grup. Dla każdej z grup wypisujemy zbiór obiektów ją tworzących - Sj, oraz zbiór deskryptorów występujących w opisach dokumentów tejże grupy - Cj; gdzie j oznacza numer grupy. Następnie dla każdej z grup zliczamy ilość deskryptorów opisujących jej elementy; zapamiętujemy największą wartość i inkrementujemy ją - otrzymamy wartość bazową – b.

4 Algorytm słowny Doyle’a
Dla każdego deskryptora, każdej z grup, dokonujemy zliczenia liczby wystąpień danego deskryptora w opisach dokumentów tejże grupy. Tworzymy w ten sposób wektor częstości i oznaczamy (dla j-tej grupy) przez Fj. W ramach grupy przydzielamy każdemu z deskryptorów odpowiednią rangę. Rangę 1 otrzymuje deskryptor o największej częstości wystąpień, rangę 2 kolejny, itd. W przypadku takiej samej częstości wystąpień dla dwu, lub więcej, deskryptorów przydzielamy im tą samą rangę. Otrzymujemy wektor rangi opisujący grupę i oznaczamy przez Rj.

5 Algorytm słowny Doyle’a
Kolejnym krokiem jest obliczenie wektora profilu grupy - Pj. Poszczególne współrzędne wektora otrzymamy poprzez wyliczenie różnicy pomiędzy wartością bazową – b a rangą, dla każdego z deskryptorów. Obliczamy wartość funkcji punktującej – g(di,Pj) dla każdego dokumentu i każdego profilu. Wartość funkcji punktującej jest sumą wartości współrzędnych wektora profilu, odpowiadającym deskryptorom opisującym system, dla tegoż dokumentu w danej grupie. Obliczamy wartość funkcji punktującej dla każdego dokumentu z każdym profilem.

6 Algorytm słowny Doyle’a
Dla każdego dokumentu zapamiętujemy największą wartość funkcji g(di,Pj), oraz numer profilu, z którym ją uzyskano. Dla każdej z grup dokonujemy obliczenia współczynnika Hj, gdzie Hj = max(g(di,Pj)). Obliczamy wartość progową funkcji punktującej dla każdej z grup: gdzie T jest założoną wartością progowa, a  jest nazywana mocą związania dokumentów w grupę, 0<<1. Jednym ze sposobów obliczenia wartości T polega na obliczeniu jej z wzoru: T = max[max(g(di,Pj))+min(g(di,Pj))] div 2.

7 Algorytm słowny Doyle’a
Następnym krokiem jest utworzenie grup poprawionych (j-tą grupę poprawioną oznaczamy przez Sj’). Na grupę Sj’ składają się takie dokumenty, których wartość funkcji punktującej z profilem Pj jest większa od wyliczonej uprzednio wartości Tj. W ten sposób oprócz zakładanych wcześniej m grup otrzymaliśmy jeszcze jedną grupę, na którą składają się dokumenty, które w procesie grupowania nie znalazły się w żadnej z utworzonych grup. Grupę tą nazywamy grupą dokumentów swobodnych. Algorytm należy powtarzać do momentu, w którym skład utworzonych grup nie ulegnie zmianie.

8 …no to może konkrety :) Pewnie wielu z Was pomyśli sobie teraz – „ Ale o co chodzi ??”. Znam to doskonale – moje początki także były trudne. Czas więc rozwiać wszelakie wątpliwości pokazując algorytm Doyle’a krok po kroku na przykładzie. Pozostało wziąć głęboki wdech i zaczynamy…

9 Słownictwo użyte podczas przykładu
UWAGA ! ! ! Słownictwo użyte podczas przykładu NIE JEST prawidłowym słownictwem w Systemach Wyszukiwania Informacji, jednakże pozwala szybko i prosto zrozumieć praktyczne rozwiązywanie problemów metodą Doyle’a. Wszystkie stwierdzenia potoczne należy odnieść w kontekście przedstawionego Algorytmu Słownego !!!

10 Przykład zastosowania metody Doyle’a
Rzeczy, które znać musimy przed przystąpieniem do wyjaśnienia (dla osób, które od razu przejdą do tego podpunktu) Sj – wektor dokumentów Cj – wektor pojęć Rj – wektor rang Pj – profil (odpowiednik centroidu) Fj – wektor częstotliwości

11 Tak wygląda przykładowy zadany nam problem w postaci tabeli…
c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 d1 d2 d3 d4 d5 d6 d7 d8 d9 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

12 Pierwszym krokiem jest ustalenie sobie grup S
c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 d1 1 d2 d3 d4 d5 d6 d7 d8 d9 1 1 1 S1 1 1 1 1 1 1 1 1 S2 1 1 1 1 1 1 1 1 1 S3 1 1 1 1 1 1

13 W kolejnym kroku tworzymy tabele, w której reprezentujemy podane na początku wartości Sj – ta kolumna symbolizuje numer grupy (u nas 1,2,3) Cj – wektor pojęć, czyli spisujemy w kolumnie, które C mieszczą się w konkretnych grupach Fj – wektor częstotliwości to nic innego jak liczba „1” występująca w danej kolumnie C Pj – profil to różnica pomiędzy wartością bazową (łatwo ją wyznaczyć, gdyż jest do wartość najdłuższego wektora C z grup powiększona o 1) a wektorem rang… Rj – rangi przypisuje się podobnie jak pozycje w zawodach sportowych – im większy wektor częstotliwości, tym wyższa ranga (1 oznacza najwyższą)

14 Tak prezentuje się nasza tabela zgodnie z poprzednimi założeniami
C1 F1 R1 P1 S2 C2 F2 R2 P2 S3 C3 F3 R3 P3 d1 2 1 5 d4 C4 3 d7 C6 4 d2 d5 C5 d8 C8 d3 d6 d9 C9 C7 C 10

15 Na podstawie poprzedniej tabelki generujemy kolejną tzw
Na podstawie poprzedniej tabelki generujemy kolejną tzw. funkcję punktującą g(di,Pj). Jak to wygląda praktycznie ? Otóż bierzemy rząd np. d1 a następnie sumujemy wszystkie wartości P1 z tabeli biorąc pod uwagę te wektory C w których „1” występuje w danym rzędzie. Ponieważ „1” mamy w C1, C3, C4 których wartość P1 dla wszystkich jest 5, więc suma daje nam 15 co umieszczamy w tabeli. Analogicznie postępujemy z dx w pozostałych grupach.

16 Musimy stworzyć taką oto tabelę, a następnie wyznaczyć Hmax
P1 P2 P3 d1 15 3 d2 10 d3 d4 13 4 d5 5 12 d6 d7 d8 d9 7

17 Hmax wyznacza największa wartość funkcji punktującej dla danej grupy (u nas P115, P213, P313) Obszary zaznaczone na czerwono to wartości mieszczące się w zakresie wartości uśrednionej. Wartość uśredniona, można przyjąć, iż jest to (max+min)/2 co dla naszego przypadku wyznacza wartość 9 ((15+3)/2=9) Wykorzystamy ją teraz do wyznaczenia progu klasyfikacji Tj = Hj – α (Hj – T) α to tzw. czynnik skalujący przyjmowany empirycznie pomiędzy 0 a 1

18 Wyznaczamy kolejne T1, T2, T3 dla poszczególnych grup tj
Wyznaczamy kolejne T1, T2, T3 dla poszczególnych grup tj. T1 = ,5 (15 – 9) = 15 – 3 = 12 T2 = 13 – 0,5 (13 – 9) = 13 – 2 = 11 T3 = 13 – 0,5 (13 – 9) = 13 – 2 = 11 a następnie sprawdzamy czy funkcja punktująca jest > od Tj g (di,Pj) ≥ Tj więc: S1′ = {d1,d3} S2′ = {d4,d5,d6} S3′ = {d7,d8,d9}

19 Mam nadzieję, że ten krótki pokaż pomoże komuś zrozumieć na czym polega metoda Doyl’a 
WSTI LUTY 2007


Pobierz ppt "SYSTEMY WYSZUKIWANIA INFORMACJI"

Podobne prezentacje


Reklamy Google