Nix Seminar Ärztliche Erkenntnis SS 1997

 


Projektname:

Terminologieserver


Teilaufgabe:

Lösung des Homonymproblems


Autoren:

Anja Kreis, Frank Lammermann


Verfahren:

Zur Lösung des Homonymproblems werden die folgenden Schritte durchgeführt (siehe auch Struktogramm weiter unten):

 

  1. Als Eingabe kommen zu jedem Symptom sämtliche MeSH-Indices der Homonyme, ein standardisierter Text und eine Nummer die angibt, welches Wort im standardisiertem Text das zu behandelnde Symptom ist.
  2. Für jedes Homonym wird nun anhand des standardisierten Eingabetextes überprüft, wie stark eine Übereinstimmung des Textes mit den Begriffen des MESH-Indexes existiert und wie weit die jeweiligen Übereinstimmungen vom Homonym entfernt sind. Dabei wird zuerst links und dann rechts im gleichen Satz gesucht, dann in den Sätzen davor, zuletzt in den Sätzen danach. Das Maß der Übereinstimmung und des Abstandes wird durch die Werte Ü und A festgehalten.
  3. Nun wird für jedes Homonym überprüft, wie groß das Maß der Übereinstimmung  (=Ü) und des Abstandes (=A) waren (Definitionen der einzelnen Variablen weiter unten):
    • Wenn Ü > N2 und A < N3, so wird das Homonym mit ** markiert, d.h. das Homonym ist sehr wahrscheinlich richtig.
    • Wenn 1 =< Ü=< N2 oder N3 =< A =< N4, so wird das Homonym mit * markiert, d.h. es kann ggf. in Frage kommen.
    • Wenn Ü = 0 oder A > N4, so bekommt das Homonym keine Markierung, es gilt dann als sehr unwahrscheinlich.

       

  4. Zum Schluß wird die Anzahl der mit ** markierten Homonyme ermittelt: Ist sie Eins, so kann das Symptom durch dieses Homonym eindeutig spezifiziert werden.
    Ist die Anzahl = 0, gibt es keine Übereinstimmung. Bei einer Anzahl > 1 gibt es mehrere Homonyme, die sehr wahrscheinlich richtig sind. Ist die Anzahl also ungleich Eins, so erfolgt eine Rücksprache mit dem Benutzer, der das entsprechende Homonym auswählen muß.


Struktogramm:

Struktogramm


Datenstrukturen und Variablen:

globale Eingabevariablen:

char SYM   : Eingabesymptom
int  HOM_1-n : MeSH-Indices der Homonyme 1 bis n
char TEXT   : standardisierter Eingabetext
int  SYMNUM  : Nummer des Symptoms im Text

globale Ausgabevariablen:

int  HOM    : MeSH-Index des eindeutigen Homonyms

benutzerbestimmbare Variablen (Fehlertoleranz):

int  N1    : min. Anzahl von Stellen des MESH-
       Indexes, die übereinstimmen müssen
int  N2     : min. Anzahl von Begriffen, die über-
        einstimmen müssen
int  N3     : max. Abstand im Text, so daß eindeutige
       Übereinstimmung gewährleistet ist
int  N4    : max. Abstand im Text, so daß wahr-
       scheinliche Übereinstimmung gewähr-
        leistet ist

sonstige Variablen:

int Ü     : Anzahl der Begriffe mit Überein-
        stimmung in den ersten n1 Stellen
int A     : Abstand des übereinstimmenden
        Begriffes zum Symptom(Homonym) 


E/A - Schnittstelle:

Als Eingabe wird ein Symptom, der dazugehörende Text, die MeSH-Indices der Homonyme und die Nummer des Wortes, welches das Symptom im Text darstellt von der Deutsch/Englisch - Übersetzung übergeben. Da das Symptom vorher auf seine Existenz überprüft und der Text standardisiert wurde, kann es keine fehlerhaften Eingaben geben.
Die Auswahl der Schwellenwertvariablen geschieht über Maus und Tastatur, dabei können beliebig große Integer-Werte eingegeben werden.
Weiterhin dient als Eingabe bei der Benutzerrückfrage die Tastatur bzw. die Maus zum Auswählen des entsprechenden Homonyms.
Das eindeutigenHomonym wird als Ausgabe in Form der int-Variable HOM geliefert.


