• Nie Znaleziono Wyników

Pozycjonowanie wyników w wyszukiwarkach

N/A
N/A
Protected

Academic year: 2021

Share "Pozycjonowanie wyników w wyszukiwarkach"

Copied!
48
0
0

Pełen tekst

(1)

Pozycjonowanie wyników w wyszukiwarkach

Agnieszka Nowak - Brzezioska

(2)

Wprowadzenie

• Nie sprawdzają się już dawne metody do pozycjonowania wyników wyszukiwania wg częstości słów, pozycji słów w tytule, adresu czy struktury dokumentu HTML. Nie brały one pod uwagę popularności strony, jej oceny czy zaufania do niej przez użytkowników WWW.

• Postanowiono szukad takich algorytmów, które będą ustalad pozycję strony poprzez różne metody rankingu stron w zasadzie na podstawie struktury linków.

(3)

Dwa algorytmy

• Page Rank

• HITS

Oba zakładają, że strona powinna byd tym bardziej popularna im więcej stron się do niej odwołuje (a więc im więcej stron ma link do niej w swoich linkach wychodzących).

(4)
(5)
(6)

Page Rank - Google

• Autorzy: Larry Page, Sergey Brin. (1998r)

• Zastosowanie: Google.com

• Bazuje na strukturze hiperlinków (zbiorów dokumentów).

• Efekt: na zadane zapytanie Google znajduje strony relewantne względem zapytania i przedstawia wyniki jako listę zgodnie z rankingiem ważności tych stron wg PageRank.

(7)

Historia PageRank

• W 1996 roku Lary Page i Sergey Brin, studenci uniwersytetu Stanford opracowali i zastosowali algorytm do około 60 milionów stron, nazwali go PageRank (nazwa pochodzi od nazwiska jednego z twórców).

• Zbudowali system wyszukiwania oparty o algorytm PageRank, nazwany Backrub.

(8)

Filozofia PageRank

• Znajdź strony internetowe zawierające fragmenty zapytania

• Oblicz relatywne ważności tych stron

• Sortuj strony według ich relatywnej ważności

(9)

Czynniki odpowiedzialne za ważności strony

• Fragmenty zapytania w tytule, stopce oraz ciele strony.

• Wielkośd czcionki, kolor, częstotliwośd występowania słowa

• Anchor text

• PageRank

• Inne czynniki

(10)

Założenia wstępne

• Przedstawmy sied stron w postaci grafu skierowanego

• Załóżmy, że z każdej strony u możemy dostad się do innej strony v po przez odnośnik

• Załóżmy, że nie ma możliwośd utknięcia na stronie

• Wyobraźmy sobie internautę klikającego losowo w odnośniki w nieskooczonośd

• Internauta zaczyna z losowo wybranej strony u z pewnym prawdopodobieostwem po[u], gdzie

• Z pewnym prawdopodobieostwem p1[v] internauta znajdzie się na stronie v

