Autor Thema: "Ähnlickeits-Algorhythmus"  (Gelesen 2491 mal)

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
"Ähnlickeits-Algorhythmus"
« am: 12.12.06 - 16:05:28 »
Also heute kein Problem sondern mehr eine Fragestellung.

Ich schreibe immer noch an einer Dublettenprüfung. Habe eine funkionierende Suche gebaut die ein bisschen verschachtelt ist und somit denke gute Ergebnisse liefert. (Wahrscheinlich ist sie nicht so toll wie ich denke aber egal)

Jetzt zu meinem eigentlichen Thema.

Computer sind ja von Natur aus dumm , machen das aber durch ihr Schnelligkeit wieder weg ;)

Naja jedenfalls kann der Computer ja nicht erkennen dass der "Herr Maier" dem "Herr Mayer" sehr ähnlich ist. Kann ja sein das ein Angestellter die Namen nicht richtig eingibt oder wie auch immer. Für den Computer sind es Grundsätzlich andere Personen. Ich möchte nun aber eine intelligente Funktion die das behebt.

Die Frage ist nur wie gehe ich vor ? Soll ich einen Replace über den String laufen lassen der alle mögichen Mutationen durchtestet ? (War mein erster Gedanke, aber das kann dann ziemlich lange dauern)

Naja dann dachte ich daran den String zu zerlegen und von vorne und hinten die Buchstaben unter berücksichtung der Stringlänge zu analysieren, aber ich denke dass auch dies nicht so clever ist, des weiteren weiss ich im Moment auch einfach nicht wie ich das Ergebnis auswerten sollte.

Nun ja vielleicht habt ihr ja gute Ideen wie ich es umsetzten könnte wäre euch sehr dankbar für eure Anregungen.

Mit freundlichem Gruß und dank im Voraus

Robert
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline ZaLudtske

  • Senior Mitglied
  • ****
  • Beiträge: 319
  • Geschlecht: Männlich
  • carpe diem
Re: "Ähnlickeits-Algorhythmus"
« Antwort #1 am: 12.12.06 - 16:09:18 »
Hi,

such mal im Web nach dem Algorithmus für die Soundex-Funktion. Ich denke diese sollte dein Problem lösen.

Rainer
Rainer Zaske

MCSD - C#

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: "Ähnlickeits-Algorhythmus"
« Antwort #2 am: 12.12.06 - 16:11:09 »
@Soundex 
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: "Ähnlickeits-Algorhythmus"
« Antwort #4 am: 12.12.06 - 16:35:13 »
Wolfgang Flamme hat einmal eine erstklassige Implementation des Levenstein Algorythmus gezeigt. Leider ist seine Web Seite nicht mehr online.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: "Ähnlickeits-Algorhythmus"
« Antwort #5 am: 12.12.06 - 16:41:38 »
Und zwei andere Artikel von ihm waren auch sehr aufschlußreich:
"Vermeiden von Adressbuch Duplikaten mit Klangfarbenanalyse" und "Phonetische Äquivalente berechnen"
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: "Ähnlickeits-Algorhythmus"
« Antwort #6 am: 12.12.06 - 17:40:57 »
Okay danke für die Antworten . Sie haben mich auf jedenfall weitergerbracht. Zwar bin ich noch nicht so überzeugt von dem Soundex-Code bin , aber er geht in die richtige Richtung, dann habe ich mir noch ein bisschen die PDF-Datei von eknori hat mir auch geholfen. Vielleicht kann ich die Funktion noch ein bisschen verfeinern. Was mich an der Soundex-Sache stört ist , dass er ja ganze Wortteile einfach unterschlägt. So sind Herr Bauer und Herr Bayer in Soundex identisch sind.

Die Idee hinter der Funktion ist aber dennoch genial. Werde meine Funktion auf dem Gerüst aufbauen.
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: "Ähnlickeits-Algorhythmus"
« Antwort #7 am: 14.12.06 - 10:02:42 »
So es ist vollbracht, ich habe den Code aus der PDF von eknori genommen und nach meinen Ansprüchen modifiziert. Natürlich habe ich das Rad nicht neu erfunden, sondern nur Sachen "verbessert" die mich getsört haben. Dazu gehört zum Beispiel, dass @Soundex generell alle Vokale unterschlägt, was Notes dann den Bauern nicht vom Bayern unterscheidenlassen kann. Also habe ich dieses Makel ausgemerzt, indem ich nach einem "e" oder "a" direkt prüfen lasse ob der nachfolgende Buchstabe ein "i" oder "y" ist, falls das der Fall ist, dann setz er dafür einen Wert. Somit habe ich weiterhin , das bewährte Prinzip aber halt ein bisschen besser.

Frage an euch. Was haltet ihr davon?
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: "Ähnlickeits-Algorhythmus"
« Antwort #8 am: 14.12.06 - 15:10:00 »
Stelle es doch einfach bei Opentnf in der codebin mit einem entsprechenden Kommentar zur Verfügung.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz