Facultatea de Electronic Telecomunicaii i Tehnologia Informaiei 2016

  • Slides: 18
Download presentation
Facultatea de Electronică, Telecomunicații și Tehnologia Informației 2016 Motoare de căutare Algoritmi Web Crawling

Facultatea de Electronică, Telecomunicații și Tehnologia Informației 2016 Motoare de căutare Algoritmi Web Crawling Mănăilă George, Master anul 2, IISC Profesor coordonator: Prof. Dr. Ing. Stăncescu Stefan

Web crawling (“motor de căutare”) Prin web crawling se transferă informațiile din paginile web

Web crawling (“motor de căutare”) Prin web crawling se transferă informațiile din paginile web în baza de date cu scopul de a le indexa după conținut. Obiectivul este de a salva cat mai rapid și eficient informațiile paginilor web accesate. În momentul în care un utilizator apelează la un motor de căutare pentru a căuta o informație scriind o anumită frază sau un cuvânt, motorul de căutare se va uita în această bază de date și, în funcție de anumite criterii de prioritate, va crea și afișa o listă de rezultate

Manuală Metode de indexare a datelor Full - text

Manuală Metode de indexare a datelor Full - text

Caracteristici Trebuie îndeplinite -Robustețea -Politica de funcționare -Distributivitate -Scalabilitate Ar trebui îndeplinite -Performanță și

Caracteristici Trebuie îndeplinite -Robustețea -Politica de funcționare -Distributivitate -Scalabilitate Ar trebui îndeplinite -Performanță și eficiență -Claritate -Prospețime -Extensibil

Operațiile unui Crawler Un web crawler este folosit în scopuri multiple: • descărca pagini

Operațiile unui Crawler Un web crawler este folosit în scopuri multiple: • descărca pagini web pentru indexare, validarea de pagini web, • analiza structurală, • vizualizare, • notificări, • replicare, • spam, • captarea de adrese email etc.

Cerințele unui web crawler • Descărcarea paginilor web. • Căutarea și identificarea tuturor hyperlink-urilor

Cerințele unui web crawler • Descărcarea paginilor web. • Căutarea și identificarea tuturor hyperlink-urilor din pagină. • Pentru fiecare link identificat, se va repeta procesul • • URL-ul de start este nodul rădăcină al arborelui. Copii acestuia sunt link-urile sale. Unii copii au la rândul lor alți copii, deci alte link-uri descendente. Copii care nu au nici un descendent se numesc copii marionetă

Tipuri de crawlere Crawler Based Directory Based Meta search Hybrid search Concept search

Tipuri de crawlere Crawler Based Directory Based Meta search Hybrid search Concept search

Tipuri de crawlere Crawler-Based: Bazate pe boot (spider), programe care rulează în buclă, descarcă,

Tipuri de crawlere Crawler-Based: Bazate pe boot (spider), programe care rulează în buclă, descarcă, indexează și stochează informațiile în baza de date. Ex: Google, Yahoo!. Directory Based: Ajutat de om pentru clasificarea datelor în directoare corespunzatoare categoriilor. Ex; Yahoo! Directory Meta search: Motoare de căutare “multi-thread”cu rol de agent intermediar pasând interogarea către alte motoare de căutare puternice apoi returnând direct rezultatul. Ex: Dogpile, Vivisimo. Hybrud search: Folosesc atât boot cât și directoare. Ex: MSN Search Concept search: Sistem de hint-uri, nu are nevoie de o căutare precisă. Ex: Excite, Essie, Compass.

Algoritmi web crawler Breadth First Search Depth First crawling Page Rank Online Page importance

Algoritmi web crawler Breadth First Search Depth First crawling Page Rank Online Page importance Crawling large sites first By the use of filter Best First search A* search

Breadth First Search Cea mai simplă metodă. Plecând de la nodul sursă (URL) parcurge

Breadth First Search Cea mai simplă metodă. Plecând de la nodul sursă (URL) parcurge nodurile de pe nivelul următor al arborelui (copii), apoi parcurge copiilor etc.

Depth First Crawling Algorithm Folositor pentru parcurgerea în adâncimea arborelui. Plecând de la nodul

Depth First Crawling Algorithm Folositor pentru parcurgerea în adâncimea arborelui. Plecând de la nodul sursă se vor explora copii începând cu cel din stânga și se va parcurge nivel după nivel, până la ultimul copil, apoi va reveni la ultimul nod nevizitat. Poate intra în buclă infinită.

Page Rank Algorithm Se determină rank-ul paginii pe baza numărului de back-links și citații

Page Rank Algorithm Se determină rank-ul paginii pe baza numărului de back-links și citații în alte pagini. Calculul se realizează după formula: PR(A) = (1 -d) + d (PR(T 1)/C(T 1) +. . . +PR(Tn)/C(Tn)), unde PR(A) este rankul website-ului, d este factorul de amortizare și T 1…Tn legăturile (links)

Online Page Importance Calculation Fiecare pagină web are o valoare unică numerică distribuită în

Online Page Importance Calculation Fiecare pagină web are o valoare unică numerică distribuită în mod egal pentru toate link-urile de ieșire. Inițial toate paginile au aceeași valoare 1/n. Crawler-ul va începe să se descarce pagini web cu valori mari în fiecare etapă. După fiecare descărcare valorile se vor distribui apoi se va relua procesul Dezavantajul acestei metode este că fiecare pagină web va fi descărcată de mai multe ori ceea ce face să crească timpul de execuție.

Crawling the large sites first În anul 2005 Ricardo Baeza Yates a constatat după

Crawling the large sites first În anul 2005 Ricardo Baeza Yates a constatat după execuția crawlerului peste aproximativ 100 milioane de pagini web că parcurgerea website-urilor mari este mai benefică față de parcurgerea unei pagini anume. Astfel se cautț website-urile mari deoarece pentru a se accesa paginile web în așteptare (pending). Se descoperă link-uri neaccesate.

By the use of filter Se folosește o abordare bazată pe filtru datelor căutate.

By the use of filter Se folosește o abordare bazată pe filtru datelor căutate. Filtrul redirecționează paginile web reînnoite către crawler Acesta descarcă toate paginile reînnoite de la ultima sa vizită.

A* Search Acest algoritm folosește căutarea Best Fit. Calculează relevanța fiecărui link și determină

A* Search Acest algoritm folosește căutarea Best Fit. Calculează relevanța fiecărui link și determină diferența între relevanța așteptată a paginii obiectiv și relevanța paginii web curente. Formula de calcul este: f(n) = g(n) + h(n), unde g(n) reprezintă costul de la nodul inițial la nodul n h(n) este un estimat euristic al costului necesar pentru a ajunge de la nodul n la nodul de referință (sau destinație).

Concluzii Acest referat prezintă câteva metode folosite de către motoarele de căutare pentru descărcarea

Concluzii Acest referat prezintă câteva metode folosite de către motoarele de căutare pentru descărcarea paginilor web din WWW. Toți algoritmii prezentați sunt eficienți în ceea ce privește căutarea paginilor web, cu mici avantaje și dezavantaje. Eficiența crawler-ului se determină în funcție de precizie și rata de achiziție. Precizie = găsite / (găsite+nefolositoare) Rata achiziție = găsite / (nr total documente)

Mulțumesc!

Mulțumesc!