machine-learning
Verarbeitung natürlicher Sprache
Suche…
Einführung
NLP ist eine Möglichkeit für Computer, die Sprache des Menschen auf intelligente und nützliche Weise zu analysieren, zu verstehen und aus der menschlichen Sprache abzuleiten. Mithilfe von NLP können Entwickler Wissen organisieren und strukturieren, um Aufgaben wie automatische Zusammenfassung, Übersetzung, Erkennung von benannten Entitäten, Beziehungsextraktion, Gefühlsanalyse, Spracherkennung und Themensegmentierung auszuführen.
Textabgleich oder Ähnlichkeit
Ein wichtiger Bereich von NLP ist das Abgleichen von Textobjekten, um Ähnlichkeiten zu finden. Wichtige Anwendungen des Textabgleichs umfassen automatische Rechtschreibkorrektur, Datendeduplizierung und Genomanalyse usw. Je nach Anforderung stehen verschiedene Textabgleichtechniken zur Verfügung. Also lass uns haben; Levenshtein Entfernung
Der Levenshtein-Abstand zwischen zwei Zeichenfolgen wird als Mindestanzahl von Bearbeitungen definiert, die erforderlich sind, um eine Zeichenfolge in die andere zu transformieren, wobei die zulässigen Bearbeitungsvorgänge Einfügen, Löschen oder Ersetzen eines einzelnen Zeichens sind.
Es folgt die Implementierung für effiziente Speicherberechnungen.
def levenshtein(s1,s2):
if len(s1) > len(s2):
s1,s2 = s2,s1
distances = range(len(s1) + 1)
for index2,char2 in enumerate(s2):
newDistances = [index2+1]
for index1,char1 in enumerate(s1):
if char1 == char2:
newDistances.append(distances[index1])
else:
newDistances.append(1 + min((distances[index1], distances[index1+1], newDistances[-1])))
distances = newDistances
return distances[-1]
print(levenshtein("analyze","analyse"))