K-Means Clustering for Automatic Image Segmentation

Größe: px
Ab Seite anzeigen:

Download "K-Means Clustering for Automatic Image Segmentation"

Transkript

1 Westfälische Wilhelms Universität Münster Institut für Informatik Ausarbeitung zum Thema K-Means Clustering for Automatic Image Segmentation im Rahmen des Seminars Ausgewählte Themen zu Bildverstehen und Mustererkennung Andreas Held Themensteller: Prof. Dr. Xiaoyi Jiang Betreuer: Dipl.-Inform. Mohammed Dawood Abgabe: Juni 2008

2 Überblick In dieser Arbeit soll getestet werden, ob sich eine Variante des k-means Algorithmus zur Segmentierung von Knochen der menschlichen Wirbelsäule in Magnetresonanztomographie- Bildern eignet. Dabei soll die Segmentierung der Knochenbereiche eines Bildes möglichst voll automatisiert auf den Intensitätswerten der Pixel ausgeführt werden. Zu diesem Zweck werden verschiedene Abwandlungen des ursprünglichen k-means Algorithmus von McQueens vorgestellt und auf das zugrunde liegende Problem angewendet. Die verwendeten Bilddaten beschränken sich auf drei Grauwert-Bilder der menschlichen Wirbelsäule aus unterschiedlichen Blickwinkeln und Auflösungen.

3 Inhaltsverzeichnis Überblick... 2 Inhaltsverzeichnis Einleitung Überblick des Forschungsgebietes Automatische Bildsegmentierung Überblick der Arbeit Verfahren zur Clusteranalyse Einleitung Unterteilung von Cluster-Verfahren Eigenschaften von Clusteralgorithmen Ähnlichkeitsmaße Bewertung eines Clustering-Ergebnisses Der k-means Algorithmus und seine Erweiterungen K-means nach McQueen Überblick Der Algorithmus Vorteile des Algorithmus Nachteile des Algorithmus Global k-means Algorithmus Überblick Algorithmus - Ablauf Algorithmus - Laufzeit Fast global k-means Cluster-Validäts-Problem Verwendete Materialien und Vorgehensweise Materialien Vorgehen Vorverarbeitungsschritte Anwendung des k-means Algorithmus Nachbearbeitungsschritte Ergebnisse Implementierung Hilfsfunktionen Distanzfunktion dist Erstellen einer Distanzmatrix mittels distmat Fehlerfunktion errfkt K-means nach McQueen Global k-means Fast global k-means Diskussion und Ausblick Literatur... 26

