Integration von Support Vector Machines in die objektbasierte...

10
52 Integration von Support Vector Machines in die objektbasierte Bildklassifizierung am Beispiel der Entwicklung eines Plug-Ins für eCognition Roland J. GRAF und Stefan WEGENKITTL Dieser Beitrag wurde nach Begutachtung durch das Programmkomitee als „reviewed paper“ angenommen. Zusammenfassung Support Vector Machines (SVMs) sind auf maschinellem Lernen basierende Klassifikato- ren die aufgrund ihres „gutmütigen“ Verhaltens prädestiniert zur Klassifizierung segmen- tierter Fernerkundungsbilder sind. Sie benötigen eine vergleichsweise geringe Anzahl von Trainingsdatensätzen aus denen dennoch komplexe Entscheidungsgrenzen extrahiert wer- den. Der Algorithmus betont die Fähigkeit zur Generalisierung und verhindert effizient das gefürchtete Übertraining des Klassifikators. Die Arbeit untersucht anhand eines neu entwi- ckelten eCognition Plug-Ins für SVMs die Anwendbarkeit zur automatisierten Klassifizie- rung unter der Prämisse einer einfachen Benutzbarkeit. Untersucht werden besonders auch die Parametrisierung von SVMs und die Optimierung des Klassifizierungsprozesses. 1 Einführung Das ständig steigende Datenvolumen und der Anspruch, aktuelle Bilddaten zeitnah, objek- tiv und im Ergebnis reproduzierbar zu interpretieren, zwingen vermehrt zu einer effizienten und weitgehend automatischen Verarbeitung der Bilddaten. Mit Methoden des maschinel- len Lernens werden aus qualitativ hochwertigen Rohbilddaten die für die jeweiligen Frage- stellungen wertvollen Informationen extrahiert. (Bild-)objekte werden dabei basierend auf Objektmerkmalen (aus Rohbilddaten abgeleitete Attribute) durch einen Klassifikator (classifier) bestehenden Klassen (Objektklassen) zuge- ordnet. Als Ergebnis der Klassifizierung entsteht die Klassifikation, welche von der jewei- ligen Anwendung und den daraus abgeleiteten Anforderungen abhängt (TÖNNIES 2005). 1.1 Merkmale zur Beschreibung der Objekte Mit den in einem Bild enthaltenen Spektralinformationen (pixelorientierte Primärmerkma- le) ist eine zweifelsfreie Klassenzuordnung der Bildpunkte nicht immer möglich. Eine vor- geschaltete Segmentierung des Bildes in Objekte als Zusammenfassung benachbarter Pixel entsprechend bestimmter Homogenitätskriterien erlaubt es aber, eine größere Anzahl zu- sätzlicher Sekundärmerkmale zu generieren, welche zu einer Verbesserung der Klassifizie- rung führen (HUANG & NI 2008). Deshalb hat sich in den letzten Jahren gerade bei der Verarbeitung geoinformatischer Bilddaten die objektbasierte Bildanalyse (object-based Strobl, J., Blaschke, T. & Griesebner, G. (Hrsg.) (2012): Angewandte Geoinformatik 2012. © Herbert Wichmann Verlag, VDE VERLAG GMBH, Berlin/Offenbach. ISBN 978-3-87907-520-1.

Transcript of Integration von Support Vector Machines in die objektbasierte...

Page 1: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

52

Integration von Support Vector Machines in die objektbasierte Bildklassifizierung am Beispiel der

Entwicklung eines Plug-Ins für eCognition

Roland J. GRAF und Stefan WEGENKITTL

Dieser Beitrag wurde nach Begutachtung durch das Programmkomitee als „reviewed paper“ angenommen.

Zusammenfassung

Support Vector Machines (SVMs) sind auf maschinellem Lernen basierende Klassifikato-ren die aufgrund ihres „gutmütigen“ Verhaltens prädestiniert zur Klassifizierung segmen-tierter Fernerkundungsbilder sind. Sie benötigen eine vergleichsweise geringe Anzahl von Trainingsdatensätzen aus denen dennoch komplexe Entscheidungsgrenzen extrahiert wer-den. Der Algorithmus betont die Fähigkeit zur Generalisierung und verhindert effizient das gefürchtete Übertraining des Klassifikators. Die Arbeit untersucht anhand eines neu entwi-ckelten eCognition Plug-Ins für SVMs die Anwendbarkeit zur automatisierten Klassifizie-rung unter der Prämisse einer einfachen Benutzbarkeit. Untersucht werden besonders auch die Parametrisierung von SVMs und die Optimierung des Klassifizierungsprozesses.

1 Einführung

Das ständig steigende Datenvolumen und der Anspruch, aktuelle Bilddaten zeitnah, objek-tiv und im Ergebnis reproduzierbar zu interpretieren, zwingen vermehrt zu einer effizienten und weitgehend automatischen Verarbeitung der Bilddaten. Mit Methoden des maschinel-len Lernens werden aus qualitativ hochwertigen Rohbilddaten die für die jeweiligen Frage-stellungen wertvollen Informationen extrahiert.

(Bild-)objekte werden dabei basierend auf Objektmerkmalen (aus Rohbilddaten abgeleitete Attribute) durch einen Klassifikator (classifier) bestehenden Klassen (Objektklassen) zuge-ordnet. Als Ergebnis der Klassifizierung entsteht die Klassifikation, welche von der jewei-ligen Anwendung und den daraus abgeleiteten Anforderungen abhängt (TÖNNIES 2005).

1.1 Merkmale zur Beschreibung der Objekte

Mit den in einem Bild enthaltenen Spektralinformationen (pixelorientierte Primärmerkma-le) ist eine zweifelsfreie Klassenzuordnung der Bildpunkte nicht immer möglich. Eine vor-geschaltete Segmentierung des Bildes in Objekte als Zusammenfassung benachbarter Pixel entsprechend bestimmter Homogenitätskriterien erlaubt es aber, eine größere Anzahl zu-sätzlicher Sekundärmerkmale zu generieren, welche zu einer Verbesserung der Klassifizie-rung führen (HUANG & NI 2008). Deshalb hat sich in den letzten Jahren gerade bei der Verarbeitung geoinformatischer Bilddaten die objektbasierte Bildanalyse (object-based

Strobl, J., Blaschke, T. & Griesebner, G. (Hrsg.) (2012): Angewandte Geoinformatik 2012. © Herbert Wichmann Verlag, VDE VERLAG GMBH, Berlin/Offenbach. ISBN 978-3-87907-520-1.

Page 2: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

Integration von Support Vector Machines in die objektbasierte Bildklassifizierung 53

image analysis – OBIA) als Spezialisierung innerhalb der Bilderkennung vermehrt durch-gesetzt (BLASCHKE 2010).

Die in Abb. 1 links dargestellte Karte, in der die Segmente jeweils einer bestimmten Klasse (Landnutzung) zugeordnet sind, stellt eine Klassifikation dar. Sind die Objekte durch ein-zelne oder durch die Kombination reellwertiger Merkmale beschreibbar, so lässt sich jedes Objekt als Merkmalsvektor in einem von den Merkmalen aufgespannten mehrdimensiona-len Merkmalsraum interpretieren. Im Idealfall bilden die Punkte gleicher Klassen im Merkmalsraum kompakte, mathematisch beschreibbare Punktwolken (siehe Abb. 1 rechts), aus denen beispielsweise verallgemeinerte Klassenvektoren oder Grenzflächen (etwa Hyperebenen), welche die Klassen separieren, abgeleitet werden.

Abb. 1: Segmentierte Karte mit acht Landnutzungsklassen und die Verteilung der Merk-malsvektoren im 3D-Merkmalsraum (LUCHT et al. 2009)

Eine höhere Merkmalsanzahl und die Relationen der Bildsegmente zueinander erleichtern nicht nur die Unterscheidung der Segmente, sondern erhöhen auch deutlich den algorithmi-schen Aufwand und damit die Komplexität der Klassifikatoren. Da die für Klassifikatoren wesentlichen Zusammenhänge einzelner Merkmale oder Merkmalskombinationen mit der Klassifikation selten linearer Natur sind, wird die Formulierung der Klassengrenzen bei steigender Datenkomplexität zunehmend schwieriger. Die im Folgenden behandelten SVMs sind eine Methode, solche komplexe Klassengrenzen darzustellen und aus Trai-ningsdaten automatisiert zu lernen.

2 Maschinelles Lernen mit Support Vector Machines

Support Vector Machines (VAPNIK & CHERVONENKIS 1974, VAPNIK 1998) bezeichnen ein mathematisches Verfahren der Mustererkennung um aus Trainingsdaten (Objekte und deren Merkmale) selbstständig Gesetzmäßigkeiten zu lernen und diese später zur Klassifizierung weiterer Daten (Objekte) zu nutzen. Dieser als maschinelles Lernen bezeichnete Prozess hat das Ziel, aus den Trainingsdaten möglichst generalisierend Zusammenhänge derart abzulei-ten, dass der Klassifizierer zu einem späteren Zeitpunkt unbekannte Daten mit geringst-möglichen Fehlern klassifizieren kann (CRISTIANINI & TAYLOR 2000, DUDA et al. 2000). Ist

Page 3: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

R. J. Graf und S. Wegenkittl 54

die Generalisierungsfähigheit groß, so setzt der Klassifikator die Trennfunktionen so an, dass ein optimaler Kompromiss zwischen der Fehlerrate bei den Trainingsdaten und der zu erwartenden Fehlerrate bei neuen, zu klassifizierenden Daten gefunden wird. Passen sich die Trennfunktionen zu stark oder zu wenig an die Trainingsdaten an, so geht die Klassifi-zierungsleistung verloren und eine Über- oder Unteranpassung (BISHOP 2006, BOSER et al. 1992) resultiert. SVMs betonen durch den verwendeten Lernalgorithmus im Gegensatz zu anderen Verfahren den Aspekt der Generalisierung und sind daher besonders robust gegen Überanpassung.

Dabei wird zunächst ohne jegliche statistische Annahmen bezüglich der Verteilung der Daten versucht, diese mittels Trennebenen (Hyperebenen) möglichst fehlerfrei voneinander zu trennen. Mit nur wenigen relevanten Randpunkten (sog. Stützvektoren, support vectors) der zu trennenden Klassen wird die Lage der Trennebene beschrieben. Die für die Lösung irrelevanten Punkte innerhalb der Punktwolken werden im Training eliminiert. Das Opti-malitätskriterium ist dabei die Identifikation von Stützvektoren, die den Abstand (optimal margin) zwischen Trennebene und nächstgelegenen Datenpunkten maximieren. Dieser in seiner Breite maximierte Trennbereich ist dadurch weitgehend frei von Vektoren aus den Trainingsdaten. Etwaige unvermeidbare Klassifizierungsfehler werden mit sogenannten Schlupfvariablen berücksichtigt, die falschklassifizierte Vektoren durch eine einfache Ge-wichtung (siehe Parameter C in Abschnitt 4.5) mehr oder weniger zulassen.

Zur Generalisierung dieses Ansatzes auf die in den meisten Anwendungen nötigen nicht-linearen Trennflächen (BISHOP 2006) bedienen sich SVMs einer sogenannten Kernelfunk-tion. Diese Funktion Φ transformiert die Daten zunächst in einen höherdimensionalen Raum Rn (siehe Abb. 2), in dem dann eine lineare Trennung versucht wird. Eine Kernel-funktion kann dabei als Repräsentant der Hyperebene im höherdimensionalen Merkmals-raum interpretiert werden (HEINERT 2010). Durch die implizite Integration dieser Trans-formation im Algorithmus – auch als Kernel-Trick bezeichnet – steigert sich die algorithmi-sche Komplexität nur geringfügig, während die Generalisierungsleistung und Klassifizie-rungsgeschwindigkeit beträchtlich zunehmen. Zur Anwendung kommen Linear-, Polynom-, Sigmoid- und RBF-Kernel (Radial Basis Function, siehe ABE 2010) sowie Kombinationen davon, die jeweils unterschiedliche Eigenschaften haben und eine individuelle Konfigura-tion verlangen.

Abb. 2: Lineare Trennung der Datensätze durch Transformation in einen höher-dimensionalen Raum: nicht linear separierbare Daten in R2 (links) werden in R3 transformiert (Bildmitte) und linear separiert. Die Hyperebene in R3 entspricht einer nicht-linearen Trennfunktion im Eingangsraum R2 (rechts).

Page 4: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

Integration von Support Vector Machines in die objektbasierte Bildklassifizierung 55

3 Implementierung einer SVM unter eCognition

Für die Evaluierung von SVMs zur Klassifizierung von Fernerkundungsbildern wurde eine Erweiterung für die Software eCognition implementiert.

3.1 eCognition und Definiens Developer XD

Die Verbreitung und Akzeptanz der Object Based Image Analysis (OBIA) in der Fern-erkundung ist unter anderem durch die parallel fortschreitende Entwicklung der vielfach eingesetzten Software eCognition von Trimble1 bedingt (BLASCHKE & LANG 2006, NAVULUR 2006), welche im medizinischen Bereich als Definiens Developer XD von Defi-niens2 entwickelt und vertrieben wird. Mit diesen Softwarepaketen können Bilder segmen-tiert und die hierarchisch organisierten Bildobjekte auf Basis der Objekteigenschaften ana-lysiert und weiterverarbeitet werden (DEFINIENS 2011).

Für die Entwicklung eigener Programmerweiterungen steht ein Software Development Kit (SDK) zur Verfügung. Mit ihm lassen sich Plug-Ins – auch als Components bezeichnet – entwickeln, die aus der Sicht des Benutzers völlig transparent in das Programmpaket inte-griert werden können. Technisch handelt es sich dabei um dynamisch nachladbare Biblio-theken (DLLs), die eine definierte Schnittstelle zur Verfügung stellen müssen.

Im Rahmen dieser Arbeit wurde für eCognition ein neues SVM Algorithm Plug-In entwi-ckelt, das eine individuelle Konfiguration der zugrunde liegenden Algorithmen der LibSVM (siehe Kapitel 3.2) auf die Datenbestände ermöglicht. Auf einen Vergleich mit der im Herbst 2011 von Trimble eingeführten Unterstützung von SVMs bzw. der mit Bordmitteln realisierbaren Merkmalsraumoptimierung musste aufgrund der in einigen Ver-suchen festgestellten Performanceproblemen mit den verwendeten Datensätzen und fehlen-der Konfigurationsmöglichkeiten verzichtet werden. Daher beziehen sich die Erkenntnisse in dieser Arbeit ausschließlich auf das neu erstellte SVM Plug-In.

3.2 Bibliothek LibSVM

LibSVM3 – für diese Arbeit wurde die Version 3.1 von April 2011 verwendet – ist eine Bibliothek und Werkzeugsammlung der beiden Autoren CHANG & LIN (2011). Die Biblio-thek ist samt Quelltexten in den Programmiersprachen C und Java frei verfügbar und bietet eine Anbindung an eine Reihe weiterer Frameworks, Programmier- bzw. Skriptsprachen, wie beispielsweise Python, C#/.NET. und MATLAB.

Die LibSVM Suite bietet gegenüber anderen frei verfügbaren Werkzeugen und Bibliothe-ken4 eine Reihe von Vorteilen. Neben der sehr guten Performance sprechen für LibSVM auch die Stabilität der Implementierung, die vielseitigen Parametrisierungsmöglichkeiten, die mitgelieferten Tools, die Verbreitung in unterschiedlichsten Anwendungen sowie die rege Unterstützung seitens der Community. 1 eCognition – http://www.ecognition.com/ (2012-01-20) – Trimble Navigation Ltd. 2 Definiens Developer XD – http://www.definiens.com (2012-01-20) – Definiens AG. 3 LIBSVM – http://www.csie.ntu.edu.tw/~cjlin/libsvm/ (2012-01-20). 4 Eine ausführliche Liste verfügbarer Support Vector Machine Bibliotheken findet sich unter

http://www.support-vector-machines.org/SVM_soft.html (2012-01-20).

Page 5: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

R. J. Graf und S. Wegenkittl 56

3.3 Implementierung eines SVM Plug-Ins

Zur Implementierung eines Plug-Ins wird mithilfe der Definiens Engine API (DEFINIENS

2008) eine sogenannte Algorithm Component entwickelt. Das Plug-In-DLL liefert optional alle Informationen zur Abhandlung eines etwaigen Benutzerdialogs, interagiert während eines Prozessablaufs mit der Hauptapplikation und hat Zugriff auf wesentliche Teile der hierarchisch organisierten Datenstrukturen innerhalb von eCognition. Der Kern des Plug-Ins besteht aus den Einsprungfunktionen:

AlgrInit: wird am Beginn des Prozessablaufs aufgerufen, AlgrExec: wird während des Prozessablaufs für jedes Objekt aufgerufen und AlgrDone: wird am Ende des Prozessablaufs von eCognition aufgerufen.

Innerhalb dieser drei Funktionen werden in Abhängigkeit des vom SVM-Plug-In festgeleg-ten Prozessmodus Train_and_Save oder Load_and_Classify unterschiedliche Methoden des Plug-Ins verwendet. Abb. 3 zeigt links den sequentiellen Ablauf der Methodenaufrufe zur Implementierung einer SVM Algorithm Component. Die Methodennamen sind weitge-hend selbsterklärend und beschreiben den Trainingsablauf (2. Spalte) und den Klassifizie-rungsablauf (3. Spalte). Zur Evaluierung und Weiterverarbeitung der Ergebnisse und zur Optimierung der Parametrisierung werden die Datensätze im LibSVM eigenen Datenformat exportiert und mit MATLAB weiterverarbeitet.

Abb. 3: Links: Ablauf des Trainings und der Klassifizierung innerhalb des SVM Algo-rithm Plug-In für eCognition. Rechts: Phasen eines SVM-basierten Mustererken-nungssystems.

Page 6: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

Integration von Support Vector Machines in die objektbasierte Bildklassifizierung 57

4 Praktische Anwendung von SVMs zur Klassifizierung

Der Ablauf einer SVM-basierten Klassifizierung verläuft in den Phasen Datenaufbereitung, Parametrisierung und Klassifizierung, die in mehreren Schritten sequentiell und/oder itera-tiv durchlaufen werden. Die Phasen eines Mustererkennungssystems werden in acht Teil-aufgaben zerlegt, wobei einige davon je nach Anforderung und zu klassifizierender Daten optional sind. Abb. 3 stellt rechts den in den folgenden Abschnitten auszugsweise diskutier-ten Ablauf symbolisch dar.

4.1 Auswahl der Datensätze

Es gibt keine allgemeingültigen Regeln, wie viele Datensätze pro Klasse notwendig sind, um zwei oder mehrere Klassen zu separieren, da dies von der Komplexität der Klassen-grenzen, den beschreibenden Merkmale und dem eingesetzten Klassifikator abhängt.

Als konventionelle Hilfestellung mag die Empfehlung gelten, so viele Trainings- und Test-datensätze wie möglich zu sammeln (CAMP-VALLS & BRUZZONE 2009). Die bei den meis-ten Klassifikatoren bestehende Gefahr, dass zu viele Trainingsdatensätze zu einem Overfit-ting führen, ist bei SVMs mit gut auf die Daten abgestimmten Kernelparameter nicht zu befürchten. Gegen eine grundsätzliche Maximierung der Anzahl der Trainingsdatensätze spricht jedoch die Prozessierungsdauer des Trainings, die unmittelbar von dieser Anzahl und der Trennfähigkeit der Merkmale (siehe Kapitel 4.3) abhängt.

4.2 Skalierung der Datensätze

Um alle Merkmale einheitlich zu gewichten, müssen sowohl die Merkmale der Trainings-daten als auch der später zu klassifizierenden Daten auf gleiche Skalenniveaus und Grö-ßenordnungen gebracht werden (HSU et al. 2010). Geeignete Merkmalstransformationen sind beispielsweise (i) eine Z-Transformation, die eine standardisierte (normierte) Vertei-lung aller Merkmalswerte zur Folge hat, (ii) eine lineare Skalierung, nach der alle Merk-malswerte in einem definierten Bereich liegen und (iii) eine Atan-Skalierung, nach der alle Merkmalswerte in einem Bereich von [-π/2,+π/2] liegen und vor allem die negativen Aus-wirkungen extremer Ausreißer wirkungsvoll gedämpft werden.

4.3 Auswahl der Merkmale

Die Darstellung der empirischen Verteilung der Merkmalswerte in jeder Klasse eignet sich gut zur Schätzung der Trennfähigkeit der einzelnen Merkmale. Im Idealfall überlappen sich die Dichten der einzelnen Klassen dabei bereits in einzelnen Merkmalen wenig. In der Kombination solcher Merkmale kann durch eine SVM dann besonders gut getrennt werden.

4.4 Auswahl des Kernels

Die Literatur (BISHOP 2006, CRISTIANINI & TAYLOR 2000, SHAWE-TAYLOR & CRISTIANINI

2004) bietet eine große Vielfalt von Kernelfunktionen. Diese werden oft über einfaches trial-and-error selektiert (CHAPELLE & VAPNIK 1999). HSU et al. (2010) als auch andere der genannten Quellen empfehlen insbesondere den RBF-Kernel aufgrund seiner vergleichs-weise einfachen Handhabung.

Page 7: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

R. J. Graf und S. Wegenkittl 58

Diese Empfehlung konnte empirisch bestätigt werden: Klassifizierungen mit Kernel-SVMs ergaben, dass der RBF-Kernel sowohl bei einfachen als auch komplexen Merkmalsvertei-lungen stabil und performant ist. Der Linear-Kernel steigert seine Leistung erst bei zuneh-mender Dimensionalität des Merkmalsraums. Eine ungünstige Festlegung der Kernelpara-meter führen bei Sigmoid- und Polynom-Kernel schnell dazu, dass der Lernalgorithmus der SVMs das Abbruchkriterium nur noch sehr langsam erreicht.

4.5 Parametrisierung von SVMs

Die Vermeidung von Überanpassung durch SVMs ist darin begründet, dass diese versu-chen, die Generalisierung zu maximieren und nicht – wie andere Klassifikatoren – die Feh-ler bei den Trainingsdaten zu minimieren. Voraussetzung dafür ist jedoch eine geeignete Parametrisierung der SVM und der Kernelfunktionen.

Bei SVMs mit RBF- oder Gauß-Kernel bestimmen beispielsweise der Parameter γ und das Fehlergewicht C als Stellgröße im Wesentlichen die Anpassungsfähigkeit der SVM an die Problemstellung (vgl. Abb. 4). Mit abnehmendem γ werden die Gauß-Glocken in die Breite gezogen. In Kombination mit einem kleinen Wert für C zur Erhöhung der Toleranz bzgl. Fehlklassifikationen wird die Trennebene nahezu linear. Ist γ zu groß gewählt, so legen sich die Gauß-Glocken eng an die Punkte. Es kommt zu keinen Fehlklassifikationen, jedoch zu einer Art Übertraining der SVM, da die Trainingsdaten exakt reproduziert werden. Ist die Kombination der Parameter C und γ aufeinander abgestimmt, so generalisiert die SVM gut und trennt die beiden Klassen erfolgreich.

Leider können in der Praxis aus den Daten weder der optimale Kerneltyp noch die optimale Parametrisierung vorhergesagt werden, denn „ ...the parameter C has no intuitive meaning.“ (SHAWE-TAYLOR & CRISTIANINI 2004, 225). Zielführend wenngleich numerisch aufwendig ist eine heuristische Parametersuche, bei der mit unterschiedlichen Parameterkombinatio-nen jeweils aus einer n-fachen Kreuzvalidierung das Cross Validation Accuracy (CVA, ABE, S. 2010) Maximum aus allen Konfigurationen berechnet wird.

Abb. 4: Einfluss der Parameter C und γ auf eine binäre Klassifikation. Links: γ zu klein, C zu klein. Mitte: γ zu groß, C passend. Rechts: γ passend, C passend.

Page 8: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

Integration von Support Vector Machines in die objektbasierte Bildklassifizierung 59

Abb. 5 zeigt ein Konturdiagramm, das jene γ- und C-Konfigurationen mit gleichem CVA mit Isolinien verbindet. Je nach Wahl der Parameter C und γ wird beim Trainingsvorgang eine CVA im Bereich von ≤ 45 % bis ≥ 85 % ausgewiesen. Die CVA-Maximum wurde bei C=26 und γ=2−3 erreicht (siehe Markierungskreuz). Eine Gegenüberstellung der CVA mit der Anzahl der Support-Vektoren (SV) belegt, dass jene Kombinationen mit der besten CVA auch die wenigsten SV benötigten. Dieser Effekt, der auch mit anderen Daten bestä-tigt wurde, lässt den Schluss zu, dass auch die Anzahl der SV als Indikator einer effizienten Klassifizierung herangezogen werden kann.

Abb. 5: Cross Validation Accuracy und Anzahl der Stützvektoren für 54.492 Vektoren

mit 42 Merkmalen aus 8 Klassen. C entspricht Cost, γ entspricht Gamma.

Eine heuristische Parameteroptimierung eignet sich am ehesten für Linear- oder RBFKer-nel. Wesentlicher Nachteil ist der hohe Rechenaufwand. Für das in Abb. 5 gerechnete Bei-spiel mit einer Schrittweite von γ = -6, -3…9, 12 und C = -12, 9…9, 12 müssen bei einer 5-fachen Kreuzvalidierung schon 9·7·5=315 Trainings- und Testdurchgänge gerechnet wer-den. Sigmoid- oder Polynom-Kernel bedürfen durch den ebenfalls zu optimierenden Ker-nelparameter einer Iteration durch drei Variablen, wodurch der Aufwand und damit die Prozessierungsdauer noch einmal deutlich steigen. Für bestimmte Parameterkombinationen musste der Testlauf abgebrochen werden, da der Lernalgorithmus das Abbruchkriterium in akzeptabler Zeit nicht erreichen konnte.

4.6 Optimierungsmöglichkeiten der Klassifizierung mit SVMs

Nach einer Evaluierung der Ergebnisse und dem damit verbundenen Prozessierungsauf-wand liegt es nahe, nach Optimierungsmöglichkeiten bezüglich (i) besserer Klassifizie-rungsergebnisse, (ii) einer Vereinfachung bei der Auswahl der Trainingsdaten und (iii) einer Verkürzung der Prozessierungsdauer ohne wesentliche Qualitätseinbußen zu suchen.

Eine Reduktion der Merkmale bzw. Dimensionsreduktion des Merkmalsraumes führt auch zu einer Reduktion des Prozessierungsaufwands, steht jedoch im direkten Widerspruch zum Theorem von Cover (SCHOLKOPF & SMOLA 2001) das besagt, dass bei einer Zunahme der Dimension des Merkmalsraumes die Anzahl der möglichen linearen Trennebenen auch

Page 9: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

R. J. Graf und S. Wegenkittl 60

zunimmt. Eine sinnvolle Reduktion entfernt demnach nur jene Merkmale, die ohnehin keinen Informationsgewinn darstellen. Als durchaus praktikable Lösung könnte sich dabei eine der Klassifizierung vorgeschalteten Hauptkomponentenanalyse erweisen, mit der mehrdimensionale, teils stark korrelierende Datensätze derart vereinfacht werden, dass die transformierten Merkmale unkorreliert und nach Varianz geordnet vorliegen und die statis-tische Größen der Trainingsdaten durch eine geringere Anzahl von Linearkombinationen, den sogenannten Hauptkomponenten (HK), beschrieben werden.

Wie sich bei Versuchen ebenso gezeigt hat, reagieren SVMs empfindlich auf eine Un-gleichverteilung der Trainingsdatensätze pro Klasse. Mögliche Gegenmaßnahmen sind eine Duplikation (upsizing), ein Verzicht (downsizing) oder eine Gewichtung (weighting) der Trainingsvektoren in Relation zur Anzahl der Datensätze jeder Klasse.

Eine weitere Verkürzung der Prozessierungsdauer ohne wesentliche Einbußen seitens der Klassifikationsqualität kann durch die Anpassung der Abbruchbedingungen des Lernalgo-rithmus bei langsam konvergierenden Kernel-SVMs erwirkt werden.

5 Fazit

SVMs bringen von sich aus alle Eigenschaften mit, um komplexe Klassifikationsaufgaben zu lösen. Die im Rahmen dieser Arbeit durchgeführten Klassifizierungen unterstreichen die Vorteile von SVMs zur objektbasierten Klassifikation von Fernerkundungsbildern, zeigen aber auch die Grenzen der in den derzeit verfügbaren Implementierungen gewählten Vor-gangsweisen und somit den Bedarf an weiteren Untersuchungen auf.

Der Klassifizierungserfolg steht im direkten Zusammenhang mit der Extraktion und Selek-tion der Merkmale, mit der Auswahl der Trainingsdaten, vor allem aber mit der Festlegung der Kernelparameter und der Gewichtung C von Fehlklassifikationen. Eine praxistaugliche Umsetzung bedarf eines höheren Grades an Automatisierung des Klassifikationsprozesses. Im Besonderen nehmen derzeit die Parametrisierung der SVMs und Optimierung der Ein-gangsdaten einen Großteil des Gesamtaufwands ein, sie bestimmen jedoch auch wesentlich den Erfolg der Klassifizierung und die Dauer des Trainingsprozesses. Sowohl in der selek-tiven Reduktion der Merkmale als auch in der Wahl der Trainingsdatensätze liegt viel Potenzial für eine weitere Beschleunigung dieses Prozesses. Ebenso ist die Parallelisierung aller Algorithmen und Prozessschritte naheliegend. Eine konsequente Automatisierung, Optimierung und Beschleunigung aller Prozessschritte ist daher wichtig für eine weitere Verbreitung von Support Vector Machines in der Fernerkundung.

Literatur

ABE, S. (20102), Support Vector Machines for Pattern Classification. Springer-Verlag, Lon-don.

BISHOP, C.M. (2006), Pattern Recognition and Machine Learning (Information Science and Statistics). Springer-Verlag, New York.

BLASCHKE, T. (2010), Object based image analysis for remote sensing. In: ISPRS Journal of Photogrammetry and Remote Sensing, 65, 2-16.

Page 10: Integration von Support Vector Machines in die objektbasierte …gispoint.de/.../paper_gis_open/AGIT_2012/537520028.pdf · 2015-11-12 · Integration von Support Vector Machines in

Integration von Support Vector Machines in die objektbasierte Bildklassifizierung 61

BLASCHKE, T. & LANG, S. (2006), Object based image analysis for automated information extraction − A synthesis. Measuring the Earth II ASPRS Fall Conference 6-10 Novem-ber 2006. San Antonio, Texas.

BOSER, B. E., GUYON, I. M. & VAPNIK, V. N. (1992), A Training Algorithm for Optimal Margin Classifiers. Proceedings of the 5th Annual ACM Workshop on Computational Learning Theory. ACM Press, New York, USA, 144-152.

CAMP-VALLS, G. & BRUZZONE, L: (Eds:) (2009), Kernel Methods for Remote Sensing Data Analysis. John Wiley & Sons, Ltd, UK.

CHANG, C.C. & LIN, C. J. (2011), LIBSVM: A library for support vector machines. In: ACM Transactions on Intelligent Systems and Technology, 2, 27:1-27:27. http://www. csie.ntu.edu.tw/~cjlin/libsvm (2011-01-17).

CRISTIANINI, N. & TAYLOR, S. J. (2000), An introduction to support vector machines. Cam-bridge University Press, Cambridge.

DEFINIENS (2008), Definiens Developer XD 1.0 SDK Engine API − User Guide. Definiens AG, München.

DEFINIENS (2011), Definiens Developer XD 1.5.1 Documentation − User Guide. Definiens AG, München.

DUDA, R. O., HART, P. E. & STORK, D. (20002), Pattern Classification. John Wiley and Sons, New York.

HEINERT, M. (2010), Support Vector Machines − Teil 1: Ein theoretischer Überblick. In: Zeitschrift für Geodäsie, Geoinformation und Landmanagement, 3, 179-189.

HSU, C. W., CHANG, C. C. & LIN, C. J. (2010), A Practical Guide to Support Vector Classification. In: Bioinformatics, 1 (1), 1-16. http://www.csie.ntu.edu.tw/~cjlin/papers/ guide/guide.pdf (2011-04-03).

HUANG, L. & NI, L. (2008), Object-Oriented Classification of High Resolution Satellite Image for Better Accuracy. In: ZHANG, J. & GOODCHILD, M. F. (Eds.), Proceedings of the 8th International Symposium on Spatial Accuracy Assessment in Natural Resources and Environmental Sciences. ISARA − International Spatial Accurcy Research Associa-tion, Shanghai, 211-218.

LUCHT, C., NESTLER, R. & FRANKE, K. (2009), Landnutzungsklassifikation auf multisenso-rischen und multispektralen Bilddaten − Anforderungen und Lösungsansätze. Beitrag zum 15.Workshop Farbbildverarbeitung, 08.-09. Oktober 2009. Berlin.

NAVULUR, K. (2006), Multispectral image analysis using the object-oriented paradigm. CRC Press, London.

SCHOLKOPF, B. & SMOLA, A .J. (2001), Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond. MIT Press, Cambridge, MA, USA.

TÖNNIES, K. (2005), Grundlagen der Bildverarbeitung. Pearson Education Inc., München. VAPNIK, V. (1998), Statistical Learning Theory. Wiley-Interscience, Chichester. VAPNIK, V. & CHERVONENKIS, A. (1974), Theory of Pattern Recognition (in Russisch).

Moscow: Nauka. (Deutsche Übersetzung: W. WAPNIK & A. TSCHERWONENKIS, Theorie der Zeichenerkennung, Akademie-Verlag, Berlin, 1979).