Ich muss die Kosinusähnlichkeit zwischen Strings in einer Liste berechnen. Zum Beispiel habe ich eine Liste von mehr als 10 Millionen Strings, jeder String muss die Ähnlichkeit zwischen sich selbst und jedem anderen String in der Liste bestimmen. Was ist der beste Algorithmus, mit dem ich solche Aufgaben effizient und schnell erledigen kann? Ist der Divide and Conquer-Algorithmus anwendbar?Wie effizient berechnen die Cosinus-Ähnlichkeit zwischen Millionen von Strings
EDIT
ich mit der Ähnlichkeit zugeordnet, die Saiten sind am ähnlichsten einer bestimmten Zeichenfolge und in der Lage zu bestimmen, wollen eine Maßnahme/Score. Ich denke, was ich tun möchte, steht im Einklang mit Clustering, wo die Anzahl der Cluster zunächst nicht bekannt ist.
Nach Definition Ihres Problems werden Sie eine Komplexität von O (n²) -Ausführungen der Kosinusähnlichkeitsberechnung haben. – Xion345
@ Xion345 Ja, ist das akzeptabel für so große Daten? Ich glaube nicht, dass es – Kennedy
ist. Sie müssen dynamische Programmierung dafür verwenden. Siehe *** [dies] (http://en.wikipedia.org/wiki/Approximate_string_matching) *** Link –