Tags aus Volltext extrahieren?
Verfasst: Dienstag 28. Juli 2009, 20:29
Hallo zusammen,
ich möchte hier keine Lösung o.ä. erfragen, sondern eher über verschiedene Ansätze diskutieren, wie man aus einem Volltext bzw. einer Volltextsuche "relevante" Wörter extrahieren kann. So etwas könnte z.B. bei einer Tag Cloud zum Einsatz kommen.
Angenommen ich möchte den Satz: "Max und Moritz gehen in den Wald" in sinnvolle Tags zerlegen, so würde ich nur "Max, Moritz, gehen, Wald" als wichtig erachten. Für einen Menschen ist das relativ einfach zu bewerkstelligen. Aber welche Lösungsansätze für Python könnte es hier geben?
1. Ansatz: Man führt eine Liste mit den Wörtern, die nicht getagged werden sollen, wie z.B. "ist, und, aber, ..." und übernimmt nur die Wörter die nicht in dieser Liste vorkommen.
quasi etwas ähnliches wie:
Problem hier: Man wird nie alle Wörter wissen, die man nicht taggen will, zudem kann die Liste sehr schnell sehr groß werden und damit den ganzen Vorgang stark verlangsamen. (z.B. beim Einsatz als Webapplikation)
Ich hoffe das sich hier noch einige Ansätze sammeln lassen, vielleicht gibt es auch schon einen guten Lösungsansatz.
Freundliche Grüße
ich möchte hier keine Lösung o.ä. erfragen, sondern eher über verschiedene Ansätze diskutieren, wie man aus einem Volltext bzw. einer Volltextsuche "relevante" Wörter extrahieren kann. So etwas könnte z.B. bei einer Tag Cloud zum Einsatz kommen.
Angenommen ich möchte den Satz: "Max und Moritz gehen in den Wald" in sinnvolle Tags zerlegen, so würde ich nur "Max, Moritz, gehen, Wald" als wichtig erachten. Für einen Menschen ist das relativ einfach zu bewerkstelligen. Aber welche Lösungsansätze für Python könnte es hier geben?
1. Ansatz: Man führt eine Liste mit den Wörtern, die nicht getagged werden sollen, wie z.B. "ist, und, aber, ..." und übernimmt nur die Wörter die nicht in dieser Liste vorkommen.
quasi etwas ähnliches wie:
Code: Alles auswählen
satz = "Max und Moritz gehen in den Wald"
splitted = satz.split(" ")
for word in splitted:
if word not in woerterliste:
do_anything()
Ich hoffe das sich hier noch einige Ansätze sammeln lassen, vielleicht gibt es auch schon einen guten Lösungsansatz.
Freundliche Grüße