Verarbeitung von Textdaten am Beispiel von Anwendungen der Versicherungswirtschaft Prof. Dr. Thomas Kudraß HTWK Leipzig Datenbanken-Stammtisch 1 HTW Dresden, 05.12.2012
Ausgangssituation: Vermittlung einer Versicherung durch Makler Versicherungsarten: Berufsunfähigkeit Risiko-Leben Private Krankenversicherung 2
Gesetzliche Grundlagen 3 Zahlreiche Neuerungen für Versicherer und Versicherungsmakler 2008 Reform des Versicherungsvertragsgesetzes (VVG) auf Basis der EU-Vermittlerrichtlinie Mehr Rechte für Versicherungskunden Mehr Pflichten für Versicherungsmakler: transparente und nachweisbar optimal auf Kundenbedürfnisse abgestimmte Beratung des Kunden Neues Antragsmodell nach VVG-Reform
Anforderungen für den Versicherungsmakler 4 Transparente Beratung Nachweis optimal abgestimmt auf Kundenbedürfnisse Tagesaktuelle und exakte Angebote Beratung auf Basis mehrerer Versicherungsverträge von unterschiedlichen Versicherungsunternehmen (unterschiedliche Tarife & Optionen) Schadenersatzansprüche gegenüber Makler bei Falschberatung
Das Projekt 5 Partner: Inveda.net GmbH Leipzig + HTWK Leipzig Entwicklung einer Software für Versicherungsmakler zur Durchführung einer gesetzeskonformen Beratung Software IMA = Inveda Makler Assistent Vergleich von Leistungen und Prämien unterschiedlicher Versicherungsprodukte Automatische Erstellung eines Antrags gemäß Antragsmodell nach VVG-Reform Exakte Prämie (centgenau!) Versicherungsbedingungen Sofortiger Versicherungsschutz für den Kunden Berücksichtigung verschiedener Versicherungsarten mit ihren jeweiligen Besonderheiten Berufsunterfähigkeitsversicherung Risiko-Lebensversicherung Private Krankenversicherung (PKV)
Wissenschaftliche Fragestellungen 1. Automatisierter Vergleich von Versicherungsprämien Bestimmung der exakten Prämien Keine standardisierten Anfrageschnittstellen 2. Behandlung von heterogenen Berufslisten der Versicherungsgesellschaften als wichtiger Parameter zur Prämienberechnung 6 3. Automatische Bewertung von PKV-Tarifen aus den Dokumenten (Tarifbedingungen) Extraktion von geeigneten Textstellen zu einem bestimmten Thema Beurteilung einzelner zuvor gefundener Textstellen
Automatisierter Vergleich von Versicherungsprämien 7
Ausgangssituation bei Prämienvergleich IMA-Software Rechenkern Rechenkern Versicherungsgesellschaft A Versicherungsgesellschaft B Kundendaten Parameter für Versicherung Rechenkern Versicherungsgesellschaft C 8
Vergleich von Versicherungsprämien (Beispiel) Anzahl der theoretisch mögl. Prämienberechnungen sehr hoch!! Beispiel 1: Risikolebensversicherung (RLV) A Parameter Anzahl möglicher Werte Beruf 2012 Versicherungsdauer + Geburtsjahr 1770 Raucher 2 Summe 90 (25.000 2.000.000) Gewicht Größe Motorradfahrer 2 9 Geschlecht 2 Insgesamt: 2012 * 1770 * 90 * 2 * 2 * 2 = 2.564.092.800
Versicherungsprämien (Beispiel 2) Beispiel 2: Berufsunfähigkeitsversicherung B Parametergruppe Parameter # Werte Zeitbezogene Parameter Person allgemein Leistungsdauer, Betragsdauer, Versicherungsdauer, Geburtsdatum Geschlecht, Raucher, Gewicht, Größe, Motorradfahrer 277.304.370 8 Beruf Bedingungen Risikoklasse, Büro, Körperlich, Kreativ, Reise, Schicht, Akkord Zahlweise, Karenzzeit, Lebenslang, Rentendynamik, Übergangsleistung, Nachversicherung, VVG_Verzicht 20.000 13.440 Leistung BU_Rente, Versicherungssumme 4.900 10 Insgesamt: 2.291.945.054.515.200.000.000 (knapp 3 Trilliarden Kombinationen)
Systematische Untersuchung der Prämien (Prämienmaschine) 11 Werkzeug zur empirischen Untersuchung von Tarifformeln Interaktive Auswahl der Eingabeparameter (Web-Frontend) oder Einlesen per Datei Entwicklung einer Cache-Datenbank zur Zwischenspeicherung berechneter Prämien Eingabeparameter + daraus berechnete Prämien Ermittlung der Prämie durch IMA durch DB- Abfragen in Cache (statt Aufruf mehrer Rechenkerne)
Prämienvergleich mit Nutzung einer Cache-Datenbank IMA (neu) Analyse Parameter Cache (Parameter/ Prämien) XML- Konfiguration Kundendaten Parameter für Versicherung CSV-Datei Webformular Parameter IMA 12
Admin-Oberfläche Entwicklung einer Prämienmaschine 13
Tarifformeltester 14 Gefundene mathematische Formeln systematisch testen Berechnung der Prämien für Testdatensätze mittels Prämienmaschine und Erzeugung von Kontrolldaten Ermittlung der Prämien mithilfe der vermuteten Formel (Ableitung aus anderen Prämien möglich) Vergleich Kontrolldaten mit Ergebnis per Formel + Ermittlung des Fehlers
Arbeitsweise des Tarifformeltesters 15
Load Balancing bei Tarifformeltest Verteilung der Rechenlast des Tarifformeltesters auf mehrere Virtual Machines (C# Verteilskript) 16
Fachliche Ergebnisse (Risikolebensversicherung) 17 RLV A Untersuchung von 253.00 Datensätzen Extraktion von Regeln Anzahl der Parameterkombinationen im Cache auf 21.240 reduziert Alle weiteren Prämien daraus berechenbar für Versicherungssumme (linearer Zusammenhang) evtl. Risikozuschlag bei ungünstigem BMI Zahlungsweise Parameter Beginn Berechnungszeitpunkt Anzahl im Cache Wert im Cache jährlich jährlich Zahlungsweise 1 jährlich Leistungsdauer 1770 1 55 Jahre Versicherungsdauer Beitragsdauer Geburtsdatum Jahreszahl (Alter 16-66) Geschlecht 2 1 und 0 (bzw. männlich und weiblich) Gewicht 1 70 Groesse 3 182 und 210 (ergibt einen BMI von 20 bzw.16) Versicherungssumme Summe = 35 000 mit Groesse 182 Summe = 2000000 mit Groesse 182 Summe = 2000000 mit Groesse 210 Raucher 2 1 und 0 Motorradfahren 1 0 Insgesamt: 21240
Fachliche Ergebnisse (Berufsunfähigkeitsversicherung) 18 Empirische Untersuchung von BU-Versicherungen Wesentlich komplexer als Risiko-LV 3 Arten von Eingabeparametern 1. Parameter, die die Prämie über Wahrscheinlichkeitstafeln (z.b. Sterbetafeln) beeinflussen Erfordert explizite Berechnung mit Rechenkern, z.b. Alter, Dauer, Geschlecht, Raucher 2. Parameter, die von den Wahrscheinlichkeitstafeln unabhängig sind Teil der Prämie durch eine Formel von einer anderen Prämie ableitbar 3. Parameter, die ganz oder zum Teil irrelevant sind Zum Beispiel: Jahr bei Geburtsdaten ausreichend (ohne Tag und Monat) Ansätze zur Reduktion der Anzahl Parameter-Kombinationen Entwicklung einer Methodik zur Bestimmung von Gruppen von Parameterkombinationen mit zugehörigen Prämien Statistische Auswertung des Cache als Historie aller Prämienabfragen
Behandlung von heterogenen Berufslisten der Versicherungsgesellschaften 19
Problem der Berufslisten Versicherungsparameter Beruf benutzt in vielen Versicherungsarten (z.b. Berufsunfähigkeit) Beruf ist Risikofaktor der Prämienberechnung Versicherungsgesellschaft verwaltet eigene Berufslisten (abhängig von Angaben des Kunden) mit 1000..20.000 Einträgen Zuordnung der Berufe aus unterschiedlichen Listen, um Vergleichbarkeit herzustellen Beispiel: Bienenzüchter 20
Einordnung: Information Integration Verwandte Ansätze: Ermittlung korrespondierender Schema-Elemente (Schema Mapping [Rahm, Bernstein, VLDB Journal 2001]) String Distance Metrics for Name-Matching Tasks [Navarro, ACM Comp. Surveys 2001] Methoden der Duplikaterkennung [Leser, Naumann] Synonymsuche (auf Basis einer Datenbank) Lösungsidee: Mapping auf einheitliche Berufsliste (verwaltet im IMA) 21
Beispieltabellen für Berufslisten Versicherer 1 10 Abbrucharbeiter 472001 - - 0,08 50 50 D 0 C Versicherer 2 2 Abbruchfacharbeiter Abbruchfacharbeiterin Versicherer 3 5 Abbrucharbeiter/in 4727 1 30 Abfertigungsbeamt(er/in) (Zoll) 7621 1 Versicherer A Zylinderhutmacher Zylindermacher (Hohlglasmacher) Justizvollstreckungsobersekretaer Versicherer B Zylinderhutmacher/In Hohlglasmacher/In Justizvollzugsbeamtin/Justizvollzugsbeamter 22 Beispiele für Komposita Akademiedozent an Hoeheren Fachschulen und Akademien Akademisch Gepruefter Uebersetzer
Unterschiedliche Speicherung der Berufslisten (1) Geschlechtsabhängige Bezeichnungen 23 Nur männliche Formen Weibliche Form als separater Listeneintrag Verwendung des Suffix im selben Feld Imker/Imkerin, Imker/In Suffixe für Bildung des Genus in Klammern (Bsp. Versicherer 3) Vorverarbeitung: Entfernung der weiblichen Berufe und weitere Verarbeitung mit männlicher Form
Unterschiedliche Speicherung der Berufslisten (2) Speicherung von Kohyponymen Synonym-Problem: 24 Subkategorien in Klammern, z.b. Zylindermacher (Hohlglasmacher) Statt Zylinderhutmacher Speicherung von Subkategorien wie Bridierer, Bimser, Hutmacher (vermeide Verwechslung mit Zylindermacher) Bildung von Subkategorien durch direkte Risikobeschreibung, z.b. Hilfsarbeiter (mit erhöhten Unfallgefahren), Hilfsarbeiter (ohne erhöhte Unfallgefahr)
Unterschiedliche Speicherung der Berufslisten (3) Speicherung von Komposita Beispiel: Dozent Akademiedozent an Hoeheren Fachschulen und Akademien Keine syntaktische Ähnlichkeit zum Suchbegriff Erfordert Auftrennung der Zeichenkette (Tokenizing) 25
Verwendete Techniken Approximate String Matching (Unscharfe Suche) Distanzmetriken (Editierdistanzen) Behandlung von Komposita (N-Gramme) Synonymsuche Web Crawling SOAP Manuelle Bewertung 26
Edit-basierte Ähnlichkeitsmaße Levenshtein-Distanz (Edit-Distanz) 27 Definition Minimale Anzahl an Edit-Operationen (insert (i), delete (d), replace (r)), um den einen in den anderen String zu überführen Formal: D(i,j) Edit-Distanz des Präfixes der Länge i von S 1 mit dem Präfix der Länge j von S 2 ed(s 1, S 2 ) Edit-Distanz der Strings S 1 und S 2 = D(m,n) für S 1 = m und S 2 = n Berechnung von D(m,n) mittels Rekursionsgleichung D(i,0) = i // i-mal insert D(0,j) = j // j-mal delete D(i,j) = min {D(i-1,j) + 1, D(i,j-1) + 1, D(i-1,j-1) + t(i,j)} // t(i,j) {0,1}
Tabellarische Berechnung der Edit- Distanz H A S E 0 1 2 3 4 R 1 A 2 S 3 E 4 N 5 H A S E 0 1 2 3 4 R 1 1 2 3 4 A 2 2 1 S 3 E 4 N 5 28 Beispiel aus [Leser, Naumann 2006]
Tabellarische Berechnung der Edit- Distanz H A S E 0 1 2 3 4 R 1 1 2 3 4 A 2 2 1 S 3 E 4 N 5 H A S E 0 1 2 3 4 R 1 1 2 3 4 A 2 2 1 2 3 S 3 3 2 1 2 E 4 4 3 2 1 N 5 5 4 3 2 29 Beispiel aus [Leser, Naumann 2006]
Ähnlichkeitsmaße 30
Tokenbasierte Ähnlichkeitsmaße Edit-Distanz ist reihenfolgeabhängig (Probleme für zusammengesetzte Berufsbezeichnungen) Tokenbasierte Ähnlichkeit Zerlegung der Strings in Wörter bzw. Token Vergleich der Strings durch Untersuchung gemeinsamer Token Tokenisierung Aufteilung der Strings an Trennzeichen (z.b. Leerzeichen, Komma) Bildung von n-grammen Beispiel: 3-Gramme von Rasen {Ras, ase, sen} Ähnlichkeitsmaß, z.b. Jaccard-Ähnlichkeit von Strings S 1 und S 2 mit Tokenmengen T 1 und T 2 31
Synonymsuche 32 Aktiviert bei gescheiterter exakter bzw. unscharfer Suche der Berufsbezeichnung Synonymquellen: http://www.wie-sagt-man-noch.de http://synonyme.woxikon.de/ http://wortschatz.uni-leipzig.de/ Alternativ: Benutzung einer SOAP-Schnittstelle (z.b. Webservice Synonyms im Projekt Deutscher Wortschatz) oder Web Crawling Verbesserung der Ergebnisgüte Vergleich der Resultate aus unterschiedlichen Quellen Anzahl der Übereinstimmungen als Maßzahl absteigende Sortierung der Ergebnisliste für Nachbearbeitung dient der Fehlerminimierung bei automatischer Selektion
Algorithmus für die Suche nach äquivalentem Beruf 33 Ablauf der Auflösung eines Berufes über alle Berufslisten
Erläuterungen zum Algorithmus der Berufssuche Synonymfindung bei gescheiterter Suche bzw. zu großem Editierabstand Grenzwert für den Editierabstand experimentell mit dem Korpus aus der Fusionierung aller Berufslisten zu einer Wortliste ermittelt statische Festlegung bei Wortlängen unter 6 Zeichen problematisch distanzbasiertes Ähnlichkeitsmaß sollte Wortlänge berücksichtigen gilt analog für Trigram-Dice-Maß Gefundene Synonyme ebenfalls in den Listen gesucht Liste pro Versicherer, Listensuche per Hash manuelle Zuweisung durch Makler, falls gewünschter Beruf mindestens einem Versicherer nicht zugeordnet werden kann alle anderen gefundenen Übereinstimmungen werden dem Versicherer zugeordnet ausgegeben. 34
35 Implementierungsaspekte Zwischenspeicherung der möglichen Synonyme aus den Quellen Implementierung der String-Vergleichsalgorithmen mittels eigener User-Defined Functions (UDF) Nutzung der DB-Funktionalität SQL-Operator SOUNDEX Nutzung von Retrieval-Operatoren der DB z.b. in Oracle Text: CONTAINS?<Suchbegriff>
Performance-Bewertung Durchführung der Tests auf Intel Celeron M mit 1.5GHz und 2 GByte RAM mit Windows XP Professional unscharfe Suche linear über alle Listen ausgeführt Systemverhalten stark abhängig von der Mächtigkeit der benutzten Listen Antwortzeit nur 1-2 Sekunden für die Suche in einer Liste mit 20.000 Berufen. Verarbeitungszeit der Webquellen vernachlässigbar (rein textuelle Requests) 36
Testergebnisse precision relevante _ Treffer Gesamtzahl _ der _ Treffer recall relevante _ Treffer Umfang _ Testkorpus f measure 2 recall precision recall precision Berufe Idx+ Sim+ Syn+ prec Syn+ recall Syn+ f-measure Ø sek/req V1 1665 919 986 1228 0.98 0,80 0.88 1.630 V2 2013 1118 1208 1425 0.92 0,87 0.89 2.325 V3 1154 503 565 842 0.95 0.53 0.64 1.502 V4 2249 756 812 1023 0.82 0.56 0.67 2.418 37 Testkorpus: 1500 zufällig ausgewählte Berufe eines Versicherers V5
Bewertung Negativere Ergebnisse, wenn Berufskategorien durch komplexere Zusammensetzungen gebildet werden (niedrigerer Recall) Ergebnisse abhängig von den benutzten Synonymquellen Verbesserungspotential Mehr Vorverarbeitung der Problemfälle Kombination distanzbasierter und tokenbasierter Ähnlichkeitsmaße bei der Suche nach Äquivalenzen Performance unkritisch 38
Automatische Bewertung von PKV- Tarifen aus Dokumenten (Tarifbedingungen) 39
Motivation 40 Auswahl einer privaten Krankenversicherung Unterschiedliche Gesellschaften und Tarife Abstimmen auf individuelle Wünsche und Bedürfnisse des Kunden (mehr Wahlmöglichkeiten als bei anderen Versicherungsarten) Gesetzliche Vorgaben (EU-Richtlinie / VVG-Reform) Informationen über Leistungs- und Prämienstruktur für jeden Versicherungstarif erforderlich Manuelle Aufbereitung der Informationen aus den Versicherungswerken der Gesellschafter durch spezielle Dienstleister (zeit- und kostenintensiver Prozess) Ziel: automatisierter Analyse- und Bewertungsprozess mittels Software und Verfahren der Informationsextraktion durch
Bisheriger Ablauf Tarifwerke der Versicherungen IMA-DB Versicherungs- Makler + Kunde Dienstleister 41 PKV-Vergleich: Leistungen + Tarife IMA-Entwickler Beratungsprotokoll
Typische Fragestellungen 42 Ermittlung von Gebührenordnungen (GOÄ /GOZ) o Antwort: =2.3/ =3,5 / Ohne Einschränkung auf deutsche GOÄ/GOZ freie Arztwahl (kein Hausarztmodell vorhanden) o Antwort: Ja / Nein Vorsorgemodelle für Patienten o Antwort: GKV-Programm / Darüber hinaus Von der Versicherung erstattete Heilmittel unterteilt in Physikalische Anwendung, Ergotherapie und Logopädie o Antwort: Ja / Nein Von der Versicherung erstattete Hilfsmittel o Antwort: Ja / Nein / erstatteter Betrag Aufsuchen von Heilpraktikern o Antwort: Ja / Nein Erstattung von Psychotherapie o Antwort: Ja / Nein / auch durch nichtärztliche Behandler Umfang der stationären Versorgung im Hinblick auf allgemeine Krankenhausleistung, Unterbringung in Einzelund Mehrbettzimmern, wahlärztliche Leistungen o Antwort: Ja / Nein Möglichkeiten zur Anschlussheilbehandlung/Reha o Antwort: Ja / Nein Erstattungen für hochwertigen Zahnersatz, Implantate und Kosten für Funktionsanalyse o Antwort: Ja / Nein / erstatteter Betrag bzw. Prozentangabe
Aufbau und Analyse von Versicherungstexten 43 Beispielhafte Untersuchung der Texte von drei Versicherungen (AXA, universa, Münchener Verein) Texte sehr schwach strukturiert Einteilung in Leistungsabschnitte (z.b. Krankenhaustagegeldvers. Krankentagegeldvers., private Pflegevers.) Unterteilung in Paragraphen Leistungsbeschreibungen orientieren sich an Musterbedingungen des Verbandes der PKV Musterkatalog mit Empfehlungen für Gestaltung der Bedingungen und Leistungsbeschreibung Ergänzungen des Musterkataloges im Dokument hervorgehoben Starker Bezug zum Musterkatalog erlaubt vereinheitlichte Regeln bzw. Hintergrundwissen zur Informationsgewinnung Positiv- und Negativlisten geeignet für Formalisierung
Beispiele für Listen (1) Positivliste (Beispiel) Auszug aus den Tarifbedingungen der Münchener Verein 44 Erstattungsfähig sind die Kosten für ärztliche Leistungen, soweit sie im Rahmen der Gebührenordnung für Ärzte (GOÄ) berechnet werden dürfen und deren Regelhöchstsätze nicht überschreiten zu 100 % Beratungen, Besuche, Sonderleistungen, Operationen, Wegegeld den 10 EUR je Fahrt übersteigenden Betrag für Transporte zu oder von der ambulanten Heilbehandlung, falls die medizinische Notwendigkeit des Transports ärztlich bescheinigt wird zu 100 % die Inanspruchnahme einer Hebamme bei ambulanter Entbindung zu 100 % Arznei- und Verbandmittel, Heilmittel, Hilfsmittel (ohne Sehhilfen) bis zu einer Selbstbeteiligung von 200 EUR je Versicherungsjahr bei Erwachsenen bzw. 100 EUR bei Kindern und Jugendlichen zu 85 % darüber hinaus zu 100 % Als Heilmittel gelten ausschließlich die Anwendungen der physikalischen Medizin.
Beispiele für Listen (2) Negativliste (Beispiel, Münchener Verein) Als Arzneimittel gelten nicht Ovulationshemmer, Geriatrika, Nähr-, Stärkungs-, kosmetische und Desinfektionsmittel, Mineralwässer, auch wenn sie vom Heilbehandler verordnet sind. Implizite Nennung (Beispiel, universa) 45 Erstattet werden Aufwendungen für [ ] - kleinere Hilfsmittel. [ ] Kleinere Hilfsmittel sind: - orthopädische Schuhe, - Blindenhund - [ ]
Beschreibung von Listen Aufbau einer Liste Halbsatz, der die Art der Liste kennzeichnet Trennungszeichen/-symbol gefolgt vom eigentlichen Inhalt Wiederholung von Punkt 2 bis zum Ende der Aufzählung Zuhilfenahme zusätzlichen Wissens notwendig Begriffe, die erst später präzisiert werden z.b. kleinere Hilfsmittel in Wissensbasis Grundlage für einen Algorithmus zur Erkennung von Listen 46
Manuelle Bewertung von Textfragmenten Beispiel für Fragestellung (1) Frage zur freien Arztwahl Ja oder Nein? AXA und Münchener Verein 4 (2) Der versicherten Person steht die Wahl unter den niedergelassenen approbierten Ärzten und Zahnärzten frei. Soweit die Tarifbedingungen nichts anderes bestimmen, dürfen Heilpraktiker im Sinne des deutschen Heilpraktikergesetzes in Anspruch genommen werden. universa 4 (2) Der versicherten Person steht die Wahl unter den niedergelassenen Ärzten und Zahnärzten frei. Soweit die Tarifbedingungen nichts anderes bestimmen, dürfen Heilpraktiker im Sinne des deutschen Heilpraktikergesetzes in Anspruch genommen werden.. 47 Semantik von approbiert? Übereinstimmung bei Schlüsselwörtern frei Wahl Arzt Antwort ja
Manuelle Bewertung von Textfragmenten Beispiel für Fragestellung (2) Erstattung von Logopädie als Hilfsmittel Ja oder Nein? AXA Heilmittelliste AXA AVB VIII. Logopädie - Erstgespräch mit Behandlungsplanung und -besprechungen, einmal je Behandlungsfall bis zu 31,70 Euro. universa Zu den Heilmitteln gehören insbesondere (...) Stimm-, Sprech- und Sprachübungsbehandlungen. Münchener Verein Zu Erstattungsfähig sind die Kosten für ärztliche Leistungen, soweit sie im Rahmen der Gebührenordnung für Ärzte (GOÄ) berechnet werden dürfen und deren Regelhöchstsätze nicht überschreiten: Als Heilmittel gelten ausschließlich die Anwendungen der physikalischen Medizin. 48 Ergebnis: Ja für alle drei Versicherungen
Manuelle Bewertung von Textfragmenten Erkenntnisse 49 verschiedene Verfahren von der manuellen in die automatische Analyse übertragbar: Schließen aus der Folge bestimmter Wörter oder Wortgruppen Finden und Ersetzen von Wörtern durch Synonyme Auslesen von Werten aus dem Text (Regelsätze, Geldbeträge, Prozentzahlen) Kontext beachten! Expertenwissen teilweise notwendig Auswahl der Analysemethode von Art und Vielzahl möglicher Formulierungen abhängig Regelextraktion einfacher bei Übereinstimmung mit PKV- Musterbedingungen
Ansätze & Technologien zur Problemlösung Text Mining Information Retrieval & Extraction Knowledge Representation Tools 50
Text Mining Ablaufschema 51 Ablaufschema [Heyer u.a. 2008]
Relevanz als Kiterium der Informationsqualität Bewertung: Precision, Racall, F-Measure Prof. T. Kudraß, HTWK Leipzig Information Retrieval (IR) Boolesches Retrieval boolesche Operatoren zur Konstruktion von Anfragen kein Ranking nur wahr oder falsch Vektorraum-Retrieval Dokumente und Anfragen in Vektoren transformiert Ranking der Ergebnisse basiert auf Ähnlichkeit der Vektoren Probabilistisches Modell Ermittlung von Wahrscheinlichkeiten für Relevanz eines Dokuments 52 IR = Auffinden bestehender Informationen / Dokumente
Information Extraction (IE) 53 Definition Suche & Extraktion relevanter Informationen innerhalb eines Dokuments Ziel Gewinnung von Wissen bezüglich eine Fachgebiets aus unstrukturierten Objekten Methode Template-Ansatz Definition von Template mit fachspezifischen Eigenschaften, die mit Wissen aus dem Dokument gefüllt werden Beispiel-Template Erstattung von Hilfsmitteln [ Versicherung, Tarif, Hilfsmittel, erstatteter Betrag, Zeitraum, Selbstbeteiligung ] Gleiche Maßzahlen wie bei IR (Precision, Recall) Workflow-Ansätze (Zerlegung der Extraktioslogik in Teilaufgaben) Beispiel-System: IBM InfoSphere / SystemT Beschreibung semantischer Extraktionspläne mittels AQL (angelehnt an SQL SELECT-FROM-WHERE, reguläre Ausdrücke, Wörterbücher)
Knowledge Representation Domänenspezifische Ontologien 54
Bewertung des Ontologie-Ansatzes 55 Ontologie für PKV gesamt oder Teilbereiche? Besonderheiten einzelner PKV-Tarifwerke in Ontologie? Ontologie-Matching wäre sinnvoller Ansatz manuelle Erstellung einer Ontologie zeitaufwendig Bewertung schwierig (erfordert Expertenwissen) Zur Beantwortung der Kunden-Fragen nur kleine Wortgruppen oder einzelne Wörter notwendig Abbildung in Ontologie wäre sehr umfangreich Beispielhafte Ontologie-Definition in Protege Ontologien im Projekt nicht weiterverfolgt, stattdessen Wissensrepräsentation in Form von Regeln
Tools: RapidMiner Frei verfügbar (AGPL Lizenz) Ehemals YALE (Uni Dortmund) Data Mining & Machine Learning Verfahren Operatoren in Prozesskette zusammenschalten Nutzung der Text Mining Funktionalität Tokenisierung Entfernung von Stoppwörtern Wortstammbildung (Stemming) 56
Tools: GATE 57 General Architecture for Text Engineering Beinhaltet ein IE-System: ANNIE (A Nearly-New Information Extraction) mit verschiedene Stufen der automatischen Sprachverarbeitung, z.b.: Tokenisierung, Wortartenbestimmung, Koreferenzauflösung Im Projekt nicht weiterverfolgt
Tools: Synonymsuche Zugriff auf Webservice mittels SOAP Synonyme oft sehr domänenspezifisch Aufbau und Pflege einer eigenen Synonym-DB 58
Konzeption der Lösung zur automatisierten Analyse Extraktion von geeigneten Textstellen zu einem bestimmten Thema Beurteilung einzelner zuvor gefundener Textstellen Boolesche Analyse Erweiterte Boolesche Analyse mit Wortgewichtung Reguläre Ausdrücke Listenerkennung mit Schlagwörtern 59 Tarife & Leistungen Synonyme Regeln
Datenbank-Struktur Tarif TID Name Leistung LID Kategorie Name Text Gesamtergebnis 60 Markierung MID Text Position Teilanalyse TEID Text Name Ergebnis Zusatz
Ablauf des Analyseprozesses 1. Eingabe von Versicherung und Tarif 2. Auswahl der abzufragenden Leistung 3. Eingabe Textfragment 4. Start des Analyseprozesses 5. Textvorverarbeitung (a) Auftrennung in Wortgruppen, Wörter oder Sätze (b) Herausfiltern von Stoppwörtern (c) Wortstammbildung (Stemming) 61 6. Aufruf der Analyseverfahren (a) Anwendung der definierten Regeln (b) Bestimmung der passenden Regel unter Beachtung von Prioritäten (c) Bestimmung des entsprechenden Ergebnisses 7. Ausgabe der Einzel- sowie Bildung des Gesamtergebnisses
Benutzeroberfläche Anwendung nach dem Start 62
Benutzeroberfläche Eingabe des Textfragments 63
Benutzeroberfläche Auswertungsfenster 64
Benutzeroberfläche Zusammenfassung der Ergebnisse 65
Aufbau einer Regel- und Wissensbasis (Beispiele) Frage: Ermittlung von Gebührenordnungen (GOÄ) (erstattungsfähig).*(regelhöchstsatz).*(gebührenordnung für Ärzte) (Regelhöchstsatz).*(Gebührenordnung für Ärzte).*(erstattungsfähig) Frage: Freie Arztwahl Wahl.*(niederlassen Arzt).*frei Frage: Erstattung von Heilmitteln: Logopädie Listenerkennung: Logopädie enthalten? (Bsp. AXA) Listenerkennung mit Synonymerkennung: Sprachübung synonym zu Logopädie (Bsp. universa) Listenerkennung mit Expertenwissen: physikalische Medizin enthält Logopädie (Bsp. Münchener Verein) 66
Benutzeroberfläche Definition einer neuen Regel 67
Darstellung von Regeln in XML Beispiel <reg> <regaus ergebnis="2,3 fach" prio="0">erstatt.goä.regelhöchstsätze</regaus> <regaus ergebnis="2,3 fach" prio="0">erstatt.regelhöchstsätze.goä</regaus> <regaus ergebnis="3,5 fach" prio="0">100.erstatt.rechnung</regaus> </reg> <bool> <boolaus ergebnis="2,3 fach" prio="0"> <wort negation="false">erstatt</wort> <wort negation="false">regelhöchstsätze</wort> <wort negation="false">goä</wort> </boolaus> </bool> Beispiel für reguläre Ausdrücke (regaus), Boolesche Ausdrücke (boolaus) 68 Resultate im Attribut ergebnis Attribut prio charakterisiert erfolgreiche Anwendung einer Regel Tag wort für Suchwörter in Booleschen Ausdrücken
Feedback- und Qualitätskomponente IMA Regelbasis Prioritäten 69 Manuelle Rückmeldung durch Benutzer möglich (Ergebnis des Algorithmus korrekt?) Textfragment durch Benutzer bewertbar Definition neuer Regeln mit Markierung von Suchwörtern möglich
Auswertung von Analyseergebnissen Versicherung Erfolgsquote gesamt Erfolgsquote Boolesche Analyse Erfolgsquote erweiterte Boolesche Analyse Erfolgsquote reguläre Ausdrücke Erfolgsquote Listenerkennung BT1 84,2 % 73,7 % 52,5 % 73,7 % 5,3 % BT2 89,4 % 89,4 % 42,1 % 89,4 % 15,8 % BT3 94,7 % 94,7 % 47,4 % 94,7 % 0 % UT1 78,9 % 63,2 % 36,8 % 36,8 % 10,6 % UT2 81,3 % 68,2 % 26,3% 52,6 % 0 % UT3 69,2 % 53,8 % 7,7 % 15,4 % 15,4 % 82,9 % 73,8 % 35,5 % 60,4 % 7,9 % 70 Vergleich mit manueller Analyse BT1..3 Bekannte Textfragmente (AXA, universa, Münchener Verein) UT1..3 Unbekannte Textfragmente (Allianz, Hallesche, Mannheimer) 19 Fragestellungen
71 Fazit (pragmatische) Pilot-Lösung zeigte prinzipielle Machbarkeit einer automatisierten Analyse ABER: Informationsextraktion erfordert sehr viel Expertenwissen (mehr als das Herausfinden von Zusammenhängen von Texten beim Text Mining) Vgl. fehlende Ausdrucksmöglichkeiten bei Google ( Erstattet die Allianz Kosten für Privatärzte? ) Algorithmen des maschinellen Lernens können bei der Definition von Prioritäten und Bereichsgrenzen für Suchwörter helfen Statistische Verfahren zur Erkennung von Ähnlichkeiten zwischen Texten bzw. zur Extraktion von Suchwörtern (relevanten Begriffen)
Quellen 72 Zum Projekt D. Bärthel, T. Kudraß: Vergleich von Tarifmodellen unterschiedlicher Versicherungsgesellschaften am Beispiel der Bahndlung von Berufen, GI- Workshop "Informationsintegration in Service-Architekturen" (IISA),in: 40. Jahrestagung der GI, Lecture Notes in Informatics (LNI), Bd. 175, 2010. S. Veit: Entwicklung von IR-Algorithmen zur automatischen Bewertung von Krankenversicherungstarifen, Masterarbeit, HTWK Leipzig, 2011. Homepage der Inveda.net GmbH: www.inveda.net Weiterführende Literatur G. Navarro: A guided tour to approximate string matching, ACM Computing Surveys 33(19), S.31-88, 2001. U. Leser, F. Naumann: Informationsintegration: Architekturen und Methoden zur Integration verteilter und heterogener Datenquellen. dpunkt Verlag, 2006. G. Heyer u.a.: Text Mining: Wissensrohstoff Text. W3L-Verlag, 2008
Vielen Dank für Ihre Aufmerksamkeit! Noch Fragen 73