Evaluation des Suffixtree-Document-Models

Größe: px
Ab Seite anzeigen:

Download "Evaluation des Suffixtree-Document-Models"

Transkript

1 Köln, den 19. Oktober 2015 Studiengang Informationsverarbeitung Sommersemester 2015 Sprachliche Informationsverarbeitung Hauptseminar: Systeme der maschinellen Sprachverarbeitung bei Prof. Dr. Jürgen Rolshoven Evaluation des Suffixtree-Document-Models als Repräsentationsmodell zur Textklassifikation vorgelegt von: Alena Tabea Geduldig

2 Inhaltsverzeichnis 1 Vektormodelle 1.1 Das Bag-of-Words-Model 1.2 Ziele und Umsetzung Das Suffixtree-Document-Model 2.1 Suffixbäume für Dokumente 2.2 Dokumentenähnlichkeit im Suffixtree-Document-Model 2.3 Zusammenfassung Evaluation von Vektormodellen zur Klassifikation von Stellenanzeigen 3.1 Ausgangsbasis und Aufbau des Experiments 3.2 Der Ukkonen-Algorithmus 3.3 Ergebnisse Fazit und Ausblick 20 5 Literaturverzeichnis 21

3 1 Vektormodelle Auf Grund der immensen und immer weiter zunehmenden Menge an online verfügbaren Texten wächst auch das Interesse daran, den Informationsgewinn aus diesen Texten zu automatisieren. Texte inhaltlich zu erfassen, Beziehungen zwischen Texten herzustellen und diese so aufzubereiten, dass ein schneller Zugriff auf gewünschte Informationen möglich ist, sind die Ziele von Text Mining und Information Retrieval Verfahren. Eine Herausforderung stellt hierbei die unstrukturierte Form natürlichsprachlicher Texte dar. Anders als die strukturierten Daten in einer Datenbank, die gezielt nach Informationen abgefragt werden können, stellen Texte unbeziehungsweise semistrukturierte Daten 1 dar. Um maschinell ausgewertet und inhaltlich interpretiert werden zu können, müssen Texte zunächst in ein strukturiertes Format übertragen werden, welches ein maschinelles Verständnis ihrer Bedeutung ermöglicht. Vektormodelle beschreiben eine Vorgehensweise, natürlichsprachlichen Text in numerische Vektoren zu überführen und liefern somit ein maschinell verarbeitbares Format für Textdaten. Ein Vektor besteht aus einer geordneten Liste von numerischen Werten, die auf einen festen Punkt innerhalb eines Vektorraums hinweisen. Jeder Wert gibt hierbei die Entfernung vom Koordinatenursprung auf einer der Dimensionsachsen an. Das Ziel von (Dokument-) Vektormodellen ist es, jedes Textdokument in einen eigenen Vektor zu überführen, der den Inhalt des Dokuments repräsentieren soll. Hierzu werden die Dokumente auf eine feste Anzahl von Merkmalen (sogenannten Features) reduziert. Assoziiert man jedes Merkmal mit einer Dimension im Vektorraum, können Dokumentvektoren als Listen von Attribut-Wert-Paaren interpretiert werden, dessen Dimensionseinträge Merkmalsausprägungen codieren. Durch ein Vektormodell wird festgelegt, welche Merkmale zur Repräsentation der Dokumente ausgewählt werden und wie diese aus dem Text extrahiert werden können. Eine Gewichtungsfunktion legt darüber hinaus die Berechnung der Merkmalswerte fest. Im Vordergrund steht dabei die Anforderung, dass inhaltliche oder semantische Beziehungen zwischen Dokumenten auch nach der Transformation in Vektoren erhalten bleiben, so dass die mathematische Ähnlichkeit zweier Vektoren mit der semantischen Ähnlichkeit ihrer Dokumente übersetzt werden kann. Mathematische Vergleichsmetriken, wie beispielsweise die Euklidische Distanz oder die Cosinus- Ähnlichkeit liefern somit ein maschinell berechenbares Maß für semantische Ähnlichkeit. (Zu Ähnlichkeitsmaßen für Vektoren siehe auch Feldman & Sanger 2007: S. 85.) Im Bereich des Text Mining kommen Dokumentvektoren zum Beispiel als Input für maschinell lernende Klassifikationsalgorithmen oder zum Clustern großer Textkorpora zum Einsatz. Im 1 Zu semistrukturierten Daten vgl. auch Abitebul et al

4 Vektorraum Retrieval werden Vergleichsmetriken unter anderem benutzt, um relevante Dokumente zu Anfragen, die als Query-Vektor formuliert sind, zu ermitteln. 1.1 Das Bag-of-Words-Model Das klassische und am weitesten verbreitete Modell zur Vektorrepräsentation von Textdokumenten ist das auf Worthäufigkeiten basierende Bag-of-Words-Model (BoWM). Textdokumente werden in diesem Modell durch die Menge ihrer Wörter definiert, die als voneinander unabhängige und eigenständige Merkmale einen Featureraum aufspannen. Um alle Dokumente eines Korpus in demselben Featureraum zu modellieren, werden alle Wörter des Korpus zu einem gemeinsamen Vokabular V zusammengefasst. Häufig wird hierbei auf sogenannte Stoppwörter verzichtet. Dies sind meist hochfrequente Funktionswörter wie beispielsweise Artikel oder Konjunktionen, die mitunter als nicht aufschlussreich für den Inhalt eines Textes angesehen werden. Darüber hinaus können die Wörter zuvor auf ihre Stammformen zurückgeführt werden, so dass beispielsweise den Wörtern Bücher und Buches das lexikalische Wort Buch zugeordnet wird. Dieses Verfahren nennt sich Stemming und kann beispielsweise mit Hilfe des Porter-Stemming-Algorithmus durchgeführt werden (vgl. Porter 1980). Beide Verfahren dienen der Reduzierung beziehungsweise dem Ausschluss nicht relevanter Merkmale und werden unter dem Begriff Feature Reduction zusammengefasst. Zur Bestimmung der Merkmalsgewichte, die im BoWM mit der Wortrelevanz für den Textinhalt übersetzt werden können, existieren unterschiedliche Verfahren. Die einfachste Methode ist die Verwendung binärer Merkmale. Hierbei enthält der Dokumentvektor in der mit einem Wort assoziierten Dimension der Wert 1, falls das Wort im Dokument enthalten ist, oder 0 falls es nicht enthalten ist. Komplexere Gewichtungsverfahren berücksichtigen auch die Häufigkeit der Wörter und ihre Verteilung im Korpus. Ein oft angewendetes Termgewichtungsmaß ist das tf-idf- Maß, welches die Häufigkeit eines Wortes im Dokument in Relation zur Gesamtverteilung im Korpus setzt. Die Berechnung des Wertes basiert auf zwei Annahmen: 1. Die Termfrequenz (tf) eines Wortes beschreibt die Anzahl seines Vorkommens innerhalb eines Dokuments. Je höher die Termfrequenz eines Wortes ist, desto mehr Aussagekraft besitzt es für den Inhalt des Dokuments. 2. Die Dokumentfrequenz (df) eines Wortes beschreibt die Anzahl der Dokumente im Korpus, in denen es mindestens einmal auftritt. Je niedriger die Dokumentfrequenz eines Wortes ist, desto besser beschreibt es das Dokument, das es enthält. 3

5 Basierend auf diesen Prämissen berechnet sich der tf-idf-wert eines Wortes t für ein Dokument d wie folgt:, Maxtf bezeichnet hierbei die Termfrequenz des im Dokument am stärksten vertretenen Wortes. d steht für die Anzahl aller Dokumente im Korpus. (Vgl. hierzu auch Heyer et al. 2008: S. 203 ff.) In Abbildung 1.1 ist die Vektorerstellung im BoWM grafisch dargestellt. Nach der Auswahl der relevanten Wörter wird das übrig gebliebene Vokabular in eine beliebige aber feste Reihenfolge gebracht, welche die Zuweisung der Wörter zu je einer Vektorraumdimension festlegt. Die Beliebigkeit der Wortreihenfolge macht deutlich, was für ein Dokumentbegriff vom BoWM impliziert wird und ihm gleichzeitig seinen Namen gibt: Dokumente werden als bags of words, also als Behälter von Wörtern aufgefasst, die ungeachtet ihrer Position im Dokument, d.h. ihres Kontexts, zusammengefasst werden. Abbildung 1.1: Vektorerstellung im Bag-of-Words-Model mit dem tf-idf-maß als Gewichtungsfunktion 4

