Seite 1 von 1

Machine Learning Methode zur Texterkennung

Verfasst: Donnerstag 21. September 2023, 19:50
von davimon
Hallo zusammen,

Ich würde gerne mithilfe von Python maschinelles Lernen verwenden, um Strings in bestimmte Kategorien einzuteilen. Mein Problem ist aber, dass die Strings oft aus mehreren Wörtern OHNE Leerzeichen dazwischen bestehen. Ich habe bisher nur die Methode gefunden, die einen Text in einzelne Wörter zerlegt (anhand von Leerzeichen) und die Wörter jeweils zählt (Bags of Words). Nach einer derartigen Vorprozessierung wird das maschinelle Lernen auf die Zählung angewendet. Das geht in meinem Fall aber nicht. Stattdessen müssen Strings eher nach Schlüsselwörtern/-mustern durchforstet werden.

Beispielhaft gebe ich mal eine Liste an Wörtern mit den zugehörigen Kategorien:

engine oil
engineoil
shell oil 229,5 5L
oil229,5
oil engine
shell 5w30 229,5
--> Diese Strings sollen als Kategorie 1 erkannt werden (Öle), weil Schlüsselstrings wie "oil" oder "229,5", aber nicht "filter", "filt", "toilet", "spoiler", "pump" oder "line" vorkommen.

oil filter
oilfilter
engine oil filt
engineoilfilter
oil filt
--> Diese Strings sollen als Kategorie 2 erkannt werden (Ölfilter), da Muster wie "filter" oder "filt" zusammen mit "oil" auftreten.

toilet
spoiler
oil pump
oilpump
oil line
oilline
--> Diese Strings sollen als Kategorie 3 erkannt werden (Sonstiges).

Hat jemand eine Idee, wie ich meine Strings vorprozessieren soll und welche Machine-Learning-Methode sich anschließend anbietet?
Wenn ich weiß, in welcher Art die Vorprozessierung gemacht werden soll, dann kann ich einen Trainingsdatensatz aufstellen und die entsprechende ML-Methode auf weitere Testdaten anwenden.

Vielen Dank schon mal für jeglichen Input!

VG David

Re: Machine Learning Methode zur Texterkennung

Verfasst: Donnerstag 21. September 2023, 19:57
von __deets__
Wieso kannst du die nicht als zusammengesetzte Wörter lernen? Genau dafür sind doch ML verfahren gut. Man kann’s zb mal mit https://en.wikipedia.org/wiki/CRM114_(program) probieren, wobei ich das nur von früher kenne. Da gibt’s bestimmt neues, aber das kannst du genauso gut googeln wie ich.

Re: Machine Learning Methode zur Texterkennung

Verfasst: Donnerstag 21. September 2023, 21:30
von davimon
Hmm ja mir ist überhaupt nicht klar, welche Art von Merkmalsextraktion dabei angewendet wird. Alle Methoden zur Merkmalsextraktion, die ich finde, basieren auf irgendwelchen Wortzählungen. Wie kann denn ein Verfahren erkennen, dass "engineoil" und "oilengine" zur gleichen Kategorie gehören?

Re: Machine Learning Methode zur Texterke

Verfasst: Donnerstag 21. September 2023, 21:55
von __deets__
Garnicht. DU kannst das, und das als Trainingsdaten hinterlegen. Wenn es darum geht, unbekannte Worte aufzuarbeiten, würde ich mit Thesauren arbeiten, wie sie das NLTK anbietet. Und mal nach prior art suchen, fehlschreibungen und zusammengesetzte Worte sind ja kein neues Problem