Efficient Identification of Web Communities
Transcription
Efficient Identification of Web Communities
Bericht zum Seminar: Netzwerkanalyse (WS05/06) 22.02.2006 Thema: Efficient Identification of Web Communities Dozent: Prof. Dr. Ulrik Brandes Betreuer: Christian Pich Student: Saad Belbagri Matrikel Nummer: 01/527771 Inhaltsverzeichnis 1. 2. Einführung -------------------------------------------------------------- 4 Relevante Definitionen ------------------------------------------------- 6 2.1. Precision und Recall --------------------------------------------------- 6 2.2. Das Maximum-Flow und Min Cut ------------------------------------- 7 2.2.1. Das Maximum-Flow Problem ------------------------------------- 7 2.2.2. Max-Flow-Min-Cut Theorem -------------------------------------- 8 2.3. Expectation Maximization Algorithmus ------------------------------- 8 2.3.1. EM zur Verbesserung der Methode Approximate Communities - 9 3. Lösungsweg -----------------------------------------------------------11 3.1. Web Communities ----------------------------------------------------11 3.2. Übertragung der MaxFlow-MinCut auf WC --------------------------12 3.3. Das Verfahren --------------------------------------------------------13 3.3.1. Exact-Flow-Community ------------------------------------------13 3.3.2. Approximate-Flow-Community ----------------------------------14 3.3.3. Approximate Community mit EM Algorithmus ------------------16 3.3.4. Focused Crawler Algorithmus------------------------------------17 4. Experimentelle Ergebnisse --------------------------------------------18 4.1. Support Vector Machine Community-----------------------------18 4.2. The Internet Archive Community (IA) ---------------------------18 4.3. The Roland Rivest Community -----------------------------------19 5. Weitere Methoden -----------------------------------------------------19 6. Schlusswort------------------------------------------------------------21 Referenzen---------------------------------------------------------------22 2 Abbildungen: Abbildung 1 Milliarden von indexierten Textdokumenten: Dezember 1995 bis September 2003 Quelle: [SEW] ..................................................................... 4 Abbildung 2: Teil der Webgraphen, wobei Web Communities (in Kreisen) deutlich stärker untereinander verbunden sind.............................................. 6 Abbildung 3 Expectation Maximisation: Der E- und M-Schritt Wie aus der Grafik zu entnehmen ist, gibt es zwei entfernte Mengen und Datenpunkte im Raum, die man der zugehörigen Menge zuweisen möchte (Clustering). Mit dem E-Schritt werden die Erwartungswerte berechnet, diese werden in dem M-Schritt maximiert, um die Zugehörigkeit der Datenpunkte herauszufinden. ......................................... 10 Abbildung 4: Hier sieht man deutlich wie sich eine Webgemeinschaft sich vom Rest der Webgraphen trennen lässt Quelle: NEC Research Institute [NEC] ........................................................................................................... 11 Abbildung 5: Links wird die Quelle (grüner Knoten mit grünem Schatten) von der Senke (roter Knoten mit rotem Schatten) getrennt, somit repräsentiert der grüne Teilgraph eine Web Community, die sich vom Rest des Webgraphen trennen lässt. Quelle: NEC Research Institute [NEC] .............................................................................................................................. 12 Abbildung 6 Focused Community crawling, entstehenden Graphen Quelle: [FLG00].......................................................................................................................... 15 Abbildung 7 Lokalisieren eines minimalen Schnitts, auch wenn kein gutes Sink zur Verfügung steht (Graph Mitte ist unbekannt, ein virtueller Sink wird benutzt) Quelle: [FLG00] ................................................................... 16 Abbildung 8 Der Focused Crawler Algorithmus Quelle: [FLG00].................... 17 3 1. Einführung Das World Wide Web ist kein virtueller Ort, an dem unkontrolliertes Chaos herrscht. Es handelt sich eher um ein organisiertes, sogar selbstorganisierendes Medium, in dem Seiten, die zusammengehören, miteinander verlinkt sind. In den meisten Fällen sind diese auch thematisch verwandt. Diese Eigenschaft ist hier von großer Bedeutung. Das Medium Internet ist seit seiner Erfindung rasant gewachsen: bereits im Jahr 2000 waren 109 Webseiten von Suchmaschinen indexiert. Tagtäglich werden tausende neuer Seiten erstellt, die verschiedene Themen behandeln; es verschwinden aber auch existierende Webseiten. Dies geschieht aus verschiedenen Gründen wie z. B. bei temporären Webseiten oder solchen mit illegalen Inhalten, die den Kopierschutz verletzen oder zur Gewalt aufrufen. Abbildung 1 Milliarden von indexierten Textdokumenten: Dezember 1995 bis September 2003 Quelle: [SEW] Webseiten im Internet lassen sich nur durch Web-Suchmaschinen auffinden, die mit Hilfe von Spidern (Crawlern) operieren. Spider beginnen bei einem gegebenen Link und springen von einer Webseite zur nächsten bis alle erreichbaren Seiten indexiert sind. Bis 2002 deckte keine Web-Suchmaschine mehr als 16% des Webs ab. Die Vereinigung der 11 Hauptwebsuchmaschinen (Google, Yahoo, Lycos 4 etc.) deckt weniger als 50% des Webs ab, was auf das begrenzte, periodische Crawlen der Spider und auf die kurze Existenz mancher Webseiten zurückzuführen ist. Ein weiterer Grund für die geringe Erfassung des Webs besteht darin, dass auf die Inhalte bestimmter Webseiten nicht zugegriffen werden kann, da diese hinter dynamischen Inhalten (wie Java-, Php Code, Datenbanken etc.) versteckt sind. Diese Suchmaschinen liefern auch nicht immer die besten Ergebnisse, meistens geht die Suche auf Kosten der Precision (Genauigkeit) oder des Recalls (Vollständigkeit), was den Benutzer dazu zwingt, selber weiter die Ergebnisse zu filtern. Das kostet jedoch Zeit und Nerven, lenkt von der eigentlichen Recherche ab und führt zu dem Effekt des „Lost in Hyperspace“. In dem Paper vom Flake, Lawrence und Giles [FLG00] geht es nicht darum, nach einzelnen Webseiten zu suchen, sondern ein Bündel solcher Webseiten zu finden, die thematisch ähnlich sind, wobei nicht der Inhalt dieser Seiten in Betracht gezogen wird, sondern nur deren Linksstruktur. Dabei wird die am Anfang erwähnte Eigenschaft des WWW ausgenutzt: Seiten, die untereinander stark verlinkt und auch thematisch verwandt sind, gehören zur gleichen Webgemeinschaft (Web Community). Hier wird das Internet als Web-Graph betrachtet, bei dem die Webseiten die Knoten und die Hyperlinks die Kanten darstellen und Anfragen folgender Art erlaubt sind: Welche URLs zeigen auf eine bestimmte URL? Auf welche URLs zeigt eine bestimmte URL? Dabei ist die Web Community ein Teilgraph des Webgraphen, mit der speziellen Eigenschaft, dass weniger Kanten die Web Community verlassen als dass sie Mitglieder verbinden. Somit lässt sich das Auffinden einer Web Community im WWW auf ein Graphenproblem reduzieren. In diesem Paper wird eine gesuchte Webgemeinschaft folgendermaßen definiert: Eine Web Community (Web Gemeinschaft) besteht aus Mitgliedern, die mehr Links zu anderen Mitgliedern dieser Gemeinschaft haben als zu Nicht-Mitgliedern. 5 Abbildung 2: Teil der Webgraphen, wobei Web Communities (in Kreisen) deutlich stärker untereinander verbunden sind. Quelle: NEC Research Institute [NEC] In diesen Bericht wird also eine neue Methode vorgestellt, um solche Web Communities zu finden, sowie der entwickelte Such-Algorithmus und eine Auswahl an Ergebnissen bei dessen Einsatz. Vorher werden aber zunächst einige Definitionen, die für diesen Lösungseinsatz erforderlich sind, eingeführt. Abschließend werden noch einige andere Methoden zur Auffindung von Web Communities im WWW dargestellt. 2. Relevante Definitionen 2.1. Precision und Recall Im Information Retrieval sind Precision und Recall (Genauigkeit und Vollständigkeit) zwei Maßstäbe zur Beschreibung der Qualität eines von einer Suchmaschine gelieferten Suchergebnisses. Dabei ist Precision der Anteil hochrelevanter Suchergebnisse und gibt den Anteil der relevanten Dokumente unter den gefundenen Dokumenten an. 6 Formale Definition: Precision= |{relevante Dokumente} ∩{gefundene Dokumente}| |{gefundene Dokumente}| Recall ist der Anteil der gefundenen relevanten Dokumente an der Gesamtheit aller relevanten Dokumente (Optimal gleich 1). Formale Definition: Recall= |{relevante Dokumente} ∩{gefundene Dokumente}| |{relevante Dokumente}| 2.2. Das Maximum-Flow und Min Cut 2.2.1. Das Maximum-Flow Problem Das Maximum-Flow Problem beschäftigt sich mit der maximalen Menge, die von einer Quelle s (Source) zu einer Senke t (Target) gelangen kann. Dabei stellt man sich einen Postdienst vor, der Pakete von s nach t transportiert. Auf dem Weg nach t befinden sich Zwischenstationen, die die Pakete durchlaufen müssen. Alle diese Wege haben eine bestimmte Kapazität (es darf nur eine bestimmte Menge an Paketen transportiert werden). Dabei können weniger Pakete als die eigentliche Kapazität transportiert werden, diese darf jedoch nicht überschritten werden. Formale Definition: Ein Netzwerk N=(V, E, s, t, c) ist in der Graphentheorie ein gerichteter Graph ohne Mehrfachkanten mit zwei ausgezeichneten Knoten s (Quelle) und t (Senke) aus V und einer Kapazitätsfunktion c, die jeder Kante (x,y) aus E eine Kapazität c(x,y) aus dem Bereich der nicht negativen reellen Zahlen zuordnet. Ein s-t-Fluss ist eine Funktion f, die von den Kanten im Netzwerk N in die Menge der nicht negativen reellen Zahlen abbildet. Dabei müssen folgende Bedingungen erfüllt sein: 1. Kapazitätsbeschränkung: Der Fluss einer Kante ist maximal so groß wie die Kapazität auf der Kante erlaubt, d.h. es gilt: . 7 2. Flusserhaltung: Abgesehen von der Quelle s und der Senke t muss in jeden Knoten genau so viel hineinfließen wie herausfließen, d.h. es gilt: (N+: Menge der von s ausgehenden kanten -- N-: Menge der in t eingehenden kanten) ∀x ∈V /{s,t}: ∑ y∈N + f (( x, y)) =∑ y∈N − f (( x, y)) Ein Fluss F in einem Netzwerk ist genau dann ein Maximalfluss, wenn es bezüglich F keinen erhöhenden Weg gibt (Satz der Augmentation Path). 2.2.2. Max-Flow-Min-Cut Theorem Sei G=(V, E) ein gerichteter Graph mit Kostenfunktion c :E → ` Seien s, t ∈ V Quelle und Senke A, B ⊂ V wird Schnitt genannt, falls: • s ∈ A und t ∈ B • A ∩ B = ∅ und A ∪ B = V Die Kapazität vom Schnitt A, B ist: ∑e=(v, w)∈E,v∈A, w∈B c(e) Nach [FF56] ist der Wert der Minimum Cut (Minimaler s-t-Schnitt) in einem Netzwerk N gleich der Maximale Fluss. 2.3. Expectation Maximization Algorithmus Der EM-Algorithmus wird häufig zur Berechnung der Maximum-Likelihood Schätzung für Probleme bei fehlenden Daten/ latenten Variablen benutzt. Der EM Algorithmus besteht aus einem iterativen Wechselspiel von Klassifikation und Adaption. Gegeben: X: beobachtete Daten Y: unbeobachtete Daten Z=(X,Y): vollständige Daten Die gemeinsame Verteilung von Z gegeben θ lässt sich schreiben als: 8 p( z|θ ) = p( x, y|θ )= p( y| x,θ ) p( x|θ ) Die Likelihoodfunktion der vollständigen Daten ist: log L(θ | Z ) = log P(Z |θ ) = log P(( X ,Y )|θ ) = log P( X |θ ) + log P(Y | X ,θ ) P (Y | X ,θ ) : a posteriori- Verteilung der fehlenden Werte nach Beobachtung X. Problem: Vollständige Likelihood lässt sich nicht explizit angeben. Lösung: Der EM-Algorithmus löst das wie folgt: 1. E-Schritt (Expectation): Betrachte den bedingten Erwartungswert für die vollständigen Daten unter den beobachteten Daten X und einem Parameter θ i : Q(θ |θ i ) = E y| X ,θ i (log P( X ,Y |θ )| X ,θ i ) 2. M-Schritt (Maximisation): Maximiere Q( θ | θ i) bezüglich θ . Damit ergibt sich θ i+1 mit: θ i+1 = argmax Q(θ |θ i ) θ --> Iteriere E- und M-Schritt. 2.3.1. EM zur Verbesserung der Methode Approximate Communities Gehen wir von einer kleinen Anzahl an Seed-Seiten aus, gibt die Approximate Communities Methode nur eine Teilmenge einer Web 9 Community zurück. Das liegt daran, dass der Ausgangsgrad der SeedSeiten größer sein muss als der Schnittgröße. Um dieses Problem zu lösen, müssen wir neue Seed Seiten generieren. Dies lässt sich mithilfe des Expectation Maximization Algorithmus verwirklichen: ¾ Der E-Schritt erlaubt es dem Maximum Flow Algorithm, eine Untermenge der Gemeinschaft zu identifizieren. Es wird die beste für diese Gemeinschaft repräsentative Seite gesucht. ¾ Der M-Schritt übernimmt die beste, neue gefundene Seite als Seed-Seite. Von dieser neuen Seed-Seite ausgehend wird ein neuer Untergraph erstellt. Abbildung 3 Expectation Maximisation: Der E- und M-Schritt Wie aus der Grafik zu entnehmen ist, gibt es zwei entfernte Mengen und Datenpunkte im Raum, die man der zugehörigen Menge zuweisen möchte (Clustering). Mit dem E-Schritt werden die Erwartungswerte berechnet, diese werden in dem M-Schritt maximiert, um die Zugehörigkeit der Datenpunkte herauszufinden. Quelle: [WAEC05] 10 3. Lösungsweg 3.1. Web Communities Das Internet wird als Web-Graph betrachtet, bei dem die Webseiten die Knoten und die Hyperlinks die Kanten darstellen. Eine Web Community besteht in diesem Kontext aus Mitgliedern, die mehr Inbound (eingehende) und Outbound (ausgehende) Links zu anderen Mitgliedern dieser Gemeinschaft haben als zu Nicht-Mitgliedern. Formale Definition: Eine Community ist ein Knoten Untermenge C ⊂ V, so dass für alle Knoten v ∈ C; v hat mindestens so viele Kanten, die mit Knoten in C verbunden sind wie in (V-C). Bemerkung: Die ausgehenden Links lassen sich beim Herunterladen des Quelltexts einer Webseite finden, die eingehenden Links kann man mit Hilfe des Schlüsselworts Link: Adresse der Webseite bei vielen Suchmaschinen suchen. Somit ist eine Web-Gemeinschaft ein Teilgraph aus dem Web-Graphen, die eine spezielle Eigenschaft hat: 9 Dass weniger Kanten die Gemeinschaft verlassen als Mitglieder verbinden Abbildung 4: Hier sieht man deutlich wie sich eine Webgemeinschaft sich vom Rest der Webgraphen trennen lässt Quelle: NEC Research Institute [NEC] 11 3.2. Übertragung der MaxFlow-MinCut auf WC Das Finden einer Web Community lässt sich somit auf ein Graphenproblem reduzieren: • In der Web Community existiert ein Kern, der die Quelle s bildet • Außerhalb dieser befindet sich eine Senke t Der Maximum-Flow Algorithmus findet die Kanten, durch deren Beseitigung die Quelle (Seiten die zur Community gehören) von Senke (Seiten die nicht zur Community gehören) getrennt wird. Die Kanten sind nicht willkürlich gewählt, sondern handelt es sich um die Kanten, deren Kapazitätensumme das Minimum aller Kanten, die Quelle und Senke trennen, bildet: der Minimum Cut. Nach der Definition gibt es mehr Kanten innerhalb der Gemeinschaft als nach außen. Geht man davon aus, dass jede Kante die gleiche Kapazität hat, so werden genau diese ausgehenden Kanten entfernt, und man trennt die Gemeinschaft vom Rest der Web-Graphen. Abbildung 5: Links wird die Quelle (grüner Knoten mit grünem Schatten) von der Senke (roter Knoten mit rotem Schatten) getrennt, somit repräsentiert der grüne Teilgraph eine Web Community, die sich vom Rest des Webgraphen trennen lässt. Quelle: NEC Research Institute [NEC] 12 3.3. Das Verfahren Das hier vorgestellte Verfahren basiert auf dem Maximum-Flow Algorithmus. Es folgen zwei Varianten zur Identifizierung einer Web Community: Exact-Flow-Community Approximate-Flow-Community (mit EM Algorithm) Bei beiden Varianten wird ein Bündel von Seiten als Kern der Gemeinschaft verwendet (Quellseiten). Von ihnen ausgehend wird die Gemeinschaft ermittelt (der HITS Algorithmus wird hier benutzt, um Hubs und Authorities zu finden) wobei: Authorities: Seiten, die durch von viele Hubs verlinkt sind Hubs: Seiten, die auf viele Authorities verlinken Um diese Seiten zusammenzufassen, wird eine künstliche Quelle mit Kanten zu den Quellseiten erstellt. Es ist keine explizite Senke erforderlich, man verwendet eine künstliche (alle Kanten sind bidirektional). Damit die Quellseiten niemals getrennt werden können, ist eine Kapazität ∞ vorgesehen. 3.3.1. Exact-Flow-Community Für die Bestimmung einer idealen Gemeinschaft geht man davon aus, dass das gesamte WWW als ungerichteter Graph zur Berechnung vorliegt, wobei alle Kanten die gleiche Kapazität hätten (C=1). Definition 1: Eine Community ist ein Knoten Untermenge C ⊂ V, so dass für alle Knoten v ∈ C, v hat mindestens so viele Kanten die mit Knoten in C verbunden sind wie in (V-C). Definition 2: Sei s# Anzahl der Kanten zwischen S und allen Knoten in (C-S) und sei t# Anzahl Kanten zwischen t und alle Knoten in (V-C-t). Eine Community C, kann identifiziert werden indem der s-t Minimum Cut vom Graph G berechnet wird, mit s als Quelle und T als Senke, unter der Bedingung dass s# und t# größer als die Schnittmenge (Summer der Minimum Cut Kanten) sind. Nach diesem Schnitt gehören Knoten, die von s erreichbar sind, zur Community. 13 Die Bedingung auf s# und t# dient dazu, dass weder die Quelle noch der Senke vom Graphen getrennt werden. Es besteht die Möglichkeit, das zu vermeiden, indem man die Kanten nah der Quelle und Senke stärker gewichtet als der restliche Kanten. Dieses Verfahren liefert eine eindeutige Gemeinschaft und ist in der Theorie von keinem externen Faktor abhängig. Doch leider: Ist es kaum zu verwirklichen. Einen Graphen dieser Größe kann kein Computer speichern Die eingehenden und ausgehenden Links von Quellseiten müssen schnell abgefragt werden. Es ist ein enormer Aufwand, jede Seite, die im WWW existiert, zu finden: o Das WWW wächst ständig an o Es gibt auch Webseiten, die weder durch Suchmaschinen auffindbar sind, noch mit anderen Seiten verlinkt werden. 3.3.2. Approximate-Flow-Community G = (V,E) ist ein Untergraph des Web-Graphen, der bis zu einer bestimmten Tiefe vom S (Set der Quellknoten) gecrawlt wird. Dieses Verfahren beruht auf obigem, hängt aber zusätzlich von einem externen Faktor ab: der Suchmaschine. Eine angenäherte Community wird in mehreren Iterationen durch Aufnahme einiger nicht-Mitglieder (in jeder Iteration) in die Gemeinschaft erreicht. So wächst die Menge der Quellseiten (Seiten, die zur Community gehören) und die Größe der zu bearbeitenden Webgraphen. Es kommt zu einem Zeitpunkt, an dem die Verlinkungen innerhalb der Gemeinschaft derart dicht sind, dass keine externe Seite mehr ausreichend Links aufweist, um aufgenommen zu werden. 14 ∞ ∞ ∞ Virtuelle Quelle Seed Seiten Abstand 1 Abstand 2 Virtuelle Senke Abbildung 6 Focused Community crawling, entstehenden Graphen Quelle: [FLG00] Wie aus der Abbildung 6 zu entnehmen ist, beginnt das Crawlen bei den Quell-Seiten und findet alle Seiten, die einen Link (eingehende sowie ausgehende) davon entfernt sind. Sobald diese Seiten (Abstand 1) gefunden sind, wird ihr HTML-Code heruntergeladen und ihre ein- und ausgehenden Links gespeichert. Die Prozedur wiederholt sich, wobei die Knoten in Abstand 2 als nicht zur Community gehörend betrachtet werden, da sie sich in der Nähe der Senke befinden. Hier werden also die Quellseiten von den Senkeseiten getrennt (der Minimum Cut). Da keine echten Webseiten als Senke benutzt werden können (Graph Zentrum unbekannt), wird eine virtuelle Senke benutzt, welche garantiert, dass der angenäherte (approximated) Schnitt identisch zum idealen Schnitt ist, unter der Bedingung: 1<k<Nt/c Wobei: c: Kapazität der Minimum Cut k: Konstanter Faktor Nt: Anzahl der Knoten in der Community C und nicht in (V-C) 15 Virt. Senke Ausserhalb der Community Community Quelle Graph center Cut set Abbildung 7 Lokalisieren eines minimalen Schnitts, auch wenn kein gutes Sink zur Verfügung steht (Graph Mitte ist unbekannt, ein virtueller Sink wird benutzt) Quelle: [FLG00] Diese Gemeinschaft ist aufgrund des Einsatzes einer Suchmaschine (des externern Faktors) nicht eindeutig, was daran liegt, dass die meisten Suchmaschinen unterschiedliche Ergebnisse liefern, weil ihnen verschiedene Suchalgorithmen zu Grunde liegen. Ein anderes Problem besteht darin, dass die eingehenden und ausgehenden Links in kurzer Zeit abgefragt werden müssen, was eine große Menge von HTTP Requests zur Verarbeitung für die Suchmaschine ergibt. Viele Suchmaschinen wie Google sperren eine IP oder ein gesamtes Netzwerk für den Suchdienst, wenn eine hohe Anzahl an HTTP Requests gemacht wird. 3.3.3. Approximate Community mit EM Algorithmus Die vorgestellte Methode hat weniger Erfolg, wenn wenige Webseiten als Seed-Seiten benutzt werden, denn mit einer kleinen Anzahl davon kann nur ein Teil einer Webgemeinschaft gefunden werden, nicht die ganze gesuchte Web Community. Lösung: Eine Methode zur Identifizierung von neuen Seed-Seiten ist der Expectation Maximization Algorithmus, wobei der Max-flow-Min-cut Algorithmus den “Expectation”- Schritt durchführt, um eine Untermenge 16 der Community zu identifizieren. Die stärkste gefundene Webseite, je nach Anzahl der Links, wird als neue Seed-Seite benutzt bzw. zu den weiteren existierenden Seed-Seiten hinzugefügt. Der Focused Crawler führt dann den “Maximisation” Schritt durch, um ausgehend von der neu gefundenen Seed-Seite einen neuen Teilgraphen zu bilden, bis keine neuen mehr gefunden werden und die Quelle von der Senke getrennt wird bzw. die gefundene Community vom Rest des Webgraphen getrennt wird. 3.3.4. Focused Crawler Algorithmus Abbildung 8 Der Focused Crawler Algorithmus Quelle: [FLG00] 17 4. Experimentelle Ergebnisse Um die Maximum Flow Methode zum Auffinden von Web Communities zu testen, wurden drei verschiedene Webseiten-Bündel als Seed-Seiten benutzt: 4.1. Support Vector Machine Community Dieser Forschungsbereich ist 5 Jahren alt und wurde deshalb gewählt, weil er im Vergleich zu anderen Forschungsbereichen noch klein ist, eine beachtliche Anzahl renommierter Forscher vorweisen kann und nicht in bekannten Portalen gelistet ist. Alle Links, bei denen Quelle und Ziel in der gleichen Domäne liegen, wurden ignoriert. Diese Maßnahme dient dazu, die Wiederholung der internen Links zu vermeiden. Es wurden vier URLs als Seed-Seiten verwendet. Das Ergebnis des focused Crawlers sieht folgendermaßen aus: Graph Größe: 11000 Gefundene Gemeinschaftsgröße: 252 relevante Ergebnisse für SVM 4.2. The Internet Archive Community (IA) Die Gemeinschaft wurde gewählt, weil sie diverse Bereiche beinhaltet: Information Retrieval, Library Science, Archivierung, Visualisierung etc. Da diese Community so vielfältig ist, wurden 11 URLs als Seed-Seiten benutzt. Das Ergebnis des focused Crawlers sieht folgendermaßen aus: Graph Größe: 7000 Gefundene Gemeinschaftsgröße: 289 relevante Ergebnisse für IA Die Top 40 der relevanten Ergebnisse bestehen aus einem Gemisch aus Internet-Statistiken, digitalen Bibliotheken, Vermessungsgesellschaften, Archiv-Organisationen und weiteren, der IA nahe stehenden Webseiten. Diese beinhalten Links, Seminartermine und Anzeigen zur IA Community. Sogar die drei letzten Links, die am niedrigsten bewertet wurden, gehören der IA Community an. 18 4.3. The Roland Rivest Community Für diesen dritten Test wurde beschlossen, eine Gemeinschaft zu suchen, die von einer einzelnen Person kreiert wurde. Aus den verschiedenen Kandidaten wurde Ronald Rivest ausgewählt, da viele Webseiten auf sein Werk über Datenverschlüsselung „Introduction to Algorithms“ verweisen und er für dieses viel Anerkennung gefunden hat. Hier wurde eine einzige Seed-Seite benutzt, deshalb wurden bei der ersten Iteration des focused Crawlers eingehende sowie ausgehende Links im Betracht gezogen. Das Ergebnis des focused Crawlers: Graph Größe: 38000 Gefundene Gemeinschaftsgröße: 150 relevante Ergebnisse für RR. 5. Weitere Methoden HITS basierte Methoden (Hyperlink-Induced Topic Search) [Kle99] ¾ Steht für Hubs und Authorities, wobei diese Knoten sind, die mit vielen anderen Knoten verbunden sind. Das Konzept der Hubs und Authorities wurde 1999 von Jon Kleinberg vorgeschlagen. Es liefert, ähnlich wie der PageRank-Algorithmus, ein Konzept zur automatischen Beurteilung von Webseiten anhand ihrer Verlinkung, mit der sich ein Ranking-Verfahren angeben lässt. Strongly connected bipartite subgraphs als Webgemeinschaft [KRRT99] ¾ Die Kernidee ist, dass die Seiten, die thematisch ähnlich sind, meistens von anderen Seiten zusammen verwiesen werden oder beide auf die gleichen Seiten verweisen. Densely connected bipartite subgraphs als Webgemeinschaft [RK01] ¾ Diese Methode erlaubt es, den Kern einer Web Community zu identifizieren, indem die Dichte der Verlinkungen zwischen der rechten und linken Seite des Bipartiten Graphen berechnet wird. P-quasi Complete Graph [MIH99] ¾ Um Web Communities zu finden, werden P-quasi vollständige Untergraphen gesucht, wobei P die Verbundenheit darstellt. Es wird die Graphen-basierte Nachbar-Approximation benutzt, um diese letzte herauszufinden. 19 Page Rank [BMPW98] ¾ Der von Google benutzte Algorithmus basiert auf der Anzahl der Links, die auf eine Seite verweisen. Je mehr Links auf eine Seite verweisen, desto wichtiger ist sie. Je wichtiger wiederum die verweisenden Seiten sind, desto größer ist der Effekt. 20 6. Schlusswort Dieses Verfahren funktioniert in der Theorie, und wurde durch die Autoren Experimente für 3 Test Web Communities bewiesen. Mit den entsprechenden Quellseiten, war es möglich im Experiment, die Gesuchte Web Community zu finden und deren Mitglieder aufzulisten. Dieses Verfahren könnte zu verbesserten Suchmaschinen-Ergebnissen sowie zu einer verbesserten Filterung der Ergebnisse führen: Verbesserte Suchmaschinen: Wenn Suchmaschinen ihre Suche auf Web Communities beschränken könnten, wäre es möglich, eine höhere Trefferquote zu erreichen. Verbesserte Filterung: Wenn eine (inhaltlich) unerwünschte Community identifiziert werden könnte, wäre es einfach, mit dieser Methode entsprechende Seiten herauszufiltern. Da diese Methode nicht nur ausgehende sondern auch eingehende Links berücksichtigt, besteht die Gefahr, dass Spam-Seiten in die Community gelangen. Das liegt nicht daran, dass Mitglieder einer Community auf Spam-Seiten verweisen, sondern daran, dass Suchmaschinen die Ergebnisse einer solchen Seite wiedergeben könnten. Leider ist die Abhängigkeit von dem externen Faktor Suchmaschine bei dem Approximate Flow Algorithmus von Nachteil, denn verschiedene Suchmaschinen liefern unterschiedliche Suchergebnisse und somit unterschiedliche Communities. Ein anderer Nachteil dieser Methode liegt in den ausgewählten Quellseiten, was jedoch entscheidend für die Ergebnisse ist. Wählt man diese ungünstig, führt das dazu, dass der Fehler sich fortpflanzt und ein völlig falsches Ergebnis als eine Web Community geliefert wird. 21 Referenzen • [FLG00] Gary William Flake, Steve Lawrence und C. Lee Giles. Efficient Identification of Web Communities; Proceedings of the Sixth International Conference on Knowledge Discovery and Data Mining (ACM SIGKDD-2000) pages 150-160, Boston, MA, USA, August 20-23, 2000. 4, 14, 15, 16 • [FLG02] Gary William Flake, Steve Lawrence und C. Lee Giles, Frans M. Coetzee. Self-Organization and Identification of Web Communities, 2002. • [Gib98] David Gibson. Inferring Web communities from link topologies (Research report RJ. International Business Machines Corporation Research Division), IBM Research Division, 1998. • [ZYH06] Yanchun Zhang, Jeffrey Xu Yu und Jingyu Hou. Web Communities: Analysis and Construction, Springer Verlag, 1 edition, Januar, 2006. • [Kle99] J.M. Kleinberg. Authoritative Sources in a Hyperlinked Environment, Journal of the ACM, 604-632, 1999. 18 • [KRRT99] R. Kumar, P. Raghavan, S. Rajagopalan und A. Tomkins. Trawling the Web for emerging cyber-communities, Computer Networks, 31(11-16): 1481-1493, 1999. 18 • [RK01] P. K. Reddy und M. Kitsuregawa. Inferring Web communities through relaxed cocitation and dense bipartite graphs, In the proceedings of 2001 Data Engineering Workshop (DEWS'2001), Tokyo, März 8-10, 2001. 18 • [MIH99] H. Matsuda, T. Ishihara und A. Hashimoto. Classifiying molecular sequences using a linkage graph with their pairwise similarities, Theoretic Computer Science 210:305-325, Elsevier, 1999. 18 • [BMPW98] S. Brian, R. Motwani, L. Page und T. Winograd. What can you do with a web in your Pocket? Data Engineering Bulletin, 21(2):3747, 1998. 18 • [WAEC05] Yair Weiss, Edward H. Adelson, Ady Ecker und Max Chvalevsky. EM for Motion Segmentation, http://www.cs.toronto.edu/~adyecker/download/EM.ppt Stand: 22.02.2005. 9 • [NEC] http://www.nec-labs.com Stand: 22.02.05. 5, 10, 11 22 • [FF56] Lester Ford und Delber Fulkerson. Maximal flow through a network (context), 1956. 7 • [SEW] http://searchenginewatch.com Stand: 22.02.2006. 3 23