cluster- projekt präsentiert von dominik henn & torben pastuch am seminar für...
TRANSCRIPT
![Page 1: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/1.jpg)
Cluster-Cluster-
Projekt
Präsentiert von Dominik Henn & Torben Pastucham Seminar für Computerlinguistik der Uni Heidelberg
Datum: 28.01.2002
![Page 2: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/2.jpg)
Was ist Cluster-X ?Was ist Cluster-X ?
ist eine Windows-Anwendung
Cluster-X...
fasst thematisch ähnliche Dokumente zu Clustern zusammen
verwendet hierzu den Oh!™ Algorithmus(Oh!™ = Orphan Hunting! & Topic Merging)
ermöglicht die Ausweitung einer bool´schen Suche
![Page 3: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/3.jpg)
EntwicklungEntwicklung
Cluster-X wurde in C++ unter MS-Windows entwickeltEs wurde Wert auf kurze Laufzeiten gelegt
Verwendete Bibliotheken:
- MFC für die GUI- selbst entwickelte Matrix- & Vektorklassen
![Page 4: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/4.jpg)
Die ArchitekturDie Architektur
Korpus IRPreProcess
DocTermMatrix
TermList
DocumentListIRCluster
Cluster
IRBoolSearch
SearchResults ClusterView
DisplayEngine
![Page 5: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/5.jpg)
Die TechnikDie Technik
Oh!™ basiert auf dem k-Means AlgorithmusDieser wird durch verschiedene Elemente erweitert
TopicMerging OrphanHunting
k-Means
Oh!™
![Page 6: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/6.jpg)
k-Meansk-Means
Erzeuge k ZV
Ordne DV zufälligden ZV zu
Berechne neue ZV
Ordne DV den jeweilsähnlichsten ZV zu
Neuzuordnung?Ja
Termination
Nein
ZV = Zentroidvektor
DV = Dokumentvektor
1
2 2
1 1
( , )
n
i ii
n n
i ii i
d cd c
sim d cd c
d c
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
1
n
ii
dc
n
FFFFFFFFFFFFFF
![Page 7: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/7.jpg)
Orphan HuntingOrphan Hunting
Topic MergingTopic Merging
Oh!™-AlgorithmusOh!™-AlgorithmusErzeuge n ZV
(n = Anz. der Dok.)
Ordne jedem ZV genaueinen DV zu
Berechne neue ZV
Ordne DV den jeweilsähnlichsten ZV zu
Neuzuordnung?Ja
TerminationNein
ZV mit nureinem zug. DV?
Ordne DV dem nächstähnlichen ZV zu
Lösche dennun leeren ZV
Übertrage DV inähnlichen ZV
Lösche den nunleeren ZV
Exisitieren2 ähnliche ZV?
Nein
Ja
Ja
Nein
Diese beiden Vorgänge werden nur ausgeführt, wenn eine
festgesetzte Ähnlichkeit
überschritten wird
![Page 8: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/8.jpg)
DatenstrukturenDatenstrukturen
Für Cluster-X wurden 3 angepasste Datentypen verwendet1) CVector<TYPE>
(Hilfsklasse für Operationen mit Vektoren)
2) CMatrix<TYPE>(Speicherung der Zentroiden)
3) CSparseDataMatrix<TYPE>(Speicherung der Dokument-Term-Matrix)
![Page 9: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/9.jpg)
SparseDataMatrixSparseDataMatrix
CSparseDataMatrix<TYPE> ist auf Speicherung von Matrizen mit überwiegend nicht verwendeten Elementen zugeschnitten (0-Werte)
Originalmatrix
0 0 0 0 0 0 2 0
3 1 0 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 4 0 0 0 0 0
1 7 0 2 0
2 1 2 3 1
1 4 0 1 0
1 3 0 4 0
SparseDataMatrix
Beispielersparniss:Dokument-Term-Matrix (Bibel-Korpus)Originalmatrix: >10.000 KByte SparseDataMatrix: 880 KByte
![Page 10: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/10.jpg)
Nun zur Praxis...Nun zur Praxis...
1) 1) Cluster-X starten
Ihre Optionen:Ihre Optionen:
2) 2) Zigarettenpause
![Page 11: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/11.jpg)
Probleme & ToDoProbleme & ToDo
Extrem hohe Speicherbelastung Temporäre Berechnung der ZV Latent Semantic Indexing (SVD)
Korpusabhängige Idealparameterevtl. mashine learning Methoden (user feedback)
Parameterabhängige Laufzeiten (worst case: O(n²))
Lösung N/A (algorithmusinhärent)
![Page 12: Cluster- Projekt Präsentiert von Dominik Henn & Torben Pastuch am Seminar für Computerlinguistik der Uni Heidelberg Datum: 28.01.2002](https://reader036.vdocuments.net/reader036/viewer/2022062512/55204d6249795902118b62ac/html5/thumbnails/12.jpg)
The End...The End...
Dozentin: Priv.-Doz. Dr. Karin Haenelt
Ort: Seminar für Computerlinguistik / Uni Heidelberg
Veranstaltung: Information Retrieval (WS2001/02)