4 1. Einführung 1.1 Überblick des Forschungsgebietes Die Segmentierung eines Bildes in verschiedene Regionen ist ein Teilbereich der Bildanalyse bzw. Bildverarbeitung. Im Gegensatz zur Computergrafik, deren Ziel die computergestützte Erzeugung von Bildern ist, versucht die Bildanalyse, eine Beschreibung der ursprünglich aufgenommenen Szene zu rekonstruieren. Zu diesem Zweck umfasst die Bildverarbeitung Bearbeitungsprozeduren zur Gewinnung von Information aus den Bilddaten. Beispiele für diese Bearbeitungsprozeduren sind: Bewegungsbestimmung, Bildsegmentierung, Bilderkennung und Mustererkennung. Dabei versuchen die einzelnen Methoden, die Eigenschaften des menschlichen Sehvermögens nachzubilden und werden deswegen dem Forschungsgebiet Computer Vision (Gegenstück zu Human Vision) zugeordnet. Da in dieser Arbeit ein spezielles Verfahren zur automatischen Bildsegmentierung vorgestellt wird, soll in dem folgenden Kapitel in die Grundlagen der Bildsegmentierung eingeführt werden, die nicht nur im Bereich Computer Vision, sondern auch bei Video Coding und Medical Imaging zunehmend an Bedeutung gewinnt [1, 2]. 1.2 Automatische Bildsegmentierung Der Bildanalyse liegt ein digitales Rasterbild in Form einer zweidimensionalen Bildpunktmatrix zugrunde. Dabei sind keine Informationen über Zusammenhänge zwischen den einzelnen Bildpunkten vorhanden. Das Ziel der Segmentierung ist es, ein Bild in nichtüberlappende homogene Regionen zu unterteilen. Formal bedeutet dies: Sei I die Menge aller Bildpunkte x eines Bildes, dann ist die Segmentierung gleichzusetzen mit einer Unterteilung der Menge I in n Teilmengen S 1,..., S n, so dass gilt: n ( S i = I mit S i ' S j =, i j, S i zusammenhängend. (1.1) i=1 Der Begriff Segment oder Region bezeichnet daher einen Bereich, dessen Bestimmung ohne Berücksichtigung eines semantischen Aspekts vorgenommen wurde. In der medizinischen Bildanalyse werden als Merkmale zum Beispiel Pixelintensitäten, also die Grauwerte der einzelnen Pixel benutzt und das Ziel ist es, die Regionen so zu ermitteln, dass sie zu eindeutigen anatomischen Strukturen korrespondieren. Grundsätzlich wird zwischen vier verschiedenen Ansätzen zur Segmentierung unterschieden. Diese Verfahren sind kanten-, regionen-, Histogramm- und Cluster-basierte Verfahren [3]. Um eine gute Bildsegmentierung durchführen zu können, sind meist verschiedene Vorverarbeitungs-, sowie Nachbearbeitungsschritte nötig. Grundsätzlich dienen Vorverarbeitungsschritte dazu die Findung von homogenen Regionen zu erleichtern und Nachbearbeitungsschritte die gefundenen Regionen deutlicher zu machen. Beispiele für Vorverarbeitungsschritte sind, die Anwendung von einem Gaußfilter, um sogenanntes Rauschen in einem Bild zu unterdrücken, Kantenverstärkung und Kontrasterhöhung. Die in dieser Arbeit verwendeten Vor- und Nachbearbeitungsschritte werden in Kapitel 4.2 erklärt. Durch die Segmentierung eines Bildes in homogene Regionen soll weitere Bildanalyse erleichtert werden. In einem idealen Fall würden die Bildsegmente direkt zu Objekten der realen Welt korrespondieren, die in dem Bild dargestellt sind. In der Praxis ist das Erreichen einer solchen kompletten Segmentation durch unüberwachte Verfahren, die hier vorgestellt werden, nahezu unmöglich [4]. Deswegen soll hier nur ein Versuch dargestellt werden, um

5 ein Bild teilweise zu segmentieren, so dass die Pixel des Bildes in homogene Gruppen geclustert werden. Die Anwendungsgebiete solcher Verfahren sind vielfältig. Automatische Segmentierung von Bildern, wird zum Beispiel sehr häufig in der Medizin angewandt, z.b. in der Computertomographie oder in der Magnetresonanztomographie. Andere Anwendungsgebiete sind die Verarbeitung von geologischen Daten (z.b. die Segmentierung von Satelliten oder Luftbilder in geometrische Daten), automatische Qualitätskontrolle, Schrifterkennung und Gesichtserkennung Überblick der Arbeit In dieser Arbeit soll die Anwendbarkeit des k-means Clusterverfahrens zur automatischen Bildsegmentierung von medizinischen Daten, speziell die Erkennung von Knochen der Wirbelsäule in Magnetresonanztomographie-Bildern (MRI-Bilder), daher Grauwert-Bildern, untersucht werden. In den nächsten Kapiteln wird aus diesem Grund eine Einführung in Cluster-basierte Verfahren der Bildsegmentierung, speziell dem k-means Algorithmus und Varianten des selbigen gegeben. Sowie die Analyse der Ergebnisse vorgestellt, bei dem Versuch Knochen der Wirbelsäule in MRI-Bildern zu erkennen und automatisch zu segmentieren.

6 2 Verfahren zur Clusteranalyse 2.1 Einleitung Für die Untersuchung von Bilddaten werden häufig unüberwachte Analyseverfahren eingesetzt. Unüberwacht bedeutet in diesem Zusammenhang, dass kein a priori Wissen über die einzelnen Bildpunkte bekannt ist, das sich für die Strukturierung der Daten eignet. Deshalb wird bei der unüberwachten Datenanalyse versucht, nur auf Grund der vorliegenden Bildpunkte eine Unterteilung der selbigen in unterschiedliche Kategorien vorzunehmen. Da sich bei medizinischen Bilddaten, die Grundlage dieser Arbeit sind, je nach Körperregion und Patient andere Datenmengen ergeben, lassen sich bei der Auswertung dieser Daten nur sehr eingeschränkt Analyseverfahren mit festen Modellvorgaben einsetzen, so dass sich unüberwachte Clusterverfahren als Methode anbieten. Eine Gruppe von unüberwachten Analyseverfahren bilden dabei die Clustermethoden. Clusterverfahren benutzen ein vorgegebenes Ähnlichkeitsschema anhand dessen sie gleichartige Datenpunkte erkennen und zu Gruppen, sogenannte Cluster, zuordnen. Ein Cluster ist eine Ansammlung von Objekten, für die die folgenden zwei Bedingungen erfüllt sein müssen [5]: - Homogenität innerhalb eines Clusters soll möglichst hoch sein, daher die Datenpunkte, die einem Cluster zugeordnet wurden, sollen ähnlich zueinander sein. - Heterogenität zwischen unterschiedlichen Clustern soll ebenfalls hoch sein, daher Daten, die verschiedenen Clustern angehören sollen sich unähnlich sein. Cluster sind demnach Ansammlungen von Datenpunkten bei denen die Dichte lokal höher ist als in anderen Regionen des Datenraumes [8]. Ein Beispiel bei dem eine Datenmenge in Cluster eingeteilt wurden, die sowohl die Homogenitäts- als auch die Heterogenitätsbedingung best möglich erfüllen, ist in Abbildung 1 gezeigt. Ein Überblick über verschiedene Maße zur Berechnung der Ähnlichkeit von Objekten und Clustern wird zu diesem Zweck in Kapitel 2.4 gegeben. Das Ergebnis des Clustering-Prozesses, das sog. Clustering, kann zudem durch einen globalen Cluster-Fehler validiert werden. Ziel bei der Clusterbildung ist es diesen Cluster-Fehler zu minimieren (vgl. Kapitel 2.5). Ein bekannter Vertreter der Clusteranalyse-Verfahren ist der k-means Algorithmus [9, 10, 11, 12, 13], der in Kapitel 3 vorgestellt wird und Grundlage für diese Arbeit ist. Dieser Algorithmus hat, wie viele andere Clusterverfahren, die Einschränkung, dass die Anzahl zu gruppierender Cluster bekannt sein muss. Diese Anzahl sollte der Anzahl der wirklich in den Daten vorkommenden Gruppen ähnlicher Datenpunkte entsprechen, damit eine optimale Segmentierung des Bildes gewährleistet werden kann (Abbildung 1). Jedoch ist die Anzahl der vorkommenden Datenklassen häufig a priori unbekannt und aufgrund der wenigen Informationen über die Bildpunkte schwierig zu berechnen. Da die hier vorgestellte Bildsegmentierung automatisch durchführbar sein soll, muss die Anzahl der vorkommenden Cluster in einem Bild automatisch errechnet werden können. Dieses Problem wird häufig als das Cluster-Validitäts-Problem bezeichnet [17] und ist in Kapitel 3.4 näher erläutert.

7 Abbildung 1: Zeigt den künstlich erstellten Ruspini-Datensatz. Die Merkmale der einzelnen Datenpunkte nach denen gruppiert wurde, ist in diesem Fall, die x- bzw. y-koordinate des jeweiligen Datenpunktes. Es ist leicht zu erkennen, dass für die Gruppierung der Daten in vier Cluster eine stark homogenes und heterogenes Clustering möglich ist. Allerdings wäre dieses Clustering für zum Beispiel drei Cluster nicht mehr so einfach zu erkennen. 2.2 Unterteilung von Cluster-Verfahren Es gibt viele unterschiedliche Ansätze um Daten mittels unüberwachter Clusteranalyse zu gruppieren, die je nach Anwendungsgebiet ihre Vor- und Nachteile besitzen. Die unterschiedlichen Variationen der Cluster Algorithmen lassen sich dabei in die zwei Kategorien hierarchische und partitionierende Verfahren einteilen (Abbildung 2). Abbildung 2: Differenzierung der einzelnen Clustermethoden. Hierarchische Clustermethoden sind dabei nochmal unterteilt in agglomerative (bottom-up) und divisive (top-down) Verfahren. Agglomerative hierarchische Methoden gehen in ihrer Initialisierung davon aus, dass jeder einzelne Datenpunkt einem eigenen Cluster angehört. In jeder Iteration verschmelzen die zwei Cluster mit der niedrigsten Heterogenität, bis in einem letzten Schritt alle Cluster miteinander verschmolzen sind oder der Abstand zwischen zwei Clustern einen vorgegebenen Schwellenwert überschreitet. Um dies zu erreichen wird in jedem Schritt die Ähnlichkeit der vorhandenen Clustern berechnet. Bekannte Verfahren zum Berechnen der Ähnlichkeit zwischen zwei Clustern sind Single-Linkage, Complete-Linkage oder Complete-Linkage [14, 15]. Das Resultat ist ein sogenanntes Dendrogramm, an dem alle während des Clustering-Prozesses entstandenen Gruppierungen abgelesen werden können und so eine Interpretation der Daten erlauben. Divisive Verfahren funktionieren in umgekehrter Richtung, aber nach dem gleichen Prinzip [7]. Im Gegensatz dazu teilen partitionierende Verfahren einen Datensatz in eine vorgegebene Anzahl an Clustern auf. Zu diesem Zweck werden sogenannte repräsentative Datum für ein Cluster berechnet, die eine Mittelung über die verschiedenen Merkmale der Objekte eines

8 Clusters sind. Ein bekannter Vertreter dieser Klasse an unüberwachten partitionierenden Clusteranalyse-Verfahren ist der k-means Algorithmus, der in Kapitel 3 vorgestellt wird und als Grundlage für diese Arbeit benutzt wurde. 2.3 Eigenschaften von Clusteralgorithmen Cluster Algorithmen werden in der Literatur verschiedene Eigenschaften zugeordnet, die im Folgenden aufgelistet sind [7]: hart vs. unscharf Harte Algorithmen ordnen jedem Objekt genau ein Cluster zu, während unscharfe (fuzzy) Algorithmen die Objekte mit unterschiedlichen Gewichtungen verschiedenen Clustern zuordnen können. deterministisch vs. stochastisch Deterministische Methoden produzieren anders als stochastische Methoden unter den gleichen Bedingungen immer das gleiche Clustering-Resultat. noise-insensitive vs. noise-sensitive: Diese Eigenschaft legt fest, wie robust ein Algorithmus gegenüber Rauschen in der Datenmenge ist. Ein Algorithmus kann zum Beispiel für einen Datensatz ohne signifikantes Rauschen gute Resultate liefern. Aber die Güte des Algorithmus verschlechtert sich drastisch mit dem Anstieg von Rauschen in dem Datensatz. 2.4 Ähnlichkeitsmaße Im vorangegangenen Text wurde mehrfach der Begriff der Ähnlichkeit, bzw. Unähnlichkeit von Datenpunkten verwendet, der nun hier definiert werden soll. Um Datenobjekte oder Cluster miteinander vergleichen zu können, muss ein Maß definiert werden, das es erlaubt, den Abstand zwischen den zwei Objekten zu berechnen. Dafür sei eine Distanzfunktion d definiert, so dass der Abstand zwischen zwei Objekten a und b als d(a, b) bezeichnet ist. Eine Distanzfunktion muss dabei immer die folgenden Bedingungen erfüllen [7]: (i) d(a, b) > 0, die Distanz zwischen zwei Objekten ist nicht negativ (ii) d(a, a) = 0, die Distanz eines Objektes zu sich selber ist gleich null Normalerweise aber nicht zwingend notwendig ist auch die Symmetrie-Bedingung erfüllt: (iii) d(a,b) = d(b,a) Häufig verwendete Distanzfunktionen sind in Tabelle 1 aufgeführt. Es existiert eine Vielzahl von weiteren Distanzfunktionen. Für weitere Details sei auf die Arbeit von Matthias Zschunke [7] verwiesen.

9 Distanzfunktion Formel Erklärung d(x, y) = x i - y i Die Differenzen der Manhattan Distance Merkmale zweier Objekte i (1-norm) aufsummiert Euclidian Distance (2-Norm) Maximum distance (Infinity-norm) d(x, y) = (x i - y i ) 2 geometrische Distanz der Merkmale i die größte Distanz von allen d(x, y) = max i ( x i -y i ) Merkmalen Tabelle 1: Oft verwendete Distanzmaße [10, 15, 16] mit Formel und kurzer Erklärung. 2.5 Bewertung eines Clustering-Ergebnisses Um verschiedene Clustering-Ergebnisse miteinander vergleichen zu können, muss eine sogenannte Bewertungsfunktion existieren. Dabei wird zwischen Gütefunktionen und Fehlerfunktionen unterschieden. Im Normalfall ist also das Ziel einer Clustermethode eine Gütefunktion zu maximieren, bzw. eine Fehlerfunktion zu minimieren. Eine in der Literatur oft verwendete Bewertungsfunktion ist der mittlere, empirische Quantisierungsfehler (MQF) einer Datenmenge [10, 14, 15]. Diese Bewertungsfunktion berechnet, wie gut eine analysierte Datenmenge durch die Menge der errechneten Clusterzentren repräsentiert wird. Sei X die Menge aller Datenpunkte X = {x 1,..., x N }, x i Ñ d C 1,..., C M die Menge der Cluster mit zugehörigem Centroid m 1,.., m M, dann gilt für den MQF: MQF = 1 N M N I(x i C k ) d(x i - m k ), wenn I(x i ) = 1, falls x i = true, 0, sonst. (2.1) i=1k=1 Der in dieser Arbeit verwendete k-means Algorithmus (vgl. Kapitel 3) benutzt für das Optimierungsproblem die euklidische Distanz (vgl. Tabelle 1) und den mittleren quadratischen Quantisierungsfehler (MQQF). Der MQQF berechnet den mittleren quadratischen Abstand zwischen den Datenpunkten und den zugehörigen Clusterzentren [8]: MQQF = 1 N M N I(x i C k ) x i - m k 2, wenn I(x i ) = 1, falls x i C k, 0, sonst. (2.2) i=1k=1 Der quadratische Quantisierungsfehler weist eine Abhängigkeit von der verwendeten Clusteranzahl auf, die für das Bestimmungsproblem der optimalen Anzahl an vorhandenen Cluster in einer Datenmenge benutzt werden kann [15].

10 3. Der k-means Algorithmus und seine Erweiterungen 3.1 k-means nach McQueen [13] Überblick Dem partitionierenden Clustering Algorithmus k-means, der von McQueen [13] 1967 entwickelt wurde, werden die Eigenschaften stochastisch und hart zugeordnet. Auch wenn mittlerweile eine Vielzahl von Variationen des Algorithmus existieren, denen andere Eigenschaften zugeordnet sind, z.b. fuzzy statt hart, wird im Folgenden auf die Grundversion des Algorithmus eingegangen. Dem Algorithmus werden als Eingabe neben den zu clusternden Datenpunkten I auch die optimale Anzahl Cluster k übergeben, die nicht zwangsläufig bekannt sein muss (vgl. Kapitel 3.4). Der Algorithmus teilt daraufhin die Menge der Datenpunkte in k Cluster auf. Dafür wird das folgende Grundprinzip verwendet: Jedem Cluster wird ein Clusterzenter zugeordnet. Diese Clusterzenter werden auch Centroid genannt und lassen sich wie folgt berechnen: Sei m i das Clusterzenter von Cluster C i und x Datenpunkte eines Bildes I, dann gilt [18]: m i = 1 C i C i x r, x r C i (3.1) r=1 Jedes Datum kann außerdem sehr leicht einem Centroid zugeordnet werden, zum Beispiel dem Centroid, das die kürzeste Distanz zu dem Punkt aufweist. Auf diese Weise ist es möglich aus einem Clustering, die zugehörigen Centroide für jedes Cluster zu berechnen. Umgekehrt kann, wenn die Centroide bekannt sind, das zugehörige Clustering berechnet werden [19]. Wenn der Algorithmus startet sind jedoch weder das Clustering noch die Centroide bekannt. Aus diesem Grund werden initial k Centroide zufällig in der Datenmenge verteilt und das zugehörige Clustering berechnet. Dann werden aufgrund der entstandenen Cluster die neuen Positionen der Centroide berechnet. Diese zwei Schritte wiederholen sich solange, bis sich die Centroide nicht weiter verändern. Weitere Abbruchbedingungen können zum Beispiel sein, dass nach einer bestimmten Anzahl an Schleifendurchläufen abgebrochen wird oder sich die Cluster von einer Iteration zur nächsten nicht signifikant verändern Der Algorithmus 0) Wähle Anzahl Cluster k 1) Erstelle zufällig k Centroide (oder ein zufälliges Clustering) 2) Ordne jedem Objekt das Cluster mit dem am nächsten liegenden Centroid zu 3) Berechne die Clusterzentren neu 4) Wiederhole Schritt 2 bis ein Abbruchkriterium erfüllt ist Die Implementierung des Algorithmus in Matlab, ist in Kapitel 6.2 beschrieben Vorteile des Algorithmus Der Vorteil des Algorithmus von McQueen, liegt neben der einfachen Implementierung, in der relativ schnellen Laufzeit im Vergleich zu anderen Clusterverfahren, z.b. den hierarchischen Verfahren. Die Laufzeit hängt von der Nummer der Clusterzentren k, der