Programmnachrichten:

Der Benutzer/Administrator muß die Möglichkeit besitzen, die Schwellenwerte n1, n2, n3 und n4 veränder zu können. Dazu Kann er am Anfang ein Fenster öffnen, indem jeder einzelne Schwellenwert festgelegt werden kann.(Einstellen der Schwellenwerte). Mit Hilfe des Buttons "OK" werden die neuen Daten übernommen, durch den Button "Reset" werden die vorgegebenen Werte zurückgesetzt.


Beispiel:

1.Schritt

Einstellung der Schwellenwerte:

 min. Anzahl der übereinstimmenden Stellen des MeSH-Indexes (n1):
  4 
 min. Anzahl der übereinstimmenden Begriffe (n2):   1
 max. Abstand für Übereinstimmung (n3):   6
 max. Abstand für wahrscheinliche Übereinstimmung (n4):  12

 

2. Schritt

In dem Beispiel führt nur das Symptom "Ulkus" zu Homonymen.
Der Algorithmus zur Lösung des Homonymproblems wird also nur einmal aufgerufen.
Somit lautet die Eingabe:
"Ulkus", "C11-294-177, C17-800-893, C17-800-893, C6-405-613-216, C6-405-748-860",
standardisierter Text, "4" (Wortnummer).
Dabei haben die MeSH-Indices folgende Bedeutung:

SYMPTOM     MESH-INDEX    BEDEUTUNG
Ulcus, corneae    C11-294-177  Hornhautgeschwür des Auges
Ulcus, cutis  C17-800-893    Hautgeschwür
Ulcus, cruris  C17-800-893-592    Unterschenkelgeschwür (offenes Bein)
Ulcus, duodeni  C6-405-613-216  Geschwür des Zwölffingerdarms
Ulcus, ventriculi  C6-405-748-860  Geschwür des Magens


3. Schritt

Suche im Satz links vom Symptom (Homonym) nach zu überprüfenden Begriffen.
Ergenis: Keine weiteren Begriffe vorhanden.

4. Schritt

Suche im Satz rechts vom Symptom (Homonym) nach  zu überprüfenden Begriffen.
Ergebnis: Keine weiteren Begriffe vorhanden.

5. Schritt

Suche in den Sätzen davor (max. n4=12 Wörter prüfen) nach weiteren Begriffen.
Ergebnis (nur Symptome):
 SYMPTOM  MESH-INDEX
Gewichtsverlust G7-553-481-398-915  
Erbrechen C6-405-937
Appetitlosigkeit C23-888-298-100
Druckschmerz C10-598-617

Dabei ergeben sich folgende Übereinstimmungen:

SYMPTOM     MESH-INDEX    ÜBEREINSTIMMUNG
Ulcus, corneae    C11-294-177  keine
Ulcus, cutis  C17-800-893    keine
Ulcus, cruris  C17-800-893-592    keine
Ulcus, duodeni  C6-405-613-216  ja, mit (Ü=5 > n2) und (A=5 < n3) 
Ulcus, ventriculi  C6-405-748-860  ja, mit (Ü=5 > n2) und (A=5 < n3)

Es werden die beiden Begriffe: "Ulcus, duodeni" und "Ulcus, ventriculi" mit ** markiert.


6. Schritt

Suche in den Sätzen danach  (max. n4=12 Wörter prüfen)  nach weiteren Begriffen.
Ergenbis (nur Symptome):
 SYMPTOM  MESH-INDEX
 Basalsekretion   C5-116-132-256  
 Säuresekretion A12-838-307
 Helicobacter pylori  B3-440-500-550


Dabei ergeben sich keine Übereinstimmungen.


7. Schritt

Da die Anzahl der mit ** markierten Homonyme > 1 ist, erfolgt eine Ruecksprache mit dem Benutzer.


8. Schritt

Rückgabe des MeSH-Index (C6-405-613-216) für das gewählte Symptom: Ulcus, duodenie.


Anhang

1.) Basisinformationen zum MeSH

2.) ASCII-Version des deutschen MeSH


Anfang