6 1.2 Ziele und Umsetzung Die Aufhebung der Wortreihenfolge und der dadurch implizierte Dokumentbegriff gehören zu den Hauptkritikpunkten am BoWM. Die Problematik hinter der Auffassung von Dokumenten als ungeordnete bags of words soll zu Beginn dieser Arbeit verdeutlicht werden. Darauf aufbauend wird ein zum BoWM alternatives Modell zur Vektorerzeugung vorgestellt. Das Suffixtree- Document-Model (STDM) wurde 2007 von H. Chim und X. Deng entwickelt und kann als Antwort auf die Hauptkritik am klassischen BoWM verstanden werden (vgl. Chim & Deng 2007). In Kapitel 2 wird das Konzept dieses Modells im Einzelnen erläutert und seine Vorzüge gegenüber dem klassischen BoWM aufgezeigt. Kapitel 3 befasst sich mit der Anwendung und Implementierung des STDMs als Repräsentationsgrundlage zur automatischen Textklassifikation. Das bestehende Softwareframework JASC (= Job-Ad-Section-Classifier) 2, ein Evaluationstool für Textklassifikationstechniken, wird durch eine neue Komponente ergänzt, welche die Klassifikation auf Grundlage des STDM ermöglicht. Der hierfür verwendete Ukkonen- Algorithmus wird in Abschnitt 3.2 erläutert. Durch die Einbindung des STDM in das bestehende Framework JASC wird ein direkter Vergleich der beiden Vektormodelle in verschiedenen Klassifikationsszenarien ermöglicht. Es können verschiedene Experimente ausgeführt werden, die Aufschluss darüber geben sollen, ob das STDM auch in der Praxis durch bessere Klassifikationsergebnisse überzeugen kann. Darüber hinaus soll evaluiert werden, welcher Klassifikationsalgorithmus durch das STDM positiv beeinflusst wird und wie sich unterschiedliche Gewichtungsfunktionen auf das Modell übertragen lassen. 2 JASC entstand im Zuge eines Kooperationsprojekts des Bundesinstitut für Bildung (BIBB) und der sprachlichen Informationsverarbeitung der Universität zu Köln. Siehe auch Kapitel 3. 5

7 2 Das Suffixtree-Document-Model Obwohl das in Abschnitt 1.1 beschriebene BoWM eine weit verbreitete und für viele Anwendungen bewährte Methode zur Vektorrepräsentation ist, gibt es insbesondere einen Kritikpunkt an dem Modell, der den zu Grunde gelegten Dokumentbegriff betrifft. Die Auffassung eines Dokuments als bag of words reduziert es allein auf die Anzahl seiner Wörter unabhängig davon, in welcher Reihenfolge sie im Ursprungstext vorzufinden sind. Jegliche Informationen über die Zusammensetzung und somit der Syntax eines Dokuments gehen bei der Übertragung in Vektoren verloren. Die Problematik bei diesem Vorgehen wird deutlich an den folgenden Beispieldokumenten: (a) Peter fährt zum Golf mit dem Bus (b) Zum Bus fährt Peter mit dem Golf Da in beiden Sätzen dieselben Wörter mit derselben Häufigkeit auftreten, werden sie im BoWM auf identische Vektoren abgebildet und gelten damit auch als semantisch gleich. Tatsächlich bedeutet der erste Satz aber, dass Peter zum Golfen fährt und dafür den Bus benutzt während Peter im zweiten Satz ein VW-Auto fährt, um einen Bus zu erreichen. Diese semantischen Unterschiede ergeben sich aber aus der Anordnung der Wörter und gehen daher im BoWM verloren. Erst aus dem Wortkontext ergeben sich auch die unterschiedlichen Bedeutungen des Wortes Golf, die auf Grund ihrer Synonymität fälschlicherweise zu einem Merkmal zusammengefasst werden. Mit Rücksicht auf diesen Schwachpunkt am BoWM stellten H. Chim und X. Deng 2007 ein alternatives Vektormodell für Textdokumente vor. Das Suffixtree-Document-Model zeichnet sich dadurch aus, dass es nicht allein auf Worthäufigkeiten basiert, sondern insbesondere Informationen über die Reihenfolge der Wörter codiert. Das Modell hebt also genau den Hauptkritikpunkt am BoWM auf und entspricht damit eher dem klassischen Bedeutungsbegriff nach Gottlob Frege. 3 Anstelle von bags of words werden im STDM Dokumente als strukturierte Bäume (sog. Suffixtrees) aufgefasst, eine Datenstruktur für Strings, die im Folgenden erläutert wird. 3 Das Frege-Prinzip auch Kompositionalitätsprinzip besagt, dass sich die Bedeutung eines sprachlichen Ausdrucks aus den darin enthaltenen Wörtern genauso wie der Zusammensetzung dieser Wörter ergibt (vgl. Bußmann 2002: Kompositionalitätsprinzip). 6

8 2.1 Suffixbäume für Dokumente Ein Suffixtree ist eine Baumdatenstruktur, die sämtliche Suffixe eines Dokuments enthält. Unter dem i-ten Suffix eines Dokuments d={w 1, w 2,,w n } wird hierbei der Substring von d verstanden, der mit dem Wort w i beginnt und mit dem Wort w n endet. Ausgehend von einem Wurzelknoten repräsentiert jeder Pfad im Baum ein Suffix, dessen Kanten mit den entsprechenden Wörtern gelabelt sind. Außerdem wird ein zusätzliches Symbol ($) zur Markierung des Dokumentendes eingefügt, das folglich am Ende jedes Pfades (den Blättern des Baumes) steht. Mit einer naiven straight-forward -Methode kann der Aufbau eines Suffixbaums in quadratischer Laufzeit zur Anzahl der Wörter gelöst werden. 4 Beginnend beim kleinsten Suffix {w n } wird nacheinander jedes weitere Suffix in den Baum eingefügt. Um das i-te Suffix einzufügen, wird ausgehend vom Wurzelknoten nach einer Kante gesucht, die mit dem Wort w i beginnt. Existiert so eine Kante wird der entsprechende Pfad traversiert und dieselbe Überprüfung am Folgeknoten für das Wort w i+1 wiederholt. Wird ein Knoten erreicht, der keine passende Kante besitzt, wird eine neue Kante hinzugefügt und mit dem entsprechenden Wort gelabelt. Abbildung 2.1 zeigt den schrittweisen Aufbau eines Suffixtrees an dem Beispielsatz cat ate cheese. Abbildung 2.1: Aufbau eines Suffixtrees 4 Eine effizientere Lösung ist der nach seinem Erfinder benannte Ukkonen-Algorithmus. Siehe hierzu Kapitel 3.2 7

9 2.2 Dokumentenähnlichkeit im Suffixtree-Document-Model Basierend auf der oben beschriebenen Datenstruktur definieren Chim und Deng die Ähnlichkeit zweier Dokumente anhand der Übereinstimmungen ihrer Suffixtrees. Um diese zu ermitteln, werden sämtliche Dokumente des betrachteten Korpus in einen gemeinsamen Suffixbaum (generalized Suffixtree) überführt. Bereits beim Aufbau dieses alle Dokumente übergreifenden Suffixbaums wird in jedem Knoten gespeichert, welche Dokumente den Knoten mit welcher Häufigkeit traversiert haben. In Abbildung 2.2 ist der generalized Suffixtree für die beiden Dokumente cat ate cheese und mouse ate cheese dargestellt. Abbildung 2.2: Generalized Suffixtree der Dokumentecat ate cheese und mouse ate cheese. Jeder Knoten im generalized Suffixtree repräsentiert einen Teilstring des Korpus die Kantenlabels von der Wurzel bis zum entsprechend Knoten. Dokumente, die denselben Knoten traversiert haben, teilen dementsprechend auch den zugehörigen Teilstring miteinander. Zwei Dokumente können somit als umso ähnlicher bewertet werden, desto mehr Knoten sie gemeinsam traversiert haben. Diese Knoten, bzw. die dazugehörigen Teilstrings fungieren im STDM als Merkmale und werden, analog zum BoWM, mit jeweils einer Vektorraumdimension assoziiert. Chim und Deng verwenden nur die Knoten, die von mindestens zwei Dokumenten traversiert wurden. Sie repräsentieren die Menge aller überlappenden Teilstrings des Korpus. 8

10 Analog zum BoWM lassen sich die Konzepte zur Termgewichtung auch auf die Knotengewichtung im Suffixbaum übertragen. Entsprechend schlagen Chim und Deng das tf-idf- Maß vor. Die Termfrequenz (tf) wird hierzu durch die Knotenfrequenz (kf) ersetzt. Sie definiert sich durch die Häufigkeit mit der ein Dokument einen Knoten traversiert hat und somit durch die Häufigkeit des entsprechenden Teilstrings im Dokument. Analog entspricht die Dokumentfrequenz eines Knoten k der Anzahl der Dokumente, die k traversiert haben. Abbildung 2.3 veranschaulicht die Knotengewichtung im STDM. Abbildung 2.3.: Knotengewichtung im STDM. Dokument- und Knotenfrequenz werden in jedem Knoten des Generalized Suffixtrees gespeichert. 2.3 Zusammenfassung Anders als im BoWM fungieren im STDM nicht nur einzelne Wörter als Dokumentmerkmale, sondern auch Teilstrings, die mehrere Wörter umfassen. Dies hat den Vorteil, dass zum Vergleich von Dokumenten auch die Abfolge der Wörter berücksichtigt wird, und somit ein differenzierter Bedeutungsbegriff zu Grunde gelegt wird. Sätze wie Der Mann beißt den Hund und Der Hund beißt den Mann werden auf Grund ihrer verschiedenen Wortstellung nicht mehr als identisch bewertet. Dennoch wird ihre Ähnlichkeit durch die gemeinsamen Teilstrings (hier Wörter) ausgedrückt. Auch im Umgang mit Synonymen ist dieses Konzept vorteilhaft. Zwar werden Synonyme auch im STDM nicht explizit als solche erkannt, eine Differenzierung ergibt sich aber automatisch 9