11 Anzahl der zu clusternden Objekte n und der Anzahl der dafür notwendigen Iterationen i ab. Demnach ist die Laufzeit von linearer Komplexität mit O(k*n*i) [6] Nachteile des k-means Algorithmus Ein Schwachpunkt des Verfahrens stellt die zufällige Initialisierung der Clusterzentren dar. Je nach Wahl dieser Clusterzentren kann es zu einer Einschränkung des Lösungsraumes und zu suboptimalen Clusterergebnissen kommen [17]. Die Situation ist vergleichbar mit der Berechnung eines lokalen besten Ergebnisses für die ausgewählten Clusterzentren, das nicht zwangsläufig identisch sein muss mit dem globalen besten Ergebnis, dass eventuell durch eine andere Initialisierung der Zentren erreicht wird. Um dem Abhilfe zu schaffen wird der Algorithmus meist mehrfach mit unterschiedlichen Initialisierungen gestartet und im Anschluss das Ergebnis mit dem geringsten Gesamtfehler (vgl. Kapitel 2.5) verwendet. Für die Analyse von umfangreichen medizinischen Datensätzen führt dies jedoch zu sehr ineffizientem Verhalten. Zudem ist es gerade bei der Analyse von medizinischen Daten wichtig, die Clusteranalyse möglichst exakt zu gestalten, um die Sicherheit der Analyseergebnisse gewährleisten zu können. Wie das Finden von globalen Optima gewährleistet werden kann, ist in Kapitel 3.2 beschrieben, in dem eine erweiterte Version des k-means Algorithmus vorgestellt wird. Ein weiterer Nachteil des Verfahrens ist, dass die optimale Anzahl der Cluster nicht von vorne herein festgelegt ist. Wie mit diesem Umstand zu verfahren ist, ist in Kapitel 3.4 beschrieben. 3.2 Global k-means Algorithmus Der hier vorgestellte globale k-means Algorithmus, von Aristidis Likas et al., richtet sich nach der Veröffentlichung The global k-means clustering algorithm [8] Überblick Der Algorithmus verfährt inkrementell. Das bedeutet, wenn eine Bildmenge in M Cluster mit den zugehörigen gruppiert werden soll, wird in einem ersten Schritt das Clusterproblem für M=1, anschließend für M=2 usw. gelöst. Für das Clusterproblem M=1 ist die optimale Lösung trivial, daher alle Datenpunkte werden einem Cluster zugeordnet und das zugehörige Clusterzenter errechnet. Bei jeder folgenden lokalen Suche nach den optimalen Centroiden, werden die vorherigen optimalen Clusterzentren als Initialisierung benutzt und nur das letzte Clusterzentrum mehrfach initialisiert. Um das Auffinden des besten Clusterings gewährleisten zu können, werden jeweils die M-1 Clusterzentren an ihrer vorher berechneten optimalen Position und das verbleibende M.te Centroid wird für alle möglichen Bildpunkte initialisiert und letztendlich diejenige Initialisierung verwendet, bei dem der Clusterfehler minimal war. Der zu optimierende Clusterfehler E entspricht dabei dem in Abschnitt 2.5 definierten mittleren quadratischen Quantisierungsfehler. Durch dieses Vorgehen ist der Algorithmus nicht abhängig von zufällig initialisierten Centroiden und führt bei jedem Durchlauf zu demselben Ergebnis, dass das globale Minimum für den Clusterfehler darstellt Algorithmus - Ablauf (0) für k=1: ist das Centroid aus dem Datensatz X zu errechnen (1) für k=i, i [2, M] N Ausführungen des k-means Algorithmus mit den folgenden initialen Clusterzentren:

12 - m 1...m i-1 wird immer an seiner optimalen Position platziert - m i wird an jedem Datenpunkt x n (n = 1...N) platziert (3) Benutze die Lösung mit minimalem Clusteringfehler für k=i+1. (4) Schritt 2 und 3 werden solange wiederholt, bis die optimale Lösung für k=m gefunden ist. Die Implementierung des Algorithmus in Matlab, ist in Kapitel 6.3 beschrieben Algorithmus - Laufzeit Der Nachteil dieser Variante ist es, dass für jeden Schritt N Durchläufe des k-means Algorithmus für jedes Clusterproblem durchlaufen werden müssen. Dies kann bei medizinischen Datensätzen zu einem unpraktikablen Aufwand führen. Wenn eine Bildmenge von N Pixeln in M Cluster gruppiert werden sollen ergibt sich die Laufzeit von O(M*N*O(k-means)). Deshalb gibt es auch hierfür eine Erweiterung, die sich fast global k-means nennt und im folgenden Abschnitt vorgestellt wird Fast global k-means Der hier vorgestellte schnelle globale k-means Algorithmus wurde ebenfalls von Aristidis Likas et al. entwickelt und die Beschreibung richtet sich nach ihrer Veröffentlichung 2003 [8]. Im Gegensatz zu dem globalen k-means Algorithmus (Abschnitt 3.2) wird für das M.te Centroid der k-means Algorithmus nicht für jede mögliche Initialisierung angewendet. Zuerst wird eine obere Grenze E n für den Clusterfehler errechnet. Diese Grenze ist definiert als: E n = E - b n für alle möglichen x n, (3.2) wobei E der Fehler im (k-1)-clustering-problem und b n wie folgt definiert ist: N b n = max (d j k-1 - x n - x j 2, 0) (3.3) j=1 d j k-1 ist dabei die quadratische Distanz zwischen x j und dem am nächsten liegenden Centroid von den k-1optimalen Clusterzentren. Die Position des k.ten Centroids wird also an dem Punkt x i initialisiert, bei dem E n minimiert, oder anders gesagt b n maximiert ist und der k-means Algorithmus nur ein einziges mal ausgeführt. Anschaulich kann gesagt werden, dass d j k-1 alle aktuell kürzesten Distanzen zwischen einem Datenpunkt und dem zugehörigen Centroid darstellt und x n - x j entspricht der Distanz zu einem neuen Centroid, der an Position x n eingefügt wurde. Wenn die Distanz zu dem neuen Centroid größer ist als zu dem bisher zugeordneten, ergibt max (d j k-1 - x n - x j 2, 0) den Wert 0. Sollte die Distanz zu dem neuen Centroid jedoch kürzer sein, als zu dem bisher zugeordneten Centroid, vermindert sich der Gesamtfehler um genau den berechneten Wert, da jeweils die quadratischen Distanzen verwendet werden. Bei der Berechnung in Formel 3.3 handelt es sich also um ein Aufsummieren der Verbesserung des Gesamtfehlers nur durch Einfügen eines weiteren Clusterzentrums. Aus diesem Grund wird durch Formel 3.2 auch nur eine obere Grenze für den Clusterfehler berechnet, da sich nach Anwendung des k-means Algorithmus und dem Verschieben der Centroide der Gesamtfehler im Normalfall weiter verringert. Die Ergebnisse dieser Variante des k-means Algorithmus sind, wie in [8] gesehen werden kann, nahezu so gut, wie die des globalen k-means Algorithmus. Allerdings kann die

13 Berechnung der Verbesserung des Clusterfehlers sehr effizient durch Anlegen einer Distanzmatrix zwischen jedem Datenpunkt realisiert werden (vgl. Kapitel 6.4) und lässt sich daher auch auf große Datenmengen effizient anwenden Berechnen der optimalen Clusteranzahl (Cluster-Validäts-Problem) Die Aufgabe die optimale Anzahl an Cluster für eine gegebene Datenmenge zu errechnen, wird auch als das Cluster-Validäts-Problem bezeichnet [17]. Um eine vollautomatisierte Bildsegmentierung gewährleisten zu können, muss auch das Errechnen der optimalen Anzahl an Cluster automatisiert sein. Zur Lösung des Problems wird unter anderem die Methode vorgeschlagen, die Datenclusterung mit einer wachsenden Anzahl an Clusterzentren durchzuführen und die in Abschnitt 2.5 beschriebene Fehlerfunktion zu benutzen, um die Ergebnisse miteinander zu vergleichen [20]. Grundsätzlich gilt, dass der zu optimierende Fehler für nur ein Cluster sehr hoch ist, allerdings bei wachsender Anzahl der Cluster schnell kleiner wird, bis die optimale Anzahl an Cluster erreicht ist. Ab dieser bestimmten Anzahl an Cluster sinkt der Fehler nur noch annäherungsweise konstant. Wird der Clusterfehler in einem Graphen aufgetragen, indem die Clusteranzahl gegen den Clusterfehler aufgetragen ist, erscheint die optimale Clusteranzahl an dem Punkt, wo der größte Unterschied im Gradient des Graphen vorliegt. Mathematisch lassen sich die Gradienten an einem bestimmten Punkt nach folgender Formel berechnen: m = óy óx = y 2 - y 1 x 2 - x (3.4) 1 Da der Gradient, für die Clusteranzahl 1 im Normalfall weder sinnvoll noch definiert ist, wird der Wert 1 für die optimale Anzahl an Cluster außer Acht gelassen. Zum Auffinden der größten Gradientenveränderung wird jeweils das Verhältnis zwischen dem Gradient für eine bestimmte Clusteranzahl und dem Wert des Gradienten für die nächst höhere Clusteranzahl berechnet. Für eine beispielhafte Anwendung dieses Vorgehens siehe Abbildung 3 und Tabelle 2. Abbildung 3: Zeigt den rapiden Abfall des Clusteringfehlers bis zu der vermeintlich optimalen Anzahl an Cluster. Die Daten entstammen aus der Visualisierung des Clusteringfehlers, der aus der Anwendung des fast global k-means Algorithmus auf das Originalbild 1 (Kapitel 4.1) für die Clusteranzahl 1 bis 7 resultiert.

