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