11 durch ihre meist sehr verschiedenen Kontexte. Ähnlich verhält es sich auch mit Homonymen, dessen Ähnlichkeit durch ähnliche Wortfolgen im Kontext ausgedrückt wird. Die umfangreiche Differenzierung von Merkmalen erfordert allerdings auch einen höheren Implementierungsaufwand und durch die größere Zahl an Merkmalen auch einen höheren Speicherbedarf, was bei großen Korpora durchaus von Bedeutung sein kann. Das BoWM ist daher auf Grund seiner Einfachheit auch weiterhin ein bewährtes Verfahren und es ist zu testen, ob der Mehrwert des STDM das komplexere Repräsentationsmodell rechtfertigt. Im nachfolgenden Kapitel werden die beiden Vektormodelle als Repräsentationsgrundlage zur automatischen Textklassifikation evaluiert. 10

12 3 Evaluation von Vektormodellen zur Klassifikation von Stellenanzeigen Im Zuge eines Kooperationsprojekts vom Bundesinstitut für Berufsbildung (BIBB) und der Sprachlichen Informationsverarbeitung der Universität zu Köln wurde im vergangenen Jahr ein Softwareframework 5 (JASC) zur automatischen Klassifikation von Abschnitten aus Stellenanzeigen entwickelt (vgl. Hermes 2015). Das Framework ermöglicht es, verschiedene Klassifikationsalgorithmen und Verfahren zur Präprozessierung miteinander zu kombinieren und durch ein Kreuzvalidierungsverfahren gegeneinander zu evaluieren. Auf diese Weise können zahlreiche Experimente ausgeführt werden und die für diese Problemstellung geeignetsten Verfahren ermittelt werden. 3.1 Ausgangsbasis und Aufbau des Experiments Abbildung 3.1: Module des Textklassifikation-Frameworks JASC Das Framework lässt sich, wie in Abbildung 3.1 dargestellt, grob in vier Hauptmodule einteilen, die jeweils unterschiedlich konfiguriert werden können (für eine detaillierte Beschreibung siehe auch Hermes 2015 & Geduldig 2015). Das erste Modul Feature Selection ist für die Auswahl der Merkmale zuständig, anhand derer die Vektorrepräsentationen der einzelnen Textabschnitte erstellt werden. Zur Auswahl stehen bisher einzelne Wörter oder n-gramme über Wörter, die jeweils zusätzlich durch ein Stoppwortfilter- oder Stemmingverfahren reduziert werden können. Im zweiten Modul Feature Quantifying wird eine Gewichtungsfunktion ausgewählt, die die Berechnung der Merkmalswerte festlegt. Neben dem in Kapitel 1 vorgestellten tf-idf-maß können 5 Github-Repository: 11

13 die absolute Termfrequenz und die relative Termfrequenz (im Verhältnis zur Dokumentlänge) ausgewählt werden. Weiter kann der Loglikelihood-Quotient zur Gewichtung der Merkmale verwendet werden. Hierbei wird die Häufigkeit eines Merkmals im Dokument mit seiner Gesamthäufigkeit im Korpus verglichen. Im dritten Modul Classification wird schließlich der Algorithmus ausgewählt, der die eigentliche Klassifikation der Dokumentvektoren vornimmt. Hierzu zählen der Rocchio-Algorithmus (ein lineares Klassifikationsverfahren), ein statistischer Naive-Bayes-Klassifikator und ein k-nearest-neighbour-klassifikator. (Zu den einzelnen Klassifikationsverfahren siehe auch Manning et al ) Zudem wurde die Klassifikation mit Support Vector Machines hinzugefügt (vgl. Geduldig, 2015), so dass insgesamt fünf verschiedene Klassifikationsalgorithmen verwendet werden können. Im letzten Modul Evaluation kann anhand eines Kreuzvalidierungsverfahrens die zuvor ausgewählte Konfigurationskombination evaluiert werden. Über den Vergleich mit dem Gold-Standard der manuell vorgenommenen Vorauszeichnungen werden die gängigen Evaluationswerte Precision, Recall, Accuracy und F-Measure berechnet. (Zu den Evaluationswerten siehe auch Carstensen et al. 2010: S. 155.) Im Zuge der vorliegenden Hausarbeit wurde das Modul Feature Selection, welches für die Auswahl der zur Klassifikation herangezogenen Merkmale zuständig ist, durch eine neue Komponente, den SuffixtreeFeatureGenerator, erweitert. Die Komponente ermöglicht die Verwendung des STDM zur Repräsentation der Textdokumente. Hierfür wird aus sämtlichen zu klassifizierenden Textabschnitten ein Generalized Suffixtree erzeugt, aus dem die entsprechenden Knotenmerkmale, wie in Kapitel 2 erläutert, extrahiert werden können. Zum Aufbau des Generalized Suffixtrees wird der nach seinem Erfinder benannte Ukkonen-Algorithmus benutzt, der der im folgenden Abschnitt erläutert wird. 3.2 Der Ukkonen-Algorithmus Der Ukkonen-Algorithmus ist ein Verfahren zum Erzeugen eines Suffixtrees, das 1995 von dem Informatiker Esko Ukkonen vorgestellt wurde (vgl. Ukkonen 1995). Der Vorteil dieses Algorithmus gegenüber dem in Kapitel zwei erläuterten naiven Verfahren ist in erster Linie seine lineare Laufzeit. Hinzu kommt, dass der Eingabestring on-line von links nach rechts verarbeitet wird und somit auch noch während dem Aufbau um weiter Zeichen erweitert werden kann. (Vgl. zu den folgenden Erläuterungen auch Gusfield 1997: Kap. 6.1.) Der Ukkonen-Algorithmus baut auf sogenannten impliziten Suffixtrees, eine leicht abgewandelte und vereinfachte Form von Suffixtrees, auf. Diese Datenstruktur soll zunächst definiert werden: 12

14 Definition 3.1: Impliziter Suffixtree Ein impliziter Suffixtree für einen String S kann aus einem Suffixtree erzeugt werden, indem zunächst sämtliche das String-Ende markierenden Symbole ($) entfernt werden und anschließend alle nun Label-losen Kanten und alle (inneren) Knoten, die nicht mindestens zwei Kindknoten besitzen, entfernt werden. Die nachfolgende Abbildung zeigt den Suffixtree und daraus abgeleiteten impliziten Suffixtree für den String abcba. Suffixtree implicit Suffixtree Abbildung 2.4: Suffixtree und impliziter Suffixtree des Strings abcba Die Abbildung veranschaulicht, dass durch das Überführen in den impliziten Suffixtree ein Informationsverlust stattfindet. Nicht jedes Suffix des Eingabestrings endet in einem Blatt und kann somit explizit identifiziert werden. Dennoch ist jedes Suffix im impliziten Suffixbaum enthalten, durch die fehlenden terminalen Symbole aber nicht mehr eindeutig gekennzeichnet. Konzeptuell kann der Ukkonen-Algorithmus beschrieben werden als ein naives und simples Verfahren mit einer Laufzeit von O(n 3 ). Durch einige Implementierungstricks lässt sich die 13

15 Laufzeit aber nachträglich verbessern, so dass die lineare Worst-Case-Laufzeit O(n) erreicht wird. Der naive Algorithmus zum Aufbau des impliziten Suffixtrees ist nachfolgend skizziert. Sukzessive wird für jedes Präfix des Eingabestrings S[1, i] ein impliziter Suffixtree konstruiert. Beginnend beim kleinsten Präfix S[1] wird der implizite Suffixtree (IS 1 ) in jedem Iterationsschritt zum impliziten Suffixtree des nächstgrößeren Präfix IS i+1 erweitert bis schließlich ein impliziter Suffixtree des gesamten Eingabestrings erstellt wurde. Dieser wird anschließend in einen richtigen Suffixbaum überführt. Naiver Aufbau des impliziten Suffixtrees Konstuiere IS 1 Fori = 1 to m-1 erweitereis i zu IS i+1 for j = 1 to i+1 finde das Ende des Pfades S[j..i] erweitere den Pfad um S[i+1] end end Bei der Erweiterung des Pfades S[i j] um das Zeichen S[j+1] können drei Fälle auftreten. Die folgenden Regeln definieren, wie die Erweiterung in jedem dieser Fälle zu lösen ist. Regel1 (Der gesuchte Pfad (S[j,..,i]) endet in einem Blatt): Das neue Zeichen (S[i+1])wird ans Ende des entsprechenden Kantenlabels angehängt. Regel 2 (Der gesuchte Pfad befindet sich bereits im Baum, endet aber nicht in einem Blatt, sondern wird durch mindestens ein weiteres Zeichen, das nicht S[i+1] ist, fortgeführt): Am Ende des gesuchten Pfades wird eine neue Kante eingefügt, die mit dem Zeichen S[i+1] gelabelt wird. Regel 3 (Im Baum befindet sich bereits der Pfad S[j, i+1]) In diesem Fall ist keine Erweiterung mehr notwendig. In Abbildung 3.2 ist der Aufbau des impliziten Suffixtree für den Eingabestring abcba skizziert. 14

16 Abbildung 3.2: Sukzessiver Aufbau des impliziten Suffixtrees für den Eingabestring abcba Verbesserung der Laufzeit Der erste Schlüssel zur Verbesserung der Laufzeit des oben skizzierten Algorithmus liegt darin, die Enden der Pfade, an die ein neues Zeichen angefügt werden muss, schnell zu finden. Müsste in jedem Iterationsschritt der gesuchte Pfad von der Wurzel ausgehend gesucht werden, würde jede Erweiterung im Worst-Case die Traversierung des vollständigen Baumes erfordern. Durch die Einführung sogenannter Suffix-Links, lässt sich die Suche nach der richtigen Position im Suffixbaum jedoch beschleunigen. 15

