Ich denke an das folgende Problem: Ich möchte einen regulären Ausdruck finden, der einem bestimmten Satz von Zeichenfolgen entspricht (z. B. gültige E-Mail-Adressen) und nicht mit anderen übereinstimmt (ungültige E-Mail-Adressen).
Nehmen wir an, wir meinen mit regulären Ausdrücken eine wohldefinierte endliche Zustandsmaschine, ich kenne die genaue Terminologie nicht, aber wir stimmen einer Klasse erlaubter Ausdrücke zu.
Anstatt den Ausdruck manuell zu erstellen, möchte ich ihm eine Reihe positiver und eine Reihe negativer Beispiele geben.
Es sollte dann ein Ausdruck erstellt werden, der mit den + übereinstimmt, die - ablehnt und in einem bestimmten Sinne minimal ist (Anzahl der Zustände in den Automaten?).
Meine Fragen sind:
- Wurde dieses Problem berücksichtigt, wie kann es konkreter definiert und effizient gelöst werden? Können wir es in polynomialer Zeit lösen? Ist es NP vollständig, können wir es irgendwie approximieren? Für welche Ausdrucksklassen würde es funktionieren? Ich würde mich über jeden Hinweis auf Lehrbücher, Artikel oder ähnliches freuen, die dieses Thema behandeln.
- Hängt dies in irgendeiner Weise mit der Komplexität von Kolmogorov zusammen?
- Hat dies etwas mit Lernen zu tun? Wenn der reguläre Ausdruck mit meinen Beispielen übereinstimmt, können wir aufgrund seiner Minimalität etwas über seine Verallgemeinerungskraft für noch nicht gesehene Beispiele sagen? Welches Minimalitätskriterium wäre dafür besser geeignet? Welches wäre effizienter? Hat dies irgendeinen Zusammenhang mit maschinellem Lernen? Auch hier wären alle Hinweise hilfreich ...
Entschuldigen Sie die unordentliche Frage ... Zeigen Sie mir in die richtige Richtung, um das herauszufinden. Vielen Dank !