14 # Cluster Clusteringfehler Gradient Verhältnis zum nächsten Gradient N/A N/A N/A Tabelle 2: Die zu Abbildung 4 korrespondierenden Werte für Anzahl Cluster und dem zugehörigen Clusteringfehler. Außerdem der Wert des Gradienten des Graphen für eine bestimmte Anzahl Cluster, sowie das Verhältnis zwischen dem aktuellen Gradient und dem Gradienten für die nächst höhere Clusteranzahl. Wie Tabelle 2 zu entnehmen ist, ist das Verhältnis der Steigungen für die Clusteranzahl 3 am größten, so dass als optimaler Wert für die Anzahl Cluster dieser ausgewählt wird. Wie später in Kapitel 5 gezeigt ist, handelt es sich bei allen in dieser Arbeit verwendeten Bildern bei diesem Wert auch in der Tat um den besten Wert für die optimale Anzahl an Cluster. Dieser Ansatz zur Lösung des Problems wird auch Elbow-Kriterium [14] genannt, da die optimale Anzahl an Cluster an dem Punkt vorliegt, an dem ein zugeordneter Graph eine ellbogenähnliche Beugung einnimmt (Vgl. Abbildung 3). Das eigentliche ClusterValiditäts-Problem konnte bisher aus mathematischstatistischer Sicht noch nicht einwandfrei gelöst werden [10], allerdings bietet diese Methode ein einfach umzusetzendes, voll automatisiertes Verfahren, dass immer eine gute Näherung für die optimale Anzahl der Clusterzentren liefert. An dieser Stelle sei vorweggenommen, dass bei den dieser Arbeit zugrunde liegenden Bilddaten (vgl. Kapitel 4.1) dieses Verfahren zur Auffindung der optimalen Clusteranzahl nicht immer funktioniert. In manchen Fällen werden zwei Cluster als optimale Anzahl vorgeschlagen. Dieser Wert ist bei den Daten jedoch nicht sinnvoll, da in jedem Bild von mindestens drei Clustern auszugehen ist. Ein Cluster für den Hintergrund. Mindestens ein Cluster für Knochen und ein Cluster für andere Zelltypen. Aus diesem Grund wird die Clusteranzahl automatisch auf drei erhöht, wenn das Ellbogen-Kriterium eine niedrigere Clusteranzahl vorschlägt.

15 4. Verwendete Materialien und Vorgehensweise 4.1 Materialien Ziel dieser Arbeit ist es, Knochen der Wirbelsäule mit Hilfe des k-means Algorithmus zu segmentieren. Die der Arbeit zugrunde liegenden Bilddaten, entsprechen Magnetresonanztomographien (MRI-Bilder) der Wirbelsäule des Menschen. Insgesamt wurden drei Bilder versucht mit einem Verfahren zu analysieren, das für jedes der Bilder gute Resultate liefern soll. Bei zwei der Bilder handelt es sich um MRI-Bilder der Wirbelsäule mit verschiedenen Field-of-View-Werten (FOV), daher verschieden großen Ausschnitten der Wirbelsäule. Bei dem dritten Bild wurde eine Aufnahme eines einzelnen Wirbels gemacht. Die Bilder sind jeweils 512x512 Pixel groß und jedes Pixel wird durch einen 16-Bit Intensitätswert kodiert. Die verwendeten Bilder der Wirbelsäule sind in Abbildung 4 und das Bild des Wirbels in Abbildung 5 dargestellt und sollen im weiteren Verlauf mit Bild1, Bild2 und Bild3 adressiert werden. Abbildung 4: Zeigt die in dieser Arbeit verwendeten Aufnahmen der menschlichen Wirbelsäule mittels Magnetresonanztomographie (Links / Bild1 und Mitte / Bild2) und eine schematische Darstellung der menschlichen Wirbelsäule (Rechts). In dem linken Bild ist nur der untere Teil der Wirbelsäule, daher die Lendenwirbelsäule abgebildet, die in der schematischen Darstellung durch gelbe und grüne Wirbel gekennzeichnet ist. In dem mittleren Bild ist die gesamte Wirbelsäule zu sehen. Abbildung 5: Zeigt die MRI-Photographie des Wirbels (Bild3) und eine schematische Darstellung des selbigen.

16 Die zu untersuchenden Bilder bestehen aus 512x512, also Pixeln, so dass der Datenraum der zu clusternden Bildpunkte sehr groß ist. Da diese Datenpunkte auf Grund ihrer Intensität gruppiert werden sollen, bietet es sich an, den Clustering-Prozess auf dem Histogramm des Bildes, bzw. nur auf den vorkommenden Grauwerten, auszuführen. Jedes der Pixel in einem MRI-Bild entspricht einem 16 Bit Grauwert, so dass maximal 2 16, also verschiedene Grauwerte möglich sind. In der Realität werden natürlich weit weniger verwendet, so dass eine erhebliche Reduzierung des Datenraumes vollzogen wird. Für das in Abbildung 4 und 5 dargestellten MRI-Bilder, die zum Testen der Algorithmen verwendet wurden, treten für Bild1 1328, für Bild und für Bild verschiedene Intensitätswerte auf. Dadurch ist der Datenraum erheblich reduziert und die Performance der Algorithmen gesteigert. Die zugehörigen Histogramme der Bilder, auf denen das Clustering ausgeführt wird, sind in Abbildung 6 dargestellt. Abbildung 6: Zeigt die zu Bild1-3 gehörenden Histogramme. Dabei ist das Histogramm links Bild1, das Mittlere Bild2 und das Rechte Bild3 zugeordnet. 4.2 Vorgehen Im Folgenden soll das hier durchgeführte Vorgehen zur automatischen Bildanalyse, in diesem Fall Segmentierung von Knochen, mittels dem k-means Algorithmus auf den in 4.1 vorgestellten Bilddaten beschrieben werden. In einem ersten Schritt werden Vorverarbeitungsschritte auf den Bilddaten ausgeführt (siehe Kapitel 4.2.1), um die Segmentierung des Bildes in homogene Regionen zu erleichtern. Nachdem die Bilder entsprechend präpariert sind, wird der k-means Algorithmus in seinen unterschiedlichen Variationen (4.2.2) auf das zugehörige Histogramm des Bildes angewendet, um die homogenen Regionen und die optimale Anzahl an Cluster zu ermitteln. In einem letzten Schritt werden die Ergebnisse mit Nachbearbeitungsschritten (4.2.3) bearbeitet, um die Ergebnisse für weitere Analyseverfahren vorzubereiten Vorverarbeitungsschritte Die auf dem Bild durchgeführten Vorverarbeitungsschritte, beschränken sich auf die einfache Gaußglättung mit einem sogenannten Gaußfilter [18]. Diese Art von Vorbereitung wird im Allgemeinen genutzt um sogennantes Rauschen in einem Bild zu unterdrücken. Das Ergebnis des Clusterings ändert sich durch die Anwendung eines Gaußfilters in der Art, dass vereinzelte Pixelfragmente in ihre Umgebung eingebettet werden und so zum Beispiel Pixelfragmente im Hintergrund nicht fälschlicherweise einem anderen Cluster zugeordnet werden, als dem Hintergrund. Als Parameter für die Gaußglättung hat sich ein 9x9 Filter mit einem Sigmawert von 1.5 als praktikabel erweisen. Zudem wird der Datenraum durch die Angleichung der Intensitätswerte in Abhängigkeit ihrer Umgebung nochmals verkleinert. So besteht das Histogramm nach Anwenden eines Gaußfilters für Bild1 noch aus 1232, für Bild2 aus 1301 und für Bild3 aus 1292 verschiedenen Grauwerten.

17 4.2.2 Anwendung des k-means Der k-means Algorithmus wird in allen drei Versionen auf das Histogramm des geglätteten Ausgangsbildes (Abschnitt 4.1) angewendet. Dabei wird die Anzahl der Cluster solange erhöht, bis das ellbow-kriterium erfüllt ist, also die optimale Anzahl der Cluster gefunden ist, die jedoch mindestens drei entsprechen muss (vgl. Abschnitt 3.4). Diese Anzahl sollte einer Segmentierung des Bildes entsprechen, die weder über- noch untersegmentiert ist. Nach Anwendung des k-means Algorithmus sollte das Bild also auf Grund der Intensitätswerte der Pixel in Regionen segmentiert sein. Eins dieser Segmente soll dabei zu den Knochen im MRI- Bild korrespondieren. Da Knochen in MRI-Bildern etwas dunkler sind, als andere Strukturen, liegt der Wert des Centroids des Knochenclusters zwischen dem des Hintergrunds und von anderen Strukturen, so dass eine Beschränkung für folgende Nachbearbeitungsschritte nur auf das Knochencluster angewendet werden können Nachbearbeitungsschritte Nachdem die Segmentierung des Bildes abgeschlossen ist, wird ein morphologisches Opening angewendet um irrtümlich als Knochen segmentierte Bereiche aus dem Knochencluster zu entfernen. Als strukturierendes Element hat sich ein Kreis als effektiv herausgestellt. Der Radius des Kreises hat starken Einfluss auf die Güte des Ergebnisses des morphologischen Openings und wie in Kapitel 5 beschrieben, kann nicht für jedes Bild der gleiche Wert benutzt werden. So wird für die vollautomatisierte Bildsegmentierung zwar ein gemittelter Wert über die optimalen Radien für die drei Bilder benutzt, allerdings liefert dieser nicht für jedes Bild die optimalen Ergebnisse. Die Anwendung des k-means Algorithmus auf ein geglättetes Bild und die anschließende Ausführung eines morphologischen Openings auf das Knochencluster liefert zum Teil schon sehr genaue Ergebnisse. Allerdings sollte die resultierende Segmentierung als Eingabe für ein weiteres angekoppeltes Verfahren dienen, z.b. active conturs [18], um die Resultate noch genauer werden zu lassen. Dafür müsste das Knochencluster aufgrund von zusammenhängenden Regionen in einzelne Knochen segmentiert werden und die zusammenhängenden Kanten eines Knochens als Eingabe für active contours dienen.