17 Definition 3.2: Suffix-Links Sei xα ein String, wobei x ein einzelnes Zeichen und α einen (möglicherweise leeren) Substring bezeichnet. Sei v ein interner Knoten mit dem Kantenlabel xα und s(v) ein weiterer Knoten mit dem Kantenlabel α. Dann ist ein Suffix-Link ein Zeiger vom Knoten v auf den Knoten s(v) Unter Berücksichtigung des oben skizzierten Algorithmus kann man feststellen, dass jeder innerer Knoten (mit Ausnahme des zuletzt eingefügten Knotens) im impliziten Suffixtree einen Suffix-Link besitzt. (Der dazugehörige Teilstring wurde jeweils im vorangegangenen Erweiterungsschritt gebildet.) Diese Suffix-Links sind ein erster Schritt zur Beschleunigung des naiven Algorithmus. Bei der Suche des Pfad-Endes, an das ein neues Zeichen eingefügt werden soll, muss dank der eingeführten Suffix-Links nicht mehr in jedem Schritt bei der Wurzel begonnen werden. Stattdessen wird beim ersten Knoten oberhalb des zuletzt eingefügten Suffixes begonnen. Dieser ist entweder die Wurzel, oder ein interner Knoten dessen Suffix-Link auf den Knoten zeigt, an dem die Suche fortgesetzt werden muss. Das Folgen der Suffix-Links stellt zwar zunächst eine Verbesserung dar, im Worst-Case (nämlich dann, wenn ein Baum keine inneren Knoten besitzt), wird die Laufzeit des Algorithmus aber dennoch nicht verbessert. Zum Erreichen der Linearen Laufzeit O(n) sind noch drei weitere Tricks notwendig: 1. Der Skip/Count-Trick Ist man einem Suffix-Link gefolgt, muss von dort aus nach dem Ende der Zeichenkette S[j,..,i] gesucht werden, an die das neue Zeichen S[i+1] angehängt werden muss. Findet man eine Kante, die mit dem richtigen Zeichen beginnt, wird zunächst die Länge dieser Kante überprüft. Ist sie kleiner als die Länge der gesuchten Kante, kann sie als Kandidat ausgeschlossen werden, ohne traversiert werden zu müssen. 2. Abbruch bei Regel 3 Sobald in einer Phase einmal Regel 3 angewendet wurde, wird sie auch in allen weiteren Erweiterungsschritten dieser Phase Anwendung finden, denn wenn S[j,,i] im Baum enthalten ist, ist automatisch auch S[j+1,, i] im Baum. Die Phase kann somit vorzeitig beendet werden. 3. Verwendung eines globalen Index Zu diesem Trick führt die Beobachtung, dass Blätterknoten immer Blätterknoten bleiben und niemals eine Kante an ein Blatt angefügt wird. Somit kann an einem Blatt nur Regel 1 16

18 zur Anwendung kommen, das heißt ein zusätzliches Zeichen angefügt werden. Anstatt dieses Zeichen in jeder Phase separat hinzuzufügen, wird ein globaler Index eingeführt, der die Position dieses Zeichens im gesamten String S angibt. Dieser muss lediglich in jeder Phase um 1 erhöht werden, was automatisch und in konstanter Zeit ausgeführt werden kann. Mit Hilfe von Suffix-Links und der Anwendung der darauf aufbauenden Tricks, kann der implizite Suffixtree eines Strings S in linearer Zeit zur Länge S erzeugt werden. Um aus dem impliziten Suffixtree einen richtigen Suffixtree zu erzeugen, muss nun nur noch eine letzte Phase des Algorithmus für die Zeichenkette S$ ausgeführt werden. Abbildung 3. 3 veranschaulicht diesen Vorgang. Abbildung 3.3: Erweiterung des impliziten Suffixtrees zu einem Suffixtrees 3.3 Ergebnisse Nach der Integration des STDM in das Klassifikationsframework JASC wurden Experimente mit sämtlichen Konfigurationsmöglichkeiten in den unterschiedlichen Modulen durchgeführt. Hierfür wurde jeweils das STDM als Repräsentationsmodell verwendet und das BoWM, inklusive verschiedener Varianten mit N-Grammen statt Wörtern. In der nachfolgenden Tabelle sind die besten F-Score Werte, einer Kombination aus Precision und Recall, des STDM aufgelistet. Als Vergleich ist diesen jeweils das äquivalente Ergebnis des BoWM gegenübergestellt. 17

19 Classifier Quantifier Feature- Reduction n-grams F-Score STDM F-Score BoWM KNN (k=4) loglikelihood tf-idf stemming 2-grams 2-3-grams 2-grams 0, KNN (k=5) loglikelihood tf-idf stemming 2-grams 0, SVM tf-idf loglikelihood 3-grams 0, Rocchio loglikelihood _ 2-grams 0, Bayes - _ 3-grams 0, Tabelle 3.1: Die besten F-Score Ergebnisse im Suffixtree-Document-Model Der beste F-Score, der mit dem STDM als Repräsentationsgrundlage erzielt werden konnte beträgt 0,9526. Als Klassifikator wurde hierbei ein k-nearest-neighbour Verfahren verwendet, das die vier nächsten Nachbarn im Trainingsdatensatz zur Klassifikationsentscheidung verwendet. Als Knotengewichte wurde das Loglikelihood-Maß verwendet und zusätzlich wurde vor der Suffixbaumerstellung ein Stemming angewendet. Unter denselben Voraussetzungen erzielte das BoWM einen F-Score von 0,8946. Ein ähnlich gutes Ergebnis konnte auch mit Support Vector Machines als Klassifikationsverfahren erzielt werden (0,9318). Das entsprechende Experiment mit dem BoWM erreicht ebenfalls einen F-Score Wert von über 90 % (0,9015). Auffällig ist hingegen der Vergleich der beiden Vektormodelle bei der Verwendung des Rocchio-Klassifikators. Während im STDM ein F-Score von 0,9166 erzielt wurde, liegt dieser bei äquivalenter Konfiguration im BoWM bei lediglich 0,5559. Ähnlich schlechte Ergebnisse wurden, unabhängig von der Auswahl des Vektormodells, mit dem Naive-Bayes-Klassifikator erzielt. (0,6625 im STDM und 0,6527 im BoWM) Tabelle 3.2 zeigt die besten Klassifikationsergebnisse mit dem BoWM. Diesen gegenübergestellt sind die äquivalenten Ergebnisse unter Verwendung des STDM. Das beste Ergebnis wird auch im BoWM mit Hilfe des k-nearest-neighbour Verfahrens erreicht. Es liegt mit einem F-Score von 0,9409 nur knapp unter dem besten STDM-Ergebnis. Unter denselben Voraussetzungen schneidet dieses jedoch nach wie vor minimal besser ab. (0,9462). Auch bei Verwendung der 18

20 anderen Klassifikatoren liegt der F-Score bei Verwendung des STDM durchgehend knapp über dem des BOWM. Classifier Quantifier Feature- Reduction n-grams F-Score BoWM F-Score STDM KNN (k=4) loglikelihood _ stemming _ 3-grams 2-grams 0,9409 0,9402 0,9397 0,9462 0,9487 0,9475 KNN (k=6) logliklihood _ 2-3-grams 0,9383 0,9455 SVM loglikelihood _ 3-grams 0,9098 0,9318 Rocchio loglikelihhod _ words 0,8814 0,8941 Bayes - _ 3-grams 0,6527 0,6625 Tabelle 3.2: Die besten F-Score Ergebnisse im Bag-of-Words-Model Zu erwähnen ist, dass das von Chim und Deng beschriebene Verfahren zur Merkmalsauswahl leicht abgeändert wurde. Statt nur die Knoten als Merkmale zu verwenden, die von mindestens zwei unterschiedlichen Dokumenten traversiert wurden, wurden in diesem Experiment sämtliche Knoten zur Vektorerstellung herangezogen. In vorgeschalteten Experimenten hat sich dieses Vorgehen als effektiver herausgestellt. Dies hat jedoch den Nachteil, dass die Anzahl der Merkmale und somit auch der Speicherbedarf gestiegen sind. 19

21 4 Fazit und Ausblick Das Ziel dieser Arbeit war es, das Suffixtree-Document-Model als eine Alternative zur klassischen Vektorerstellung mit dem Bag-of-Words-Model vorzustellen. Hierzu wurden zunächst die Schwächen des klassischen BoWM aufgezeigt und anschließend die Vorzüge des STDM erläutert. Anhand eines direkten Vergleichs in einem konkreten und typischen Anwendungsfall konnten die beiden Vektormodelle anschließend gegeneinander evaluiert werden. Durch die Integration des STDM in das Klassifikationsframework JASC konnten zahlreiche Experimente ausgeführt werden, die einen direkten Vergleich der Vektormodelle in verschiedenen Klassifikationsszenarien ermöglichen. Die Experimente haben gezeigt, dass unter Verwendung des STDM als Repräsentationsgrundlage das beste Ergebnis erzielt wurde. Mit dem k-nearest-neighbour-verfahren wurde ein F-Score von 0,9526 erreicht, welcher deutlich über dem Vergleichswert (0,8946) mit dem BoWM liegt. Doch auch mit dem BoWM konnten bei anderer Konfiguration ähnlich gute Ergebnisse erzielt werden. Dennoch lag der entsprechende Vergleichswert beim STDM durchgängig etwas über dem besten BoWM-Wert. Abschließend kann also festgestellt werden, dass die Verwendung des STDM tatsächlich einen positiven Einfluss auf die Qualität der Klassifikationsergebnisse hat. In diesem Anwendungsfall, der Klassifikation von Textabschnitten aus Stellenanzeigen, ist der Gewinn jedoch nur sehr gering und das BoWM eine bereits sehr gut funktionierende Methode zur Vektorerstellung. Möglicherweise stellen Stellenanzeigen nicht die optimale Textsorte zur Klassifikation mit dem STDM dar. Die zu klassifizierenden Textabschnitte sind sehr kurz und bestehen oft nur aus einem Satz. Ein großer Teil besteht zudem häufig nur aus Stichpunkten und unvollständigen Sätzen. So werden die vom Bewerber geforderten Qualifikationen, oder die Beschreibung von Tätigkeiten oft in Form von Listen aufgezählt, die nur einzelne Stichwörter (z.b. Englischkenntnisse oder Flexibilität) umfassen. In diesem Fall ist also ohnehin nur sehr wenig Syntaxinformation im Text enthalten, die von einer Repräsentation als Suffixtree profitieren könnte. In Zukunft wäre es also interessant ähnliche Experimente, wie die im Rahmen dieser Arbeit durchgeführten, auf anderen Textdaten zu erproben. Dies ist mit dem Framework JASC nun, dank des universellen SuffixtreeFeatureGenerator möglich. Die klassifizierten Abschnitte der Stellenanzeigen bilden eine gute Grundlage zur automatischen Informationsextraktion. Durch die Klassifikation in inhaltsmotivierte Kategorien ist der Suchraum für bestimmte Informationen erheblich reduziert. Dies erleichtert zum Beispiel die Extraktion von Bewerberkompetenzen, was auch das nächste Ziel des Kooperationsprojekts mit dem Bundesinstitut für Berufsbildung darstellt. 20

22 5 Literaturverzeichnis ABITEBOUL, S. & BUNEMAN, P. & SUCIU, D. (2000) Data on the Web - From Relations to Semistructured Data and XML. Morgan Kaufman, San Francisco. BUSSMANN, H. (2002) Kompositionalitätsprinzip. In: Lexikon der Sprachwissenschaft, Kröner, Stuttgart. CARSTENSEN, K.-U. et al. (Hrsg.) (2004) Computerlinguistik und Sprachtechnologie. Eine Einführung. Elsevier, München. CHIM, H. & DENG, X. (2007) A new suffix tree similarity measure for document clustering. In: Proceedings of the 16th international conference on World Wide Web, S FELDMAN, R. & SANGER, J. (2007) The Text Mining Handbook. Advanced Approaches in Analyzing Unstructured Data. Cambridge University Press, New York. GEDULDIG, A. (2015) Textklassifikation mit Support Vector Machines. zuletzt aufgerufen: GUSFIELD, D. (1997) Algorithms on Strings, Trees and Sequences. Computer Science and Computational Biology. Cambridge University Press, New York. HERMES, J. (2015) Text Mining auf Stellenanzeigen. Erscheint in: Wissenschaftliche Diskussionspapiere, Bundesinstitut für Berufsbildung. HEYER, G. & QUASTHOFF, U. & WITTIG, T. (2008) Text Mining: Wissensrohstoff Text. Konzepte, Algorithmen, Ergebnisse. W3L, Herdecke, Bochum. MANNING, C. D. & RAGHAVAN, P. & SCHÜTZE, H. (2008) Introduction to Information Retrieval. Cambridge University Press, New York. PORTER, M.F. (1980) An Algorithm for suffix stripping. In: Electronic Library & Information Systems, Vol. 40, No. 3. UKKONEN, E. (1995) On-line construction of suffix trees. In: Algorithmica, Vol. 14, No

Vektormodelle. Universität zu Köln HS: Systeme der maschinellen Sprachverarbeitung Prof. Dr. J. Rolshoven Referentin: Alena Geduldig

Vektormodelle. Universität zu Köln HS: Systeme der maschinellen Sprachverarbeitung Prof. Dr. J. Rolshoven Referentin: Alena Geduldig Vektormodelle Universität zu Köln HS: Systeme der maschinellen Sprachverarbeitung Prof. Dr. J. Rolshoven Referentin: Alena Geduldig Gliederung Vektormodelle Vector-Space-Model Suffix Tree Document Model

Mehr

Text-Mining: Einführung

Text-Mining: Einführung Text-Mining: Einführung Claes Neuefeind Fabian Steeg 22. April 2010 Organisatorisches Was ist Text-Mining? Definitionen Anwendungsbeispiele Textuelle Daten Aufgaben u. Teilbereiche Literatur Kontakt Sprechstunde:

Mehr

Textklassifikation mit Support Vector Machines

Textklassifikation mit Support Vector Machines Köln, den 25. April 2015 Studiengang Informationsverarbeitung Wintersemester 2014/2015 Sprachliche Informationsverarbeitung Hauptseminar: Linguistic Software Engineering bei Prof. Dr. Jürgen Rolshoven

Mehr

Information Retrieval,

Information Retrieval, Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Information Retrieval, Vektorraummodell Tobias Scheffer Uwe Dick Peter Haider Paul Prasse Information Retrieval Konstruktion von

Mehr

HS Information Retrieval

HS Information Retrieval HS Information Retrieval Vergleichende Implementierung der grundlegenden IR-Modelle für eine Desktop-Suche Inhalt 1. Überblick 2. Recap: Modelle 3. Implementierung 4. Demo 5. Evaluation Überblick Ziele:

Mehr

Dynamisches Huffman-Verfahren

Dynamisches Huffman-Verfahren Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über

Mehr

Welche Textklassifikationen gibt es und was sind ihre spezifischen Merkmale?

Welche Textklassifikationen gibt es und was sind ihre spezifischen Merkmale? Text Welche Textklassifikationen gibt es und was sind ihre spezifischen Merkmale? Textklassifikationen Natürliche bzw. unstrukturierte Texte Normale Texte ohne besondere Merkmale und Struktur Semistrukturierte

Mehr

EXTRAKTION UND KLASSIFIKATION VON BEWERTETEN PRODUKTFEATURES AUF WEBSEITEN

EXTRAKTION UND KLASSIFIKATION VON BEWERTETEN PRODUKTFEATURES AUF WEBSEITEN EXTRAKTION UND KLASSIFIKATION VON BEWERTETEN PRODUKTFEATURES AUF WEBSEITEN T-SYSTEMS MULTIMEDIA SOLUTIONS GMBH, 16. FEBRUAR 2012 1. Schlüsselworte Semantic Web, Opinion Mining, Sentiment Analysis, Stimmungsanalyse,

Mehr

Kapitel 12: Schnelles Bestimmen der Frequent Itemsets

Kapitel 12: Schnelles Bestimmen der Frequent Itemsets Einleitung In welchen Situationen ist Apriori teuer, und warum? Kapitel 12: Schnelles Bestimmen der Frequent Itemsets Data Warehousing und Mining 1 Data Warehousing und Mining 2 Schnelles Identifizieren

Mehr

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme Universität Hamburg Fachbereich Mathematik Seminar: Proseminar Graphentheorie Dozentin: Haibo Ruan Sommersemester 2011 Ausarbeitung zum Modulabschluss Graphentheorie spannende Bäume, bewertete Graphen,

Mehr

2. Datenvorverarbeitung

2. Datenvorverarbeitung Kurzreferat Das Ziel beim Clustering ist es möglichst gleich Datensätze zu finden und diese in Gruppen, sogenannte Cluster zu untergliedern. In dieser Dokumentation werden die Methoden k-means und Fuzzy

Mehr

Clusteranalyse von Nachrichtenartikeln

Clusteranalyse von Nachrichtenartikeln Köln, den 7. Oktober 2011 Studiengang Informationsverarbeitung Sommersemester 2011 Sprachliche Informationsverarbeitung Prose i ar: Co puterli guistik II bei Jürgen Hermes M.A. Clusteranalyse von Nachrichtenartikeln

Mehr

Textmining Klassifikation von Texten Teil 2: Im Vektorraummodell

Textmining Klassifikation von Texten Teil 2: Im Vektorraummodell Textmining Klassifikation von Texten Teil 2: Im Vektorraummodell Dept. Informatik 8 (Künstliche Intelligenz) Friedrich-Alexander-Universität Erlangen-Nürnberg (Informatik 8) Klassifikation von Texten Teil

Mehr

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke Vorlesungsplan 17.10. Einleitung 24.10. Ein- und Ausgabe 31.10. Reformationstag, Einfache Regeln 7.11. Naïve Bayes, Entscheidungsbäume 14.11. Entscheidungsregeln, Assoziationsregeln 21.11. Lineare Modelle,

Mehr

Einleitung. Komplexe Anfragen. Suche ist teuer. VA-File Verfeinerungen. A0-Algo. GeVAS. Schluß. Folie 2. Einleitung. Suche ist teuer.

Einleitung. Komplexe Anfragen. Suche ist teuer. VA-File Verfeinerungen. A0-Algo. GeVAS. Schluß. Folie 2. Einleitung. Suche ist teuer. Anwendung Input: Query-Bild, Ergebnis: Menge ähnlicher Bilder. Kapitel 8: Ähnlichkeitsanfragen und ihre effiziente Evaluierung Wie zu finden? Corbis, NASA: EOS Bilddatenbank Folie Folie 2 Ähnlichkeitssuche

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Binärbaum Suchbaum Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 356 Datenstruktur Binärbaum Strukturrepräsentation des mathematischen Konzepts Binärbaum

Mehr

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität Datenstrukturen und Algorithmen Christian Sohler FG Algorithmen & Komplexität 1 Clustering: Partitioniere Objektmenge in Gruppen(Cluster), so dass sich Objekte in einer Gruppe ähnlich sind und Objekte

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Dynamische Programmierung Einführung Ablaufkoordination von Montagebändern Längste gemeinsame Teilsequenz Optimale

Mehr

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 11 Prof. Dr. Helmut Seidl, S. Pott,

Mehr

Kurfzassung Deutsch. Poier Lorenz. MMag. Wilhelm Loibl

Kurfzassung Deutsch. Poier Lorenz. MMag. Wilhelm Loibl Kurfzassung Deutsch Novelty Mining Algorithmus zur Trendsporterkennung Poier Lorenz MMag. Wilhelm Loibl Einleitung Diese Arbeit versucht ein Instrument für die Erkennung von Trends im Tourismus durch die

Mehr

4. Kreis- und Wegeprobleme Abstände in Graphen

4. Kreis- und Wegeprobleme Abstände in Graphen 4. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 4.4. Es sei G = (V,E) ein Graph. Der Abstand d(v,w) zweier Knoten v,w V ist die minimale Länge eines Weges von v nach w. Falls

Mehr

Nichtdeterministische Platzklassen

Nichtdeterministische Platzklassen Sommerakademie 2010 Rot an der Rot AG 1: Wieviel Platz brauchen Algorithmen wirklich? Nichtdeterministische Platzklassen Ulf Kulau August 23, 2010 1 Contents 1 Einführung 3 2 Nichtdeterminismus allgemein

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

Routing Algorithmen. Begriffe, Definitionen

Routing Algorithmen. Begriffe, Definitionen Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Seminar Text- und Datamining Textmining-Grundlagen Erste Schritte mit NLTK

Seminar Text- und Datamining Textmining-Grundlagen Erste Schritte mit NLTK Seminar Text- und Datamining Textmining-Grundlagen Erste Schritte mit NLTK Martin Hacker Richard Schaller Künstliche Intelligenz Department Informatik FAU Erlangen-Nürnberg 08.05.2014 Gliederung 1 Vorverarbeitung

Mehr

Textklassifizierung nach Erbkrankheiten aus OMIM Exposé einer Diplomarbeit

Textklassifizierung nach Erbkrankheiten aus OMIM Exposé einer Diplomarbeit Textklassifizierung nach Erbkrankheiten aus OMIM Exposé einer Diplomarbeit betreut von: Prof. Ulf Leser, Jörg Hakenberg bearbeitet von: Juliane Rutsch September 24 November 24 Problemstellung Medizinische

Mehr

WMS Block: Management von Wissen in Dokumentenform PART: Text Mining. Myra Spiliopoulou

WMS Block: Management von Wissen in Dokumentenform PART: Text Mining. Myra Spiliopoulou WMS Block: Management von Wissen in nform PART: Text Mining Myra Spiliopoulou WIE ERFASSEN UND VERWALTEN WIR EXPLIZITES WISSEN? 1. Wie strukturieren wir Wissen in nform? 2. Wie verwalten wir nsammlungen?

Mehr

T = {t 1,..., t n } sei die Menge der Terme. D = {d 1,..., d m } sei die Menge der Dokumente.

T = {t 1,..., t n } sei die Menge der Terme. D = {d 1,..., d m } sei die Menge der Dokumente. Vektorraummodell T = {t 1,..., t n } sei die Menge der Terme. D = {d 1,..., d m } sei die Menge der Dokumente. Dokumente und Anfragen werden als Vektoren in einem Vektorraum aufgefaßt. Der Vektorraum wird

Mehr

Universität Duisburg-Essen, Standort Duisburg Institut für Informatik und interaktive Systeme Fachgebiet Informationssysteme

Universität Duisburg-Essen, Standort Duisburg Institut für Informatik und interaktive Systeme Fachgebiet Informationssysteme Universität Duisburg-Essen, Standort Duisburg Institut für Informatik und interaktive Systeme Fachgebiet Informationssysteme Studienprojekt Invisible Web (Dipl.-Inform. Gudrun Fischer - WS 2003/04) Blockseminar

Mehr

Referat zum Thema Huffman-Codes

Referat zum Thema Huffman-Codes Referat zum Thema Huffman-Codes Darko Ostricki Yüksel Kahraman 05.02.2004 1 Huffman-Codes Huffman-Codes ( David A. Huffman, 1951) sind Präfix-Codes und das beste - optimale - Verfahren für die Codierung

Mehr

Grundlegende Eigenschaften von Punktschätzern

Grundlegende Eigenschaften von Punktschätzern Grundlegende Eigenschaften von Punktschätzern Worum geht es in diesem Modul? Schätzer als Zufallsvariablen Vorbereitung einer Simulation Verteilung von P-Dach Empirische Lage- und Streuungsparameter zur

Mehr

Algorithmen und Datenstrukturen 1

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen 1 7. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@informatik.uni-leipzig.de aufbauend auf den Kursen der letzten Jahre von E. Rahm, G. Heyer,

Mehr

6. Komprimierung. (Text)komprimierung ist ein Wechsel der Repräsentation von Daten, so daß sie weniger

6. Komprimierung. (Text)komprimierung ist ein Wechsel der Repräsentation von Daten, so daß sie weniger Komprimierung 6. Komprimierung (Text)komprimierung ist ein Wechsel der Repräsentation von Daten, so daß sie weniger Platz brauchen Motivation: beschleunigt Plattenzugriffe oder Datenübertragungen Voraussetzung:

Mehr

Studiengang Informatik der FH Gießen-Friedberg. Sequenz-Alignment. Jan Schäfer. WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel

Studiengang Informatik der FH Gießen-Friedberg. Sequenz-Alignment. Jan Schäfer. WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel Studiengang Informatik der FH Gießen-Friedberg Sequenz-Alignment Jan Schäfer WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel Überblick Einführung Grundlagen Wann ist das Merkmal der Ähnlichkeit erfüllt?

Mehr

37 Gauß-Algorithmus und lineare Gleichungssysteme

37 Gauß-Algorithmus und lineare Gleichungssysteme 37 Gauß-Algorithmus und lineare Gleichungssysteme 37 Motivation Lineare Gleichungssysteme treten in einer Vielzahl von Anwendungen auf und müssen gelöst werden In Abschnitt 355 haben wir gesehen, dass

Mehr

Topologische Begriffe

Topologische Begriffe Kapitel 3 Topologische Begriffe 3.1 Inneres, Rand und Abschluss von Mengen Definition (innerer Punkt und Inneres). Sei (V, ) ein normierter Raum über K, und sei M V eine Menge. Ein Vektor v M heißt innerer

Mehr

Vorlesung 4 BETWEENNESS CENTRALITY

Vorlesung 4 BETWEENNESS CENTRALITY Vorlesung 4 BETWEENNESS CENTRALITY 101 Aufgabe! Szenario: Sie arbeiten bei einem sozialen Online-Netzwerk. Aus der Netzwerk-Struktur Ihrer Benutzer sollen Sie wichtige Eigenschaften extrahieren. [http://www.fahrschule-vatterodt.de/

Mehr

Semestralklausur zur Vorlesung. Web Mining. Prof. J. Fürnkranz Technische Universität Darmstadt Sommersemester 2006 Termin:

Semestralklausur zur Vorlesung. Web Mining. Prof. J. Fürnkranz Technische Universität Darmstadt Sommersemester 2006 Termin: Semestralklausur zur Vorlesung Web Mining Prof. J. Fürnkranz Technische Universität Darmstadt Sommersemester 2006 Termin: 26. 7. 2006 Name: Vorname: Matrikelnummer: Fachrichtung: Punkte: (1).... (2)....

Mehr

Frequent Itemset Mining + Association Rule Mining

Frequent Itemset Mining + Association Rule Mining Frequent Itemset Mining + Association Rule Mining Studiengang Angewandte Mathematik WS 2015/16 Frequent Itemset Mining (FIM) 21.10.2015 2 Einleitung Das Frequent-Itemset-Mining kann als Anfang des modernen,

Mehr

Klausur Informatik B April Teil I: Informatik 3

Klausur Informatik B April Teil I: Informatik 3 Informatik 3 Seite 1 von 8 Klausur Informatik B April 1998 Teil I: Informatik 3 Informatik 3 Seite 2 von 8 Aufgabe 1: Fragekatalog (gesamt 5 ) Beantworten Sie folgende Fragen kurz in ein oder zwei Sätzen.

Mehr

15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten

15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten 15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten Autoren Rene Beier, MPI Saarbrücken Berthold Vöcking, RWTH Aachen In zwei Monaten startet die nächste Rakete

Mehr

Algorithmus zur komprimierten Übertragung von Textdaten an mobile Endgeräte

Algorithmus zur komprimierten Übertragung von Textdaten an mobile Endgeräte Fachhochschule Wedel Seminararbeit Algorithmus zur komprimierten Übertragung von Textdaten an mobile Endgeräte Sven Reinck 7. Januar 2007 Inhaltsverzeichnis Inhaltsverzeichnis Motivation 2 Wörterbuch 2.

Mehr

Im allerersten Unterabschnitt wollen wir uns mit einer elementaren Struktur innerhalb der Mathematik beschäftigen: Mengen.

Im allerersten Unterabschnitt wollen wir uns mit einer elementaren Struktur innerhalb der Mathematik beschäftigen: Mengen. Kapitel 1 - Mathematische Grundlagen Seite 1 1 - Mengen Im allerersten Unterabschnitt wollen wir uns mit einer elementaren Struktur innerhalb der Mathematik beschäftigen: Mengen. Definition 1.1 (G. Cantor.

Mehr

Unterscheidung: Workflowsystem vs. Informationssystem

Unterscheidung: Workflowsystem vs. Informationssystem 1. Vorwort 1.1. Gemeinsamkeiten Unterscheidung: Workflowsystem vs. Die Überschneidungsfläche zwischen Workflowsystem und ist die Domäne, also dass es darum geht, Varianten eines Dokuments schrittweise

Mehr

Einführung in die linearen Funktionen. Autor: Benedikt Menne

Einführung in die linearen Funktionen. Autor: Benedikt Menne Einführung in die linearen Funktionen Autor: Benedikt Menne Inhaltsverzeichnis Vorwort... 3 Allgemeine Definition... 3 3 Bestimmung der Steigung einer linearen Funktion... 4 3. Bestimmung der Steigung

Mehr

Beispiele zu den Verknüpfungs-Technologien-5.3.0

Beispiele zu den Verknüpfungs-Technologien-5.3.0 5.6.4. Beispiele zu den Verknüpfungs-Technologien-5.3.0 5.6.4. Beispiele zu den Verknüpfungs-Technologien Beispiel 1: Direkte Verknüpfungs-Technologie Wenn Sie diese Verknüpfungs-Technologie zwischen einer

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen

Mehr

Principal Component Analysis (PCA)

Principal Component Analysis (PCA) Principal Component Analysis (PCA) Motivation: Klassifikation mit der PCA Berechnung der Hauptkomponenten Theoretische Hintergründe Anwendungsbeispiel: Klassifikation von Gesichtern Weiterführende Bemerkungen

Mehr

SQL. SQL SELECT Anweisung SQL-SELECT SQL-SELECT

SQL. SQL SELECT Anweisung SQL-SELECT SQL-SELECT SQL SQL SELECT Anweisung Mit der SQL SELECT-Anweisung werden Datenwerte aus einer oder mehreren Tabellen einer Datenbank ausgewählt. Das Ergebnis der Auswahl ist erneut eine Tabelle, die sich dynamisch

Mehr

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche Algorithmus zum Graphen-Matching und Anwendung zur inhaltsbasierten Bildersuche Gliederung 1. Einführung 2. Algorithmus Beschreibung Beispiel Laufzeit 3. Anwendung des Algorithmus Seite 1 von 18 1. Einführung

Mehr

Formale Methoden 1. Gerhard Jäger 12. Dezember Uni Bielefeld, WS 2007/2008 1/22

Formale Methoden 1. Gerhard Jäger 12. Dezember Uni Bielefeld, WS 2007/2008 1/22 1/22 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 12. Dezember 2007 2/22 Bäume Baumdiagramme Ein Baumdiagramm eines Satzes stellt drei Arten von Information

Mehr

Einführung in die Informatik I Kapitel II.3: Sortieren

Einführung in die Informatik I Kapitel II.3: Sortieren 1 Einführung in die Informatik I Kapitel II.3: Sortieren Prof. Dr.-Ing. Marcin Grzegorzek Juniorprofessur für Mustererkennung im Institut für Bildinformatik Department Elektrotechnik und Informatik Fakultät

Mehr

Dynamische Programmierung. Problemlösungsstrategie der Informatik

Dynamische Programmierung. Problemlösungsstrategie der Informatik als Problemlösungsstrategie der Informatik und ihre Anwedung in der Diskreten Mathematik und Graphentheorie Fabian Cordt Enisa Metovic Wissenschaftliche Arbeiten und Präsentationen, WS 2010/2011 Gliederung

Mehr

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing SE Data Cleansing Domain-independent independent Duplicate Detection Vortrag von Marko Pilop & Jens Kleine http://www.informatik.hu-berlin.de/~pilop/didd.pdf {pilop jkleine}@informatik.hu-berlin.de 1.0

Mehr

Bäume. 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1

Bäume. 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1 Bäume 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1 Inhalt Grundbegriffe: Baum, Binärbaum Binäre Suchbäume (Definition) Typische Aufgaben Suchaufwand Löschen allgemein, Methode Schlüsseltransfer

Mehr

Übungen zu Programmierung I - Blatt 8

Übungen zu Programmierung I - Blatt 8 Dr. G. Zachmann A. Greß Universität Bonn Institut für Informatik II 1. Dezember 2004 Wintersemester 2004/2005 Übungen zu Programmierung I - Blatt 8 Abgabe am Mittwoch, dem 15.12.2004, 15:00 Uhr per E-Mail

Mehr

1 Zahlentheorie. 1.1 Kongruenzen

1 Zahlentheorie. 1.1 Kongruenzen 3 Zahlentheorie. Kongruenzen Der letzte Abschnitt zeigte, daß es sinnvoll ist, mit großen Zahlen möglichst einfach rechnen zu können. Oft kommt es nicht darauf, an eine Zahl im Detail zu kennen, sondern

Mehr

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekt mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten

Mehr

Student: Alexander Carls Matrikelnummer: Aufgabe: Beschreibung des euklidischen Algorithmus Datum:

Student: Alexander Carls Matrikelnummer: Aufgabe: Beschreibung des euklidischen Algorithmus Datum: Berufsakademie Stuttgart / Außenstelle Horb Studienbereich Technik Studiengang Informationstechnik Kurs IT2006, 2.Semester Dozent: Olaf Herden Student: Alexander Carls Matrikelnummer: 166270 Aufgabe: Beschreibung

Mehr

Gliederung. Algorithmen und Datenstrukturen II. Problem: Längste gemeinsame Teilsequenz. Problem: Längste gemeinsame Teilsequenz

Gliederung. Algorithmen und Datenstrukturen II. Problem: Längste gemeinsame Teilsequenz. Problem: Längste gemeinsame Teilsequenz Gliederung Algorithmen und Datenstrukturen II Algorithmen zur Textverarbeitung II D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg

Mehr

Klausur Algorithmen und Datenstrukturen

Klausur Algorithmen und Datenstrukturen Technische Universität Braunschweig Sommersemester 2013 IBR - Abteilung Algorithmik Prof. Dr. Sándor Fekete Dr. Christiane Schmidt Stephan Friedrichs Klausur Algorithmen und Datenstrukturen 22.08.2013

Mehr

9. Heuristische Suche

9. Heuristische Suche 9. Heuristische Suche Prof. Dr. Rudolf Kruse University of Magdeburg Faculty of Computer Science Magdeburg, Germany rudolf.kruse@cs.uni-magdeburg.de S Heuristische Suche Idee: Wir nutzen eine (heuristische)

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

Algorithmen und Formale Sprachen

Algorithmen und Formale Sprachen Algorithmen und Formale Sprachen Algorithmen und formale Sprachen Formale Sprachen und Algorithmen Formale Sprachen und formale Algorithmen (formale (Sprachen und Algorithmen)) ((formale Sprachen) und

Mehr

Tutorium Algorithmen & Datenstrukturen

Tutorium Algorithmen & Datenstrukturen June 16, 2010 Binärer Baum Binärer Baum enthält keine Knoten (NIL) besteht aus drei disjunkten Knotenmengen: einem Wurzelknoten, einem binären Baum als linken Unterbaum und einem binären Baum als rechten

Mehr

Was bisher geschah. Klassifikation: Zuordnung Merkmal (Symptom) Lösung (Diagnose)

Was bisher geschah. Klassifikation: Zuordnung Merkmal (Symptom) Lösung (Diagnose) Was bisher geschah Klassifikation: Zuordnung Merkmal (Symptom) Lösung (Diagnose) M Menge aller Merkmale L Menge aller Lösungen Zuordnung als Relation R M L Zuordnung als Funktion f : M L {0, 1} (charakteristische

Mehr

Testdokument (Universität Paderborn, Softwaretechnikpraktikum SS2006)

Testdokument (Universität Paderborn, Softwaretechnikpraktikum SS2006) Testdokument (Universität Paderborn, Softwaretechnikpraktikum SS2006) Alles, was in dieser Schriftart gesetzt ist, dient nur zur Erläuterung und sollte im fertigen Dokument nicht mehr enthalten sein! Projekt:

Mehr

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g: TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 2 Prof. Dr. Helmut Seidl, S. Pott,

Mehr

Detecting Near Duplicates for Web Crawling

Detecting Near Duplicates for Web Crawling Detecting Near Duplicates for Web Crawling Gurmeet Singh Manku et al., WWW 2007* * 16th international conference on World Wide Web Detecting Near Duplicates for Web Crawling Finde near duplicates in großen

Mehr

Indexstrukturen in XML

Indexstrukturen in XML Seminar XML und Datenbanken Indexstrukturen in XML Vanessa Schäfer 07.02.2003 Übersicht Einführung Indexstrukturen in XML Ein Vergleich SphinX vs. Lore Zusammenfassung und Ausblick Seminar XML und Datenbanken

Mehr

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung

Mehr

Das Gummibärchen-Orakel [1]

Das Gummibärchen-Orakel [1] Das Gummibärchen-Orakel [1] 1. Allgemeines Lehrplanbezug: Klasse 10 bzw. 11, z.b. beim Wiederholen der kombinatorischen Formeln Zeitbedarf: 1 bis 4 Schulstunden je nach Vertiefungsgrad 2. Einstieg und

Mehr

Algorithmen & Datenstrukturen Lösungen zu Blatt 9 HS 16

Algorithmen & Datenstrukturen Lösungen zu Blatt 9 HS 16 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Departement Informatik 24. November 2016 Markus

Mehr

Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II

Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II Matrixzugriff Wir wollen nun unsere Einführung in die Arbeit mit Vektoren und Matrizen in MATLAB

Mehr

Grundlagen der Elektrotechnik 1

Grundlagen der Elektrotechnik 1 Grundlagen der Elektrotechnik Kapitel : Berechnungsverfahren für Netzwerke Berechnungsverfahren für Netzwerken. Überlagerungsprinzip. Maschenstromverfahren. Knotenpotentialverfahren 6. Zweipoltheorie 7.5

Mehr

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie Gliederung 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. 2.2. Reguläre Sprachen 2.3. Kontextfreie Sprachen 2/1, Folie 1 2015 Prof. Steffen

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element

Mehr

generiere aus Textdokumenten zunächst Metadaten, wende Data Mining - Techniken dann nur auf diese an

generiere aus Textdokumenten zunächst Metadaten, wende Data Mining - Techniken dann nur auf diese an 9. Text- und Web-Mining Text Mining: Anwendung von Data Mining - Verfahren auf große Mengen von Online-Textdokumenten Web Mining: Anwendung von Data Mining - Verfahren auf Dokumente aus dem WWW oder auf

Mehr

Problemreduktion durch Transformation am Beispiel des. Erweiterten Euklidschen Algorithmus

Problemreduktion durch Transformation am Beispiel des. Erweiterten Euklidschen Algorithmus Problemreduktion durch Transformation am Beispiel des Erweiterten Euklidschen Algorithmus Wolfgang Windsteiger JKU Linz, A 4040 Linz, Austria Kurzfassung Transformation beschreibt im Wesentlichen die algorithmische

Mehr

1 Boolesches Retrieval (2)

1 Boolesches Retrieval (2) 2. Übung zur Vorlesung Internet-Suchmaschinen im Sommersemester 2009 mit Lösungsvorschlägen Prof. Dr. Gerd Stumme, M.Sc. Wi-Inf. Beate Krause 06. Mai 2009 1 Boolesches Retrieval (2) Eine Erweiterung des

Mehr

Statistische Verfahren zur Maschinen- und Prozessqualifikation

Statistische Verfahren zur Maschinen- und Prozessqualifikation Statistische Verfahren zur Maschinen- und Prozessqualifikation Bearbeitet von Edgar Dietrich, Alfred Schulze 5., aktualisierte Auflage 2005. Buch. XVIII, 630 S. Hardcover ISBN 978 3 446 22894 8 Format

Mehr

2 Geschäftsprozesse realisieren

2 Geschäftsprozesse realisieren 2 Geschäftsprozesse realisieren auf fünf Ebenen Modelle sind vereinfachte Abbilder der Realität und helfen, Zusammenhänge einfach und verständlich darzustellen. Das bekannteste Prozess-Modell ist das Drei-Ebenen-Modell.

Mehr

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015 Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken

Mehr

3. Entscheidungsbäume. Verfahren zum Begriffslernen (Klassifikation) Beispiel: weiteres Beispiel: (aus Böhm 2003) (aus Morik 2002)

3. Entscheidungsbäume. Verfahren zum Begriffslernen (Klassifikation) Beispiel: weiteres Beispiel: (aus Böhm 2003) (aus Morik 2002) 3. Entscheidungsbäume Verfahren zum Begriffslernen (Klassifikation) Beispiel: weiteres Beispiel: (aus Böhm 2003) (aus Morik 2002) (aus Wilhelm 2001) Beispiel: (aus Böhm 2003) Wann sind Entscheidungsbäume

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Programmiertechnik II

Programmiertechnik II 2007 Martin v. Löwis Priority Queues and Heapsort 2007 Martin v. Löwis 2 Priority Queue Abstrakter Datentyp Inhalt: Elemente mit Priorität Operationen: Einfügen: Angabe des Elements und seiner Priorität

Mehr

x 2 x 1 x 3 5.1 Lernen mit Entscheidungsbäumen

x 2 x 1 x 3 5.1 Lernen mit Entscheidungsbäumen 5.1 Lernen mit Entscheidungsbäumen Falls zum Beispiel A = {gelb, rot, blau} R 2 und B = {0, 1}, so definiert der folgende Entscheidungsbaum eine Hypothese H : A B (wobei der Attributvektor aus A mit x

Mehr

Algorithmen zur Berechnung der Transitiven Hülle einer Datenbankrelation

Algorithmen zur Berechnung der Transitiven Hülle einer Datenbankrelation Algorithmen zur Berechnung der Transitiven Hülle einer Datenbankrelation Daniel Reinhold Shenja Leiser 6. Februar 2006 2/28 Gliederung Einführung Transitive Hülle Definition Iterative Algorithmen 1. Naive

Mehr

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

Mehr

Übrigens: um den Algorithmus im Unterricht einzuführen, sind keine Formeln notwendig! Warum reicht die normale ASCII-Codierung nicht aus?

Übrigens: um den Algorithmus im Unterricht einzuführen, sind keine Formeln notwendig! Warum reicht die normale ASCII-Codierung nicht aus? Huffman-Code Dieser Text ist als Hintergrundinformation ausschliesslich für die Lehrperson gedacht. Der Text ist deshalb eher technisch gehalten. Er lehnt sich an das entsprechende Kapitel in "Turing Omnibus"

Mehr

Datenvorverarbeitung von nominalen Daten für Data Mining

Datenvorverarbeitung von nominalen Daten für Data Mining Datenvorverarbeitung von nominalen Daten für Data Mining Entstanden 2004/2005 bei der T-Systems International GmbH unter Betreuung von Prof. Dr. J. Fürnkranz Seite 1 Gliederung Datenvorverarbeitung Prepared

Mehr

Anhang C Jährliche Überprüfung der Vorgaben

Anhang C Jährliche Überprüfung der Vorgaben Anhang C Jährliche Überprüfung der Vorgaben Verfahren und Softwareanforderungen zur Auswahl der Vorgabenstammblätter, die zur jährlichen Überprüfung der Vorgaben anstehen. Für allgemeine (grundlegende)

Mehr

3 Quellencodierung. 3.1 Einleitung

3 Quellencodierung. 3.1 Einleitung Source coding is what Alice uses to save money on her telephone bills. It is usually used for data compression, in other words, to make messages shorter. John Gordon 3 Quellencodierung 3. Einleitung Im

Mehr

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. a) Es seien W 1 = (V, E 1 ), W 2 = (V, E 2 ) Untergraphen von G, die beide Wälder sind. Weiter gelte E 1 > E 2.

Mehr

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 5 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Mathematik für das Ingenieurstudium

Mathematik für das Ingenieurstudium Mathematik für das Ingenieurstudium von Martin Stämpfle, Jürgen Koch 2., aktual. Aufl. Hanser München 2012 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 43232 1 Zu Inhaltsverzeichnis schnell

Mehr

Auf dem Weg zu Website-Fingerprinting in der Praxis

Auf dem Weg zu Website-Fingerprinting in der Praxis Auf dem Weg zu Website-Fingerprinting in der Praxis Identifizierung von Webseiten mit dem multinomialen Naïve-Bayes-Klassifizierer Dominik Herrmann Lehrstuhl Management der Informationssicherheit Universität

Mehr

Opinion Mining Herausforderungen und Anwendung in der Politik

Opinion Mining Herausforderungen und Anwendung in der Politik Opinion Mining Herausforderungen und Anwendung in der Politik 28.09.2011 Umut Yilmaz Inhaltsübersicht 1. Einführung 2. Grundlagen 3. Anwendung in der Politik 4. Anwendungsbeispiel 5. Fazit 2 1. Einführung

Mehr

Donnerstag, 11. Dezember 03 Satz 2.2 Der Name Unterraum ist gerechtfertigt, denn jeder Unterraum U von V ist bzgl.

Donnerstag, 11. Dezember 03 Satz 2.2 Der Name Unterraum ist gerechtfertigt, denn jeder Unterraum U von V ist bzgl. Unterräume und Lineare Hülle 59 3. Unterräume und Lineare Hülle Definition.1 Eine Teilmenge U eines R-Vektorraums V heißt von V, wenn gilt: Unterraum (U 1) 0 U. (U ) U + U U, d.h. x, y U x + y U. (U )

Mehr