1 ] [

u

o u p

(11)

Jak funkcjonuje PR ?

PageRank może byd zainstalowany z popularnym toolbarem http://toolbar.google.com/).

Wartości PR są w zakresie 0 – 10 i odpowiadają skali logarytmicznej (o podstawie 10):

Toolbar PageRank Real PageRank

0 0-10

1 10-100

2 100-1000

3 1000-10000

4 10000-100000

5 itd

(12)

• Algorytm opracowany dla Google.com. Polega na losowym przemieszczaniu się po łączach i zliczaniu liczby odwiedzanych stron. Im więcej razy trafi na tę samą stronę, tym jest ona popularniejsza. Liczba odwiedzin uzyskana w ten sposób nazywa się PageRank. Zależnośd ta jest zdefiniowana rekurencyjnie:

OutDegree(u) - stopieo wyściowy wierzchołka (strony) czyli ilośd wychodzących krawędzi (hiperłączy),

N - sumaryczna liczba wszystkie wierzchołków w grafie sieci Web.

Zauważmy, że algorytm zachowuje własnośd autorytetów (mają wysoki PageRank).

(13)

Algorytm_PageRank( B : zbior_dokumentow_Web; p : real ) var d : dokument_Web;

PageRank : array[] of real;

begin

for d in B do PageRank[d] := 0;

d := losowa_strona(B);

while true begin

PageRank[d] := PageRank[d] + 1;

if random > p then begin

{ idz do dowolnego linku } d := losowe_lacze(d);

end else

{ wybierz nowa losowa strone d } d := losowa_strona(B);

end;

end;

Algorytm wykorzystuje zbiór dokumentów webowych uprzednio zindeksowanych.

Natomiast parametr p opisuje zachowanie tzw. losowego surfera, który z prawopodobieostwem 1-p wybiera losowo jedno z łączy lub z prawdopodobieostwem p rozpoczyna surfowanie od losowo wybranej nowej strony.

(14)
(15)

Model Matematyczny

(16)

Założenia modelu

• Jeśli strona „j” linkuje do strony „i” wówczas komórka (i,j) wynosi 1/ni, gdzie ni to liczba linków wychodzących ze strony i-itej.

• Jeśli nie ma połączenia między stroną „i” i „j”

wówczas algorytm wstawia w każdą komórkę kolumny „i” wartośd „1/N”.

(17)
(18)
(19)
(20)
(21)

• Page D ma PR=0.15 mimo, ze żadna strona nie głosuje na tę stronę. Czy to poprawnie ?

• PR(A) = (1-d) + d (PR(T1)/C(T1) + … + PR(Tn)/C(Tn))

• A więc jeśli strona D nie ma żadnych linków do niej

prowadzących to równanie przyjmuje postad:

• PR(A) = (1-d) + d * (0) = 0.15

• A wiec nie ważnie ile razy

wykonamy algorytm wartości będzie taka cały czas.

Observation: every page has at least a PR of 0.15 to share out. But this may only be in theory – there are rumours that Google undergoes a post-spidering phase whereby any pages that have no incoming links at all are completely deleted from the index…

(22)
(23)

Wyniki

a: 0.00000 b: 0.00000 c: 0.00000 d: 0.00000

a: 0.15000 b: 0.21375 c: 0.39544 d: 0.15000

a: 0.48612 b: 0.35660 c: 0.78721 d: 0.15000

a: 0.81913 b: 0.49813 c: 1.04904 d: 0.15000

a: 1.04169 b: 0.59272 c: 1.22403 d: 0.15000

a: 1.19042 b: 0.65593 c: 1.34097 d: 0.15000

a: 1.28982 b: 0.69818 c: 1.41912 d: 0.15000

a: 1.35626 b: 0.72641 c: 1.47136 d: 0.15000

a: 1.40065 b: 0.74528 c: 1.50626 d: 0.15000

a: 1.43032 b: 0.75789 c: 1.52959 d: 0.15000

a: 1.45015 b: 0.76632 c: 1.54518 d: 0.15000

a: 1.46341 b: 0.77195 c: 1.55560 d: 0.15000

a: 1.49011 b: 0.78329 c: 1.57660 d: 0.15000

a: 1.49011 b: 0.78330 c: 1.57660 d: 0.15000

a: 1.49011 b: 0.78330 c: 1.57660 d: 0.15000

a: 1.49011 b: 0.78330 c: 1.57660 d: 0.15000

a: 1.49011 b: 0.78330 c: 1.57660 d: 0.15000

Average pagerank = 1.0000

(24)

"Zaplanowany" PageRank

• Aktualnie Google Page Rank, jest najbardziej wiarygodnym wskaźnikiem, który dostarcza informację na temat popularności witryny w wyszukiwarce Google. Algorytmy Google przydzielają PR w skali od 0 do 10, gdzie oczywiście 0 to najniższa wartośd, a 10 najwyższa.

• Należy pamiętad, że ten wskaźnik nie jest zmieniany podczas każdej wizyty mechanizmów wyszukiwarki na stronie, a mniej więcej, raz na trzy miesiące. To dośd długi okres, jednak nie może on byd krótszy, aby nie obciążad serwerów Google.

• Wyszukiwarka Google nie tylko dodaje PR, może go również odejmowad w zależności od tego jak wartościowa strona jest na obecną chwilę, czyli jakie miejsce w rankingu Google zajmuje. Co należy zrobid, aby zwiększyd PR na swojej witrynie? Z pewnością zadbad o wartościowe linki zewnętrzne, prowadzące do witryny. A skąd wiadomo, że link jest wartościowy?

Oczywiście dowiemy się o tym, sprawdzając PR na danej stronie, im wyższy PR, tym wartościowszy link.

• Nie należy zapominad o odpowiednim tekście w linkach (anchor) , aby ta metoda wzmocnienia witryny miała sens.

(25)

Ile linków ? 1 2 3 4 5 6 7 8 9 10

Jaki PR ? 2 101 18 3 1 1 1 1 1 1 1

3 555 101 18 3 1 1 1 1 1 1

4 3055 555 101 18 3 1 1 1 1 1

5 16803 3055 555 101 18 3 1 1 1 1

6 92414 16803 3055 555 101 18 3 1 1 1

7 0.5 10^6 92414 16803 3055 555 101 18 3 1 1

8 2.8 10^6 0.5 10^6

92414 16803 3055 555 101 18 3 1

9 15 10^6 2.8

10^6

0.5 10^6 92414 16803 3055 555 101 18 3

10 84 10^6 15

10^6

2.8 10^6 0.5 10^6 92414 16803 3055 555 100 18

Tabelkę należy czytad na przykład w ten sposób: Jeśli chcesz otrzymad Page Rank 4 na swojej stronie, musisz zadbad o 555 linków z PR 2 prowadzących do tej strony. Albo 18 linków z PR 4.

Jaka ilośd linków zewnętrznych o danym PR, musi prowadzid do Twojej witryny, aby algorytmy Google przydzieliły odpowiedni PR ?

(26)
(27)

10/10

Google.com(http://www.google.com) - Search engine that uses PageRank

php.net(http://www.php.net) - Official website of the PHP programming language

Microsoft.com(http://www.microsoft.com) - Official Microsoft product information/support site

Apple.com(http://www.apple.com) - Official website of Apple Computer, Inc., which also houses the iTunes Music Store lcs.mit.edu(http://www.lcs.mit.edu) - MIT Laboratory for Computer Science

www.w3.org- The World Wide Web Consortium (W3C) www.nature.com- Nature Publishing Group (NPG)

www.aaas.org- American Association for the Advancement of Science

www.phpBB.com- Free, open-source PHP-based Internet message board system 9/10

MySQL.com(http://www.mysql.com) - Official website of the MySQL (My Structured Query Language) database engine CNN.com(http://www.cnn.com) - Cable News Network

BBC.co.uk(http://www.bbc.co.uk) - British Broadcasting Corporation

Wolfram.com(http://www.wolfram.com) - Houses Mathworld and Scienceworld, two extremely comprehensive math and science resources

Wikipedia.org(http://www.wikipedia.org) - Free encyclopedia

www.phpBB.com- Free, open-source PHP-based Internet message board system Mozilla.org(http://www.mozilla.org) - Open-source Internet tools

SourceForge.Net(http://www.sourceforge.net)- Directory of open-source development projects archive.org(http://www.archive.org) - Home of the Internet Archive project

si.edu(http://www.si.edu) - Smithsonian Institution homepage stanford.edu(http://www.stanford.edu) - Stanford University And example of some lower pagerank sites are:

5/10 4/10

3/10 Cronikey Inc.(http://www.cronikeysinc.com)

2/10 iFobos Free Web Hosting Php/mySQL(http://www.ifobos.com) 1/10

0/10 Thousands of pages

(28)

Podsumowanie PR

• PageRank jest algorytmem numerycznym stosowanym do ustalenia wagi strony pod względem jej ważności i istotności.

• PageRank opiera się na tzw. linkach przychodzących do danej strony, ale nie tylko ich liczbie ale i ważności ( a wiec wartości PageRank tamtych stron).

• PR(A) = (1-d) + d(PR(t1)/C(t1) + … + PR(tn)/C(tn)).

• Złe linki przychodzące nie mają wpływu na Page Rank.

• Kolejne poziomy Page Rank coraz trudniej osiągnąd (logarithmic scale).

(29)

HITS (Hypertext Induced Topic Selection)

• Autor: John M. Kleinberg

• Zastosowanie: Ask.com

• Algorytm: 2 kryteria rangowania stron:

dostarczanie informacji w temacie strony i dostarczanie linków do stron będących w temacie szukanym w zapytaniu użytkownika.

• Wyróżnia się tzw. strony rekomendowane (autorytety, authorities) i strony startowe (hubs).

(30)

wprowadzenie

• HITS stands for Hypertext Induced Topic Search.

• Unlike PageRank which is a static ranking algorithm, HITS is search query dependent.

• When the user issues a search query, HITS first expands the list of relevant pages returned by a search engine and then produces two rankings of the expanded set of pages, authority ranking and hub ranking.

(31)

Założenia

• An authority is a page with many in-links.

The page may have good or authoritative content on some topic

• A hub is a page with many out-links.

The page serves as an organizer of the information on a particular topic and points to many good authority pages on the topic.

(32)

Autorytet

• Strona może byd uznana za autorytet jeśli dostarcza rzetelnej (relewantnej) informacji w zadanym temacie.

A site is very authoritative if it receives many citations. Citation from important sites weight more than citations from less-important sites

(33)

Strona startowa (hubs)

• Strona może kandydowad do bycia stroną startową jeśli zawiera linki do stron, które dostarczają relewantnej informacji względem zapytania.

Hubness shows the importance of a site. A good hub is a site that links to many

authoritative sites

(34)

Algorytm HITS (Hyperlink Induced Topic Search)

• Służy do znajdowania węzłów i autorytetów dla konkretnych słów kluczowych.

• Tworzy podgraf sieci WEB: wierzchołkami są poszczególne strony, a krawędziami są hiperłącza.

• Każdy węzeł i autorytet otrzymuje określoną wagę, na podstawie liczby krawędzi - zastosowanie zasady, że dobry autorytet jest wskazywany przez wiele dobrych węzłów, podczas gdy dobry węzeł wskazuje na wiele dobrych autorytetów.

(35)
(36)

•Algorytm_HITS( szukane_slowo : string ) var B, L, M : zbior_bazowy_dokumentow_Web;

•d, u : dokument_Web;

•odnosnik : link;

•a : array[] of real;

•h : array[] of real;

•begin L := 0; M := 0; { Buduj zbior bazowy dla szukanego slowa }

•B := standardowa_wyszukiwarka( słowo );

• for d in B do

•begin

–L := L + dokumenty_wskazujace_na( d );

–M := M + dokumenty_wskazywane_przez( d );

•end;

• B := B + L + M; { usuniecie linków miedzy stronami z tej samej domeny }

• for d in B do

–for odnośnik in d do

if domena( odnośnik ) = domena( d ) then

– usuń( d, odnośnik ); { iteracyjne obliczenie współczynników węzłów i autorytetów } for d in B do

begin

a[d] := 1; h[b] := 1;

end;

for d in B do begin

a[d] := 0; h[d] := 0;

for odnosnik in B do begin

if cel(odnośnik) = d then a[d] := a[d] + h[zrodlo(odnośnik)]

if zrodlo(odnosnik) = d then h[d] := h[d] + a[cel(odnośnik)]

end;

end;

Algorytm_HITS := najwieksze(h) + najwieksze(a);

end;

•Proces iteracyjny zbiega się do stabilnych wartości h i a. Ostatecznym wynikiem działania algorytmu jest lista węzłów i autorytetów z największymi współczynnikami poprawności.

(37)

Authority and Hubness

2

3

4

1 1

5

6

7 a(1) = h(2) + h(3) + h(4) h(1) = a(5) + a(6) + a(7)

(38)
(39)

Algorytm

• Algorytm jest iteracyjny

• Oblicza w każdej iteracji wagi stron jako autorytet i hub.

• Na wyjściu algorytmu otrzymujemy wektory dla autorytetu i huba – macierz A.

• Wektor autorytetu x jest wektorem własnym AAT zaś hub y jest wektorem własnym ATA

(40)

HITS Example

{1, 2, 3, 4} - nodes relevant to the topic

• Expand the root set R to include all the children and a fixed number of parents of nodes in R

A new set S (base subgraph) 

• Start with a root set R {1, 2, 3, 4}

Find a base subgraph:

(41)

HITS Example

BaseSubgraph( R, d)

1. S r

2. for each v in R 3. do S S U ch[v]

4. P pa[v]

5. if |P| > d

6. then P arbitrary subset of P having size d 7. S S U P

8. return S

(42)

HITS Example

HubsAuthorities(G)

1 1  *1,…,1+ Є R 2 a  h  1

3 t  1 4 repeat

5 for each v in V

6 do a (v)  Σ h (w)

7 h (v)  Σ a (w)

8 a  a / || a ||

9 h  h / || h ||

10 t  t + 1

11 until || a – a || + || h – h || < ε 12 return (a , h )

Hubs and authorities: two n-dimensional a and h

0 0

t

t t

t t

t t t

t t

t t

t -1

t -1

t -1

t -1 w Є pa[v]

w Є pa[v]

|V|

(43)

HITS Example Results

Authority Hubness

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Authority and hubness weights

(44)
(45)
(46)
(47)

http://matalon.org/search-algorithms/

(48)

Cytaty

Powiązane dokumenty

[r]

Spektrum przestrzeni może być wykorzystane w określaniu pozycji konku- rencyjnej gminy (szersze badania mogą pozwolić gminie określić swoją pozycję na tle wybranej gminy lub

Zamawiający dopuszcza jako rozwiązanie równoważne do opisanego w PFU odprowadzenie flotatu rurociągiem pod dnem zbiornika przez przegub obrotowy w łożysku centralnym.. W

b) Termin wykonania zamówienia –termin liczony przez Zamawiającego do wymaganego terminu wykonania zamówienia. c) Wymagany termin wykonania zamówienia jest określony na

Na potrzeby postępowania o udzielenie zamówienia w oparciu o zapytanie ofertowe nr GCŚ.DO.344.4.1.2020 Świadczenie usług w zakresie przechowywania, wyszukiwania,

harmonogramu rzeczowo – finansowego. Powyższy zapis powoduje, że zagrożenie naliczenia kary umownej za przekroczenie jakiegokolwiek terminu z Harmonogramu jest duże. Ryzyko

Użytkownik, który poszukuje informacji na temat zarządzania przez jakość, korzysta- jący tylko z wyników wyszukiwarki Google, będzie miał znacznie zakrzywiony obraz idei

Zbiegło to się z opublikowaniem przez Google katalogu niedozwolonych działań, których złamanie prowadziło do spadku widoczności strony w wyszukiwarce... Techniki BHS to nie