18 5 Ergebnisse Wie Tabelle 3 zeigt, liegen die Clusteringfehler für alle drei Varianten des k-means Algorithmus sehr nah beieinander. Jeder der drei Varianten liefert als optimalen Wert für die Clusteranzahl den Wert 3. Allerdings sind Laufzeiten für die einzelnen Algorithmen stark unterschiedlich, wie Tabelle 4 belegt. # Cluster Clusteringfehler k-means Clusteringfehler global k-means Clusteringfehler fast global k-means Tabelle 3: Der quadratische Clusteringfehler für die drei Varianten des k-means Algorithmus angewendet auf die Bilddaten für Bild1 aus Kapitel 4.1. Algorithmus Laufzeit (sek) k-means global k-means fast global k-means Tabelle 4: Laufzeit der drei Verfahren zur Findung der optimalen Anzahl an Cluster und berechnen des Clusteringergebnisses für Bild1 aus Kapitel 4.1. Da es in der Theorie möglich ist, dass der k-means Algorithmus in seiner Grundversion aufgrund einer zufälligen Initialisierung der Clusterzentren ein lokales Maximum berechnet, das sich erheblich von dem globalen Optimum für den Clusteringfehler unterscheidet und der globale k-means Algorithmus, der zwar garantiert das globale Optimum berechnet, aber sehr langsam ist, soll für die folgenden Analysen der fast global k-means Algorithmus verwendet werden, der einen guten Kompromiss der beiden Ansätze darstellt. Die schrittweisen Ergebnisse der Bildsegmentierung unter Verwendung des fast global k- means Algorithmus auf Bild1 aus Kapitel 4.1 ist in Abbildung 7 dargestellt. Bild (ii) aus Abbildung 8, das nur das Cluster mit den Knochen zeigt, weist aufgrund der verschiedenen Intensitätswerte an Kanten viele Artefakte auf, die in Wirklichkeit nicht zu Knochen korrespondieren. Diese wurden wie in erwähnt mit Hilfe des morphologischen Openings entfernt, so dass das Ergebnis, sehr deutlich die Einzelnen Wirbel der Wirbelsäule darstellt. Zusätzlich sind im linken Teil dieses Bildes Artefakte, die auch nicht durch das morphologische Opening beseitigt werden können und nicht zu Knochen korrespondieren. Daher lässt sich zusammenfassend sagen, dass die Wirbelsäule in diesem Bild gut durch den fast global k-means Algorithmus zu segmentieren ist, jedoch die Segmentierung nicht vollständig korrekt ist. Die Kanten der gefundenen Segmente (vgl. Bild (iv) in Abbildung 7) müssten in einem weiteren Schritt als Initialisierung für das active contours Verfahren benutzt werden, um die zugehörigen Wirbel im Ausgangsbild als Segmente markieren zu können.

19 Abbildung 7: Zeigt schrittweise die Ergebnisse bei dem Versuch das Ausgangsbild 1 aus Kapitel 4.1 automatisch zu segmentieren. (i) Oben links sind die Ergebnisse des fast global k-means Algorithmus auf das geglättete Ausgangsbild angewendet Das Resultat sind drei Cluster, die jeweils in der Farbe des jeweiligen Centroids eingefärbt sind. Das Bild (ii) oben rechts zeigt die Visualisierung des Knochenclusters auf dem das morphologische Opening (Kapitel 4.2.3) als Nachbearbeitung angewendet wurde. Das Ergebnis dieses Prozesses ist (iii) unten links dargestellt. Auf dieses Bild wurde in einem letzten Schritt eine Kantendetektion ausgeführt. Das Resultat ist (iv) unten rechts abgebildet und kann als Eingabe für ein active contours Verfahren dienen. Das Resultat für Bild2 aus Kapitel 4.1 ist in Abbildung 8 und für Bild3 in Abbildung 9 dargestellt. Wie in Abbildung 8 zu erkennen ist, ist die Wirbelsäule zwar vollständig im Knochencluster enthalten, aber durch das morphologische Opening, das für Bild1 gute Resultate lieferte, selektiert hier ein Teil der Knochen aus dem Cluster heraus. Für Bild3 tritt, wie Abbildung 9 zeigt, der umgekehrte Fall ein, dass noch mehr Fragmente im Bild existieren, die nicht zu Knochen korrespondieren und durch höhere Werte beim morphologischen Opening gelöscht werden könnten. Abbildung 8: Die Ergebnisse der Segmentierung des Knochenclusters, das mit fast global k-means segmentiert wurde (links), das morphologische Opening angewendet auf die Segmentierung (mitte) und das zugehörige Kantenbild (rechts).

20 Abbildung 9: Die Ergebnisse der Segmentierung des Knochenclusters, das mit fast global k-means segmentiert wurde (links) und das zugehörige Kantenbild (rechts). Auf Grund der vorliegenden Ergebnisse lässt sich feststellen, dass eine automatisierte Version des morphologischen Openings schwer zu realisieren ist. Einstellungen, die für Bild1 gute Resultate liefern, liefern für andere Bilddaten suboptimale Ergebnisse, da die Güte der Ergebnisse von der Dicke der Knochen, sowie den Fragmenten abhängt, die irrtümlich als Knochen geclustert werden. Eine manuell angepasste Version der Parameter liefert die in Abbildung 10 dargestellten Ergebnisse für die drei Bilder mit dem hier vorgestellten Verfahren. Abbildung 10: Zeigt die manuell nach Richtigkeit markierten Ergebnisse für Bild1 (links), Bild2 (Mitte) und Bild3 (rechts). Grün markierte Segmente bedeuten dabei, dass es sich bei den Segmenten auch in Wirklichkeit um Knochen handelt und rot markierte Segmente symbolisieren falsch als Knochen erkannte Segmente. Abschließend lässt sich also sagen, dass der k-means Algorithmus in Kopplung mit morphologischem Opening schon gute Resultate für die Segmentierung eines Bildes liefert. Die Parametereinstellungen für das morphologische Opening jedoch von Aufnahme zu Aufnahme variieren, um optimale Ergebnisse zu erhalten. Dies bildet zugleich den Schwachpunkt in einer vollautomatisierten Bildsegmentierung. Die Ergebnisse würden generell noch weiter verbessert werden, wenn die einzelnen Kanten der Knochen jeweils als Eingabe für ein active contours-verfahren genutzt werden würden.

Data Mining und Knowledge Discovery in Databases

Data Mining und Knowledge Discovery in Databases Data Mining und Knowledge Discovery in Databases Begriffsabgrenzungen... Phasen der KDD...3 3 Datenvorverarbeitung...4 3. Datenproblematik...4 3. Möglichkeiten der Datenvorverarbeitung...4 4 Data Mining

Mehr

Einführung in das Data Mining Clustering / Clusteranalyse

Einführung in das Data Mining Clustering / Clusteranalyse Einführung in das Data Mining Clustering / Clusteranalyse Sascha Szott Fachgebiet Informationssysteme HPI Potsdam 21. Mai 2008 Teil I Einführung Clustering / Clusteranalyse Ausgangspunkt: Menge O von Objekten

Mehr

Künstliche Intelligenz Dirk Krechel SS 2009

Künstliche Intelligenz Dirk Krechel SS 2009 Künstliche Intelligenz Dirk Krechel SS 2009 Überblick über das Modul 1. Einführung 2. Symbolische Verfahren Logik Aussagenlogik Prädikatenlogik Horn Logik Prolog 3. Suchen und Bewerten Problemlösen durch

Mehr

Exploration und Klassifikation von BigData

Exploration und Klassifikation von BigData Exploration und Klassifikation von BigData Inhalt Einführung Daten Data Mining: Vorbereitungen Clustering Konvexe Hülle Fragen Google: Riesige Datenmengen (2009: Prozessieren von 24 Petabytes pro Tag)

Mehr

Termin3 Klassifikation multispektraler Daten unüberwachte Verfahren

Termin3 Klassifikation multispektraler Daten unüberwachte Verfahren Ziel Termin3 Klassifikation multispektraler Daten unüberwachte Verfahren Einteilung (=Klassifikation) der Pixel eines multispektralen Datensatzes in eine endliche Anzahl von Klassen. Es sollen dabei versucht

Mehr

Seminar Komplexe Objekte in Datenbanken

Seminar Komplexe Objekte in Datenbanken Seminar Komplexe Objekte in Datenbanken OPTICS: Ordering Points To Identify the Clustering Structure Lehrstuhl für Informatik IX - Univ.-Prof. Dr. Thomas Seidl, RWTH-Aachen http://www-i9.informatik.rwth-aachen.de

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Ausarbeitung zum Thema Approximationsalgorithmen im Rahmen des Fachseminars 24. Juli 2009 Robert Bahmann robert.bahmann@gmail.com FH Wiesbaden Erstellt von: Robert Bahmann Zuletzt berarbeitet von: Robert

Mehr

Clustering mit dem K-Means-Algorithmus (Ein Experiment)

Clustering mit dem K-Means-Algorithmus (Ein Experiment) Clustering mit dem K-Means- (Ein Experiment) Andreas Runk 7. März 2013 Index 1 2 3 4 5 Andreas Runk Clustering mit dem K-Means- 2/40 Ziele: des K-Means Finde/erstelle geeignetes Testcorpus möglichst gute

Mehr

Vorbereitungsaufgaben

Vorbereitungsaufgaben Praktikum Bildverarbeitung / Bildinformationstechnik Versuch BV 4 / BIT 3: Mustererkennung Paddy Gadegast, CV00, 160967 Alexander Opel, CV00, 16075 Gruppe 3 Otto-von-Guericke Universität Magdeburg Fakultät

Mehr

Kompakte Graphmodelle handgezeichneter Bilder

Kompakte Graphmodelle handgezeichneter Bilder Kompakte Graphmodelle handgezeichneter Bilder Einbeziehung in Authentizierung und Bilderkennung Inhaltsverzeichnis Seminar Mustererkennung WS 006/07 Autor: Stefan Lohs 1 Einleitung 1 Das graphische Modell.1

Mehr

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus

Mehr

9th NEMO-SpectroNet Collaboration Forum

9th NEMO-SpectroNet Collaboration Forum 9th NEMO-SpectroNet Collaboration Forum Jena, 15.12.2010 Color and Multi Spectral Imaging An Overview Dr. Ing. Thomas Fahlbusch, PhotonicNet GmbH, Hannover Farbaufnahme 1-Chipkamera Bayer Farbmosaik Chips

Mehr

Informatik-Sommercamp 2012. Mastermind mit dem Android SDK

Informatik-Sommercamp 2012. Mastermind mit dem Android SDK Mastermind mit dem Android SDK Übersicht Einführungen Mastermind und Strategien (Stefan) Eclipse und das ADT Plugin (Jan) GUI-Programmierung (Dominik) Mastermind und Strategien - Übersicht Mastermind Spielregeln

Mehr

Multivariate Statistik

Multivariate Statistik Hermann Singer Multivariate Statistik 1 Auflage 15 Oktober 2012 Seite: 12 KAPITEL 1 FALLSTUDIEN Abbildung 12: Logistische Regression: Geschätzte Wahrscheinlichkeit für schlechte und gute Kredite (rot/blau)

Mehr

Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY

Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY Data Cube On-line Analytical Processing (OLAP). Einführung Ziel: Auffinden interessanter Muster in großen Datenmengen 2. Aggregation in SQL, GROUP BY 3. Probleme mit GROUP BY 4. Der Cube-Operator! Formulierung

Mehr

Zeichnen von Graphen. graph drawing

Zeichnen von Graphen. graph drawing Zeichnen von Graphen graph drawing WS 2006 / 2007 Gruppe: D_rot_Ala0607 Christian Becker 11042315 Eugen Plischke 11042351 Vadim Filippov 11042026 Gegeben sei ein Graph G = (V; E) Problemstellung V E =

Mehr

Data Mining - Clustering. Sven Elvers

Data Mining - Clustering. Sven Elvers Agenda Data Mining Clustering Aktuelle Arbeiten Thesis Outline 2 Agenda Data Mining Clustering Aktuelle Arbeiten Thesis Outline 3 Data Mining Entdecken versteckter Informationen, Muster und Zusammenhänge

Mehr

Text Mining und CRM. Hans Hermann Weber Univ. Erlangen IMMD 8, den 12.09.03

Text Mining und CRM. Hans Hermann Weber Univ. Erlangen IMMD 8, den 12.09.03 Text Mining und CRM Hans Hermann Weber Univ. Erlangen IMMD 8, den 12.09.03 Was ist Textmining Unstrukturierte Daten (Text) anreichern mit Strukturinformation: Metadaten hinzufügen Struktur (Segmentinformation)

Mehr

Parallele und funktionale Programmierung Wintersemester 2013/14. 8. Übung Abgabe bis 20.12.2013, 16:00 Uhr

Parallele und funktionale Programmierung Wintersemester 2013/14. 8. Übung Abgabe bis 20.12.2013, 16:00 Uhr 8. Übung Abgabe bis 20.12.2013, 16:00 Uhr Aufgabe 8.1: Zeigerverdopplung Ermitteln Sie an folgendem Beispiel den Rang für jedes Listenelement sequentiell und mit dem in der Vorlesung vorgestellten parallelen

Mehr

Kompakte Graphmodelle handgezeichneter Bilder. Einbeziehung in Autentizierung und Bilderkennung

Kompakte Graphmodelle handgezeichneter Bilder. Einbeziehung in Autentizierung und Bilderkennung Kompakte Graphmodelle handgezeichneter Bilder Einbeziehung in Autentizierung und Bilderkennung Inhaltsverzeichnis 1 Einleitung Das graphische Model.1 Image Thinning................................. 3.

Mehr

Automatisierte Dossier- Erstellung mittels Text-Mining

Automatisierte Dossier- Erstellung mittels Text-Mining Automatisierte Dossier- Erstellung mittels Text-Mining Paul Assendorp Grundseminar 11.12.2014 Paul Assendorp Automatisierte Dossier-Erstellung 1 Gliederung Motivation Textmining Tools Aktueller Stand Ausblick

Mehr

Vorlesung 3 MINIMALE SPANNBÄUME

Vorlesung 3 MINIMALE SPANNBÄUME Vorlesung 3 MINIMALE SPANNBÄUME 72 Aufgabe! Szenario: Sie arbeiten für eine Firma, die ein Neubaugebiet ans Netz (Wasser, Strom oder Kabel oder...) anschließt! Ziel: Alle Haushalte ans Netz bringen, dabei

Mehr

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector 7.4 Analyse anhand der SQL-Trace 337 7.3.5 Vorabanalyse mit dem Code Inspector Der Code Inspector (SCI) wurde in den vorangegangenen Kapiteln immer wieder erwähnt. Er stellt ein paar nützliche Prüfungen

Mehr

Begriffsbestimmung CRISP-DM-Modell Betriebswirtschaftliche Einsatzgebiete des Data Mining Web Mining und Text Mining

Begriffsbestimmung CRISP-DM-Modell Betriebswirtschaftliche Einsatzgebiete des Data Mining Web Mining und Text Mining Gliederung 1. Einführung 2. Grundlagen Data Mining Begriffsbestimmung CRISP-DM-Modell Betriebswirtschaftliche Einsatzgebiete des Data Mining Web Mining und Text Mining 3. Ausgewählte Methoden des Data

Mehr

Elemente der Analysis II

Elemente der Analysis II Elemente der Analysis II Kapitel 3: Lineare Abbildungen und Gleichungssysteme Informationen zur Vorlesung: http://www.mathematik.uni-trier.de/ wengenroth/ J. Wengenroth () 15. Mai 2009 1 / 35 3.1 Beispiel

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

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Algorithmen und deren Programmierung Prof. Dr. Nikolaus Wulff Definition Algorithmus Ein Algorithmus ist eine präzise formulierte Handlungsanweisung zur Lösung einer gleichartigen

Mehr

Morphologie auf Binärbildern

Morphologie auf Binärbildern Morphologie auf Binärbildern WS07 5.1 Konen, Zielke WS07 5.2 Konen, Zielke Motivation Aufgabe: Objekte zählen Probleme: "Salt-&-Pepper"-Rauschen erzeugt falsche Objekte Verschmelzen richtiger Objekte durch

Mehr

Integration geometrischer und fotogrammetrischer Information zum Wiederfinden von Bildern

Integration geometrischer und fotogrammetrischer Information zum Wiederfinden von Bildern Integration geometrischer und fotogrammetrischer Information zum Wiederfinden von Bildern Björn Burow SE Mustererkennung in Bildern und 3D-Daten Lehrstuhl Graphische Systeme BTU Cottbus Inhaltsübersicht

Mehr

Teil II. Nichtlineare Optimierung

Teil II. Nichtlineare Optimierung Teil II Nichtlineare Optimierung 60 Kapitel 1 Einleitung In diesem Abschnitt wird die Optimierung von Funktionen min {f(x)} x Ω betrachtet, wobei Ω R n eine abgeschlossene Menge und f : Ω R eine gegebene

Mehr

2. Deskriptive Statistik 2.1. Häufigkeitstabellen, Histogramme, empirische Verteilungsfunktionen

2. Deskriptive Statistik 2.1. Häufigkeitstabellen, Histogramme, empirische Verteilungsfunktionen 4. Datenanalyse und Modellbildung Deskriptive Statistik 2-1 2. Deskriptive Statistik 2.1. Häufigkeitstabellen, Histogramme, empirische Verteilungsfunktionen Für die Auswertung einer Messreihe, die in Form

Mehr

Kapitel 9. Kombination von Vektor- und Rasterdaten. Rasterdaten. 3. Transformationen des Formats. 4. Kombinierte Auswertungen

Kapitel 9. Kombination von Vektor- und Rasterdaten. Rasterdaten. 3. Transformationen des Formats. 4. Kombinierte Auswertungen LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Kapitel 9 Kombination von Vektor- und Rasterdaten Skript zur Vorlesung Geo-Informationssysteme Wintersemester 2011/12 Ludwig-Maximilians-Universität

Mehr

CLARANS. Semesterprojekt im Fach Wissensexktraktion / Data Mining, Hochschule Wismar, Studiengang Multimedia Engineering, Sommersemester 2013

CLARANS. Semesterprojekt im Fach Wissensexktraktion / Data Mining, Hochschule Wismar, Studiengang Multimedia Engineering, Sommersemester 2013 CLARANS Semesterprojekt im Fach Wissensexktraktion / Data Mining, Hochschule Wismar, Studiengang Multimedia Engineering, Sommersemester 2013 Daniel Schmidt Mohamed Ibrahim Sven Lautenschläger Inhaltsverzeichnis

Mehr

Histogramme in der Datenbankoptimierung. Marian Marx 26.06.2008

Histogramme in der Datenbankoptimierung. Marian Marx 26.06.2008 Histogramme in der Datenbankoptimierung Marian Marx 26.06.2008 Inhaltsverzeichnis 1. Histogramme im Allgemeinen 1.1 Definition Histogramm 1.2 Beispiel Histogramm 2. Histogramme in der Datenbankoptimierung

Mehr

Data Mining-Modelle und -Algorithmen

Data Mining-Modelle und -Algorithmen Data Mining-Modelle und -Algorithmen Data Mining-Modelle und -Algorithmen Data Mining ist ein Prozess, bei dem mehrere Komponenten i n- teragieren. Sie greifen auf Datenquellen, um diese zum Training,

Mehr

Perzentile mit Hadoop ermitteln

Perzentile mit Hadoop ermitteln Perzentile mit Hadoop ermitteln Ausgangspunkt Ziel dieses Projektes war, einen Hadoop Job zu entwickeln, der mit Hilfe gegebener Parameter Simulationen durchführt und aus den Ergebnissen die Perzentile

Mehr

Bedienung von BlueJ. Klassenanzeige

Bedienung von BlueJ. Klassenanzeige Im Folgenden werden wichtige Funktionen für den Einsatz von BlueJ im Unterricht beschrieben. Hierbei wird auf den Umgang mit Projekten, Klassen und Objekten eingegangen. Abgeschlossen wird dieses Dokument

Mehr

Logische Verknüpfungen. while-schleifen. Zahlendarstellung auf dem Computer. Formatierung von Zahlen in MATLAB.

Logische Verknüpfungen. while-schleifen. Zahlendarstellung auf dem Computer. Formatierung von Zahlen in MATLAB. Logische Verknüpfungen. while-schleifen. Zahlarstellung auf dem Computer. Formatierung von Zahlen in MATLAB. Logische Verknüpfungen In der letzten Sitzung haben wir kennengelernt, wie wir Zahlen mit Operationen

Mehr

Umsetzung von DEA in Excel

Umsetzung von DEA in Excel Umsetzung von DEA in Excel Thorsten Poddig Armin Varmaz 30. November 2005 1 Vorbemerkungen In diesem Dokument, das als Begleitmaterial zum in der Zeitschrift,,Controlling, Heft 10, 2005 veröffentlichten

Mehr

Computer Vision: Optische Flüsse

Computer Vision: Optische Flüsse Computer Vision: Optische Flüsse D. Schlesinger TUD/INF/KI/IS Bewegungsanalyse Optischer Fluss Lokale Verfahren (Lukas-Kanade) Globale Verfahren (Horn-Schunck) (+ kontinuierliche Ansätze: mathematische

Mehr

Analyse alt- und mittelpaläolithischer Steinartefaktinventare mittels Parallelkoordinatenplots

Analyse alt- und mittelpaläolithischer Steinartefaktinventare mittels Parallelkoordinatenplots Einleitung Analyse alt- und mittelpaläolithischer Steinartefaktinventare mittels Parallelkoordinatenplots von Irmela Herzog Im Rahmen der Herbsttagung der AG DANK (Datenanalyse und Numerische Klassifikation)

Mehr

Bildmerkmalssuche. Seminar Computational Photography. Visual Computing Department of Computer Science

Bildmerkmalssuche. Seminar Computational Photography. Visual Computing Department of Computer Science Bildmerkmalssuche Seminar Computational Photography EINFÜHRUNG 2 Einführung Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens Erkennen von Objekten auf dem Bild oder in einer Bildsequenz anhand

Mehr

Maschinelles Lernen und Data Mining: Methoden und Anwendungen

Maschinelles Lernen und Data Mining: Methoden und Anwendungen Maschinelles Lernen und Data Mining: Methoden und Anwendungen Eyke Hüllermeier Knowledge Engineering & Bioinformatics Fachbereich Mathematik und Informatik GFFT-Jahrestagung, Wesel, 17. Januar 2008 Knowledge

Mehr

SYN Grundlagen Algorithmen Anwendung FIN. Anomalieerkennung. UnFUG WS2011/2012. Alexander Passfall Hochschule Furtwangen

SYN Grundlagen Algorithmen Anwendung FIN. Anomalieerkennung. UnFUG WS2011/2012. Alexander Passfall <alex@passfall.de> Hochschule Furtwangen 1/23 UnFUG WS2011/2012 Alexander Passfall Hochschule Furtwangen 3. November 2011 2/23 Inhalt 1 Grundlagen Typen Funktionsweise 2 Algorithmen Outlier Detection Machine Learning 3 Anwendung

Mehr

Data-Mining: Ausgewählte Verfahren und Werkzeuge

Data-Mining: Ausgewählte Verfahren und Werkzeuge Fakultät Informatik Institut für Angewandte Informatik Lehrstuhl Technische Informationssysteme Data-Mining: Ausgewählte Verfahren und Vortragender: Jia Mu Betreuer: Dipl.-Inf. Denis Stein Dresden, den

Mehr

ChangePoint-Analysen - ein Überblick

ChangePoint-Analysen - ein Überblick ChangePoint-Analysen - ein Überblick Gliederung Motivation Anwendungsgebiete Chow Test Quandt-Andrews Test Fluktuations-Tests Binary Segmentation Recursive circular and binary segmentation algorithm Bayesscher

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f

Mehr

Morphologische Bildoperationen

Morphologische Bildoperationen Morphologische Bildoperationen Technische Universität München Fakultät für Informatik Forschungs- und Lehreinheit Informatik IX Gürcan Karakoc Betreuer: Suat Gedikli Abgabetermin: 10.04.2006 1 Inhaltsverzeichnis

Mehr

Proseminar - Data Mining

Proseminar - Data Mining Proseminar - Data Mining SCCS, Fakultät für Informatik Technische Universität München SS 2012, SS 2012 1 Data Mining Pipeline Planung Aufbereitung Modellbildung Auswertung Wir wollen nützliches Wissen

Mehr

Motivation. Themenblock: Data Preprocessing. Einsatzgebiete für Data Mining I. Modell von Gianotti und Pedreschi

Motivation. Themenblock: Data Preprocessing. Einsatzgebiete für Data Mining I. Modell von Gianotti und Pedreschi Motivation Themenblock: Data Preprocessing We are drowning in information, but starving for knowledge! (John Naisbett) Was genau ist Datenanalyse? Praktikum: Data Warehousing und Data Mining Was ist Data

Mehr

Informationstheorethisches Theorem nach Shannon

Informationstheorethisches Theorem nach Shannon Informationstheorethisches Theorem nach Shannon Beispiel zum Codierungsaufwand - Wiederholung: Informationstheorethisches Modell (Shannon) Sei x eine Aussage. Sei M ein Modell Wieviele Bits sind aussreichend,

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

Räumliches Data Mining

Räumliches Data Mining Räumliches Data Mining Spatial Data Mining Data Mining = Suche nach "interessanten Mustern" in sehr großen Datensätzen => explorative Datenanlyse auch: Knowledge Discovery in Databases (KDD) verbreitete

Mehr

Mathematik am Computer 7. Vorlesung: Matlab, Teil II

Mathematik am Computer 7. Vorlesung: Matlab, Teil II Mathematik am Computer 7. Vorlesung: Matlab, Teil II Helmut Harbrecht Universität Stuttgart 27. Januar 2011 Helmut Harbrecht (Universität Stuttgart) Mathematik am Computer 27. Januar 2011 1 / 35 Übersicht

Mehr

Von der UML nach C++

Von der UML nach C++ 22 Von der UML nach C++ Dieses Kapitel behandelt die folgenden Themen: Vererbung Interfaces Assoziationen Multiplizität Aggregation Komposition Die Unified Modeling Language (UML) ist eine weit verbreitete

Mehr

Numerisches Programmieren

Numerisches Programmieren Technische Universität München SS 2012 Institut für Informatik Prof Dr Thomas Huckle Dipl-Inf Christoph Riesinger Dipl-Math Alexander Breuer Dipl-Math Dipl-Inf Jürgen Bräckle Dr-Ing Markus Kowarschik Numerisches

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

Abschnitt: Algorithmendesign und Laufzeitanalyse Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher

Mehr

Mit KI gegen SPAM. Proseminar Künstliche Intelligenz

Mit KI gegen SPAM. Proseminar Künstliche Intelligenz Mit KI gegen SPAM Proseminar Künstliche Intelligenz SS 2006 Florian Laib Ausblick Was ist SPAM? Warum SPAM-Filter? Naive Bayes-Verfahren Fallbasiertes Schließen Fallbasierte Filter TiMBL Vergleich der

Mehr

Statistische Verfahren für das Data Mining in einem Industrieprojekt

Statistische Verfahren für das Data Mining in einem Industrieprojekt Statistische Verfahren für das Data Mining in einem Industrieprojekt Thorsten Dickhaus Forschungszentrum Jülich GmbH Zentralinstitut für Angewandte Mathematik Telefon: 02461/61-4193 E-Mail: th.dickhaus@fz-juelich.de

Mehr

Motivation. Themenblock: Klassifikation. Binäre Entscheidungsbäume. Ansätze. Praktikum: Data Warehousing und Data Mining.

Motivation. Themenblock: Klassifikation. Binäre Entscheidungsbäume. Ansätze. Praktikum: Data Warehousing und Data Mining. Motivation Themenblock: Klassifikation Praktikum: Data Warehousing und Data Mining Ziel Item hat mehrere Attribute Anhand von n Attributen wird (n+)-tes vorhergesagt. Zusätzliches Attribut erst später

Mehr

3.5 Datenbanktechniken zur Leistungssteigerung. 3. Clustering. 3.5 Datenbanktechniken zur Leistungssteigerung. 3. Clustering. Inhalt dieses Kapitels

3.5 Datenbanktechniken zur Leistungssteigerung. 3. Clustering. 3.5 Datenbanktechniken zur Leistungssteigerung. 3. Clustering. Inhalt dieses Kapitels 3.1 Einleitung 3. Clustering Inhalt dieses Kapitels Ziel des Clustering, Distanzfunktionen, Anwendungen, Typen von Algorithmen 3.2 Partitionierende Verfahren k-means, k-medoid, Expectation Maximization,

Mehr

Vergleich verschiedener Optimierungsansätze

Vergleich verschiedener Optimierungsansätze Vergleich verschiedener Optimierungsansätze Inhaltsverzeichnis 1 Einleitung... 2 2 Welchen Nutzen schafft munio?... 3 3 Analysen... 3 3.1 Schritt 1: Optimierung anhand von Indizes... 3 3.2 Schritt 2: Manuell

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Computergrafik Bilder, Grafiken, Zeichnungen etc., die mithilfe von Computern hergestellt oder bearbeitet werden, bezeichnet man allgemein als Computergrafiken. Früher wurde streng zwischen Computergrafik

Mehr

Map Reduce on Hadoop Seminar SS09. Similarity Join. Tim Felgentreff, Andrina Mascher

Map Reduce on Hadoop Seminar SS09. Similarity Join. Tim Felgentreff, Andrina Mascher Map Reduce on Hadoop Seminar SS09 Similarity Join Tim Felgentreff, Andrina Mascher Gliederung 2!! Aufgabe!! Demo!! Algorithmus!! Performance!! Veränderte Aufgabenstellung:!! Vergleich mit 1 Seite!! Ausblick!!

Mehr

Telezentrische Meßtechnik

Telezentrische Meßtechnik Telezentrische Meßtechnik Beidseitige Telezentrie - eine Voraussetzung für hochgenaue optische Meßtechnik Autor : Dr. Rolf Wartmann, Bad Kreuznach In den letzten Jahren erlebten die Techniken der berührungslosen,

Mehr

Künstliche Neuronale Netze und Data Mining

Künstliche Neuronale Netze und Data Mining Künstliche Neuronale Netze und Data Mining Catherine Janson, icasus GmbH Heidelberg Abstract Der Begriff "künstliche Neuronale Netze" fasst Methoden der Informationstechnik zusammen, deren Entwicklung

Mehr

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling Approximationsalgorithmen: Klassiker I Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling VO Approximationsalgorithmen WiSe 2011/12 Markus Chimani

Mehr

Bioinformatik I (Einführung)

Bioinformatik I (Einführung) Kay Diederichs, Sommersemester 2015 Bioinformatik I (Einführung) Algorithmen Sequenzen Strukturen PDFs unter http://strucbio.biologie.unikonstanz.de/~dikay/bioinformatik/ Klausur: Fr 17.7. 10:00-11:00

Mehr

Methoden Quantitative Datenanalyse

Methoden Quantitative Datenanalyse Leitfaden Universität Zürich ISEK - Andreasstrasse 15 CH-8050 Zürich Telefon +41 44 635 22 11 Telefax +41 44 635 22 19 www.isek.uzh.ch 11. September 2014 Methoden Quantitative Datenanalyse Vorbereitung

Mehr

Übungspaket 19 Programmieren eigener Funktionen

Übungspaket 19 Programmieren eigener Funktionen Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame

Mehr

PPC und Data Mining. Seminar aus Informatik LV-911.039. Michael Brugger. Fachbereich der Angewandten Informatik Universität Salzburg. 28.

PPC und Data Mining. Seminar aus Informatik LV-911.039. Michael Brugger. Fachbereich der Angewandten Informatik Universität Salzburg. 28. PPC und Data Mining Seminar aus Informatik LV-911.039 Michael Brugger Fachbereich der Angewandten Informatik Universität Salzburg 28. Mai 2010 M. Brugger () PPC und Data Mining 28. Mai 2010 1 / 14 Inhalt

Mehr

Ideen der Informatik. Maschinelles Lernen. Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik

Ideen der Informatik. Maschinelles Lernen. Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik Ideen der Informatik Maschinelles Lernen Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik Übersicht Lernen: Begriff Beispiele für den Stand der Kunst Spamerkennung Handschriftenerkennung

Mehr

CloudMatic V1.0. Inhalt

CloudMatic V1.0. Inhalt CloudMatic V1.0 Inhalt Einleitung... 2 CCUs hinzufügen... 3 meine-homematic.de... 4 Eigenes VPN... 4 View Editor... 5 Übersicht... 5 Allgemeine Einstellungen... 6 Kanäle hinzufügen... 6 Spezielle Kanäle...

Mehr

The integration of business intelligence and knowledge management

The integration of business intelligence and knowledge management The integration of business intelligence and knowledge management Seminar: Business Intelligence Ketevan Karbelashvili Master IE, 3. Semester Universität Konstanz Inhalt Knowledge Management Business intelligence

Mehr

Data Mining Bericht. Analyse der Lebenssituation der Studenten. der Hochschule Wismar. Zur Veranstaltung. Business Intelligence

Data Mining Bericht. Analyse der Lebenssituation der Studenten. der Hochschule Wismar. Zur Veranstaltung. Business Intelligence Data Mining Bericht Analyse der Lebenssituation der Studenten der Hochschule Wismar Zur Veranstaltung Business Intelligence Eingereicht von: Mohamed Oukettou 108 208 Maxim Beifert 118 231 Vorgelegt von:

Mehr

Neuronale Netze, Fuzzy Control, Genetische Algorithmen. Prof. Jürgen Sauer. 5. Aufgabenblatt: Neural Network Toolbox 1

Neuronale Netze, Fuzzy Control, Genetische Algorithmen. Prof. Jürgen Sauer. 5. Aufgabenblatt: Neural Network Toolbox 1 Neuronale Netze, Fuzzy Control, Genetische Algorithmen Prof. Jürgen Sauer 5. Aufgabenblatt: Neural Network Toolbox 1 A. Mit Hilfe der GUI vom Neural Network erstelle die in den folgenden Aufgaben geforderten

Mehr

Künstliches binäres Neuron

Künstliches binäres Neuron Künstliches binäres Neuron G.Döben-Henisch Fachbereich Informatik und Ingenieurwissenschaften FH Frankfurt am Main University of Applied Sciences D-60318 Frankfurt am Main Germany Email: doeben at fb2.fh-frankfurt.de

Mehr

Computer Vision: 3D-Geometrie. D. Schlesinger () Computer Vision: 3D-Geometrie 1 / 17

Computer Vision: 3D-Geometrie. D. Schlesinger () Computer Vision: 3D-Geometrie 1 / 17 Computer Vision: 3D-Geometrie D. Schlesinger () Computer Vision: 3D-Geometrie 1 / 17 Lochkamera Modell C Projektionszentrum, Optische Achse, Bildebene, P Hauptpunkt (optische Achse kreuzt die Bildebene),

Mehr

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt - 17 - Die Frage ist hier also: Für welche x R gilt x = x + 1? Das ist eine quadratische Gleichung für x. Es gilt x = x + 1 x x 3 = 0, und man kann quadratische Ergänzung machen:... ( ) ( ) x x + = 3 +

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

13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems

13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems 13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems 13.1 Modellierung des Rucksackproblems 13.2 Lösung mit Greedy-Algorithmus 13.3 Lösung mit Backtracking 13.4 Lösung mit Dynamischer Programmierung

Mehr

Webseitennavigation mit dem Content-Management-System Imperia. Zentrum für Informationsverarbeitung Westfälische Wilhelms-Universität Münster

Webseitennavigation mit dem Content-Management-System Imperia. Zentrum für Informationsverarbeitung Westfälische Wilhelms-Universität Münster Webseitennavigation mit dem Content-Management-System Imperia Zentrum für Informationsverarbeitung Westfälische Wilhelms-Universität Münster 10. Januar 2006 Inhaltsverzeichnis 1. Einführung 4 2. Rubrikenstruktur

Mehr

Programmiertechnik II

Programmiertechnik II Analyse von Algorithmen Algorithmenentwurf Algorithmen sind oft Teil einer größeren Anwendung operieren auf Daten der Anwendung, sollen aber unabhängig von konkreten Typen sein Darstellung der Algorithmen

Mehr

A) Durchsuchen von Datenbanken im Internet durch Endnote

A) Durchsuchen von Datenbanken im Internet durch Endnote EINLEITUNG/ANWEISUNGEN ZU DIESEM TEXT Wir werden die obere Liste (File/ Edit usw.) benutzen, obwohl die meisten Funktionen auch möglich mit rechtem Mausklick, mit Kombinationen der Tastatur oder mit den

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt 10 21.12.2009

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt 10 21.12.2009 Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt 10 21.12.2009 Aufgabe 35: Thema: Singulärwertzerlegung und assoziierte Unterräume Sei A eine m n Matrix mit Rang r und A = UDV T ihre Singulärwertzerlegung.

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 5 26.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: Erläutern

Mehr

E-Mails zuordnen. Änderungen, Irrtümer und Druckfehler vorbehalten. Bearbeitet von Harald Borges. Stand April 2015 www.cobra.de

E-Mails zuordnen. Änderungen, Irrtümer und Druckfehler vorbehalten. Bearbeitet von Harald Borges. Stand April 2015 www.cobra.de E-Mails zuordnen Copyright 2015 cobra computer s brainware GmbH cobra Adress PLUS, cobra CRM PLUS, cobra CRM PRO und cobra CRM BI sind eingetragene Warenzeichen der cobra computer s brainware GmbH. Andere

Mehr

Lineare Modelle in R: Einweg-Varianzanalyse

Lineare Modelle in R: Einweg-Varianzanalyse Lineare Modelle in R: Einweg-Varianzanalyse Achim Zeileis 2009-02-20 1 Datenaufbereitung Wie schon in der Vorlesung wollen wir hier zur Illustration der Einweg-Analyse die logarithmierten Ausgaben der

Mehr

Extrema von Funktionen in zwei Variablen

Extrema von Funktionen in zwei Variablen Wirtschaftswissenschaftliches Zentrum Universität Basel Mathematik für Ökonomen 1 Dr. Thomas Zehrt Extrema von Funktionen in zwei Variablen Literatur: Gauglhofer, M. und Müller, H.: Mathematik für Ökonomen,

Mehr

Grundlagen der Verwendung von make

Grundlagen der Verwendung von make Kurzskript zum Thema: Grundlagen der Verwendung von make Stefan Junghans Gregor Gilka 16. November 2012 1 Einleitung In diesem Teilskript sollen die Grundlagen der Verwendung des Programmes make und der

Mehr

A-Plan 12.0. Zeiterfassung 2.0. Ausgabe 1.1. Copyright. Warenzeichenhinweise

A-Plan 12.0. Zeiterfassung 2.0. Ausgabe 1.1. Copyright. Warenzeichenhinweise A-Plan 12.0 Zeiterfassung 2.0 Ausgabe 1.1 Copyright Copyright 1996-2014 braintool software gmbh Kein Teil dieses Handbuches darf ohne ausdrückliche Genehmigung von braintool software gmbh auf mechanischem

Mehr

Unsupervised Kernel Regression

Unsupervised Kernel Regression 9. Mai 26 Inhalt Nichtlineare Dimensionsreduktion mittels UKR (Unüberwachte KernRegression, 25) Anknüpfungspunkte Datamining I: PCA + Hauptkurven Benötigte Zutaten Klassische Kernregression Kerndichteschätzung

Mehr

Proseminar - Data Mining

Proseminar - Data Mining Proseminar - Data Mining SCCS, Fakultät für Informatik Technische Universität München SS 2014, SS 2014 1 Data Mining: Beispiele (1) Hausnummererkennung (Klassifikation) Source: http://arxiv.org/abs/1312.6082,

Mehr

Wissenschaftliches Arbeiten mit dem Programm Microsoft Word

Wissenschaftliches Arbeiten mit dem Programm Microsoft Word Wissenschaftliches Arbeiten mit dem Programm Microsoft Word Ein Leitfaden und Ratgeber für Studierende der Hochschule Fulda des Fachbereichs Sozialwesen Inhaltsverzeichnis VORWORT... 1 1. EINRICHTEN DES

Mehr

Mustererkennung mit Baumautomaten

Mustererkennung mit Baumautomaten Mustererkennung mit Baumautomaten Eine Ausarbeitung von Gisse Alvarado für das Seminar Mustererkennung mit syntaktischen und graphbasierten Methoden bei Prof. Dr. W. Kurth/ Th. Mangoldt Cottbus 2006 Inhalt

Mehr

6. Künstliche Intelligenz

6. Künstliche Intelligenz 6.1. Turing-Test 6.2. Lernen In diesem Abschnitt besprechen wir wie man an Hand von Beispielen lernt, Objekte zu erkennen und verschiedene Dinge voneinander zu unterscheiden. Diese sogenannte Mustererkennung

Mehr

Varianzanalyse ANOVA

Varianzanalyse ANOVA Varianzanalyse ANOVA Johannes Hain Lehrstuhl für Mathematik VIII Statistik 1/23 Einfaktorielle Varianzanalyse (ANOVA) Bisher war man lediglich in der Lage, mit dem t-test einen Mittelwertsvergleich für

Mehr

Diese Anleitung bezieht sich auf FixFoto, V 3.40. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein.

Diese Anleitung bezieht sich auf FixFoto, V 3.40. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein. Pfade einstellen Stand: Dezember 2012 Diese Anleitung bezieht sich auf FixFoto, V 3.40. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein. Diese Anleitung soll zeigen, wie man Pfad-Favoriten

Mehr

Regressionsanalysen. Zusammenhänge von Variablen. Ziel der Regression. ( Idealfall )

Regressionsanalysen. Zusammenhänge von Variablen. Ziel der Regression. ( Idealfall ) Zusammenhänge von Variablen Regressionsanalysen linearer Zusammenhang ( Idealfall ) kein Zusammenhang nichtlinearer monotoner Zusammenhang (i.d.regel berechenbar über Variablentransformationen mittels

Mehr