Microsoft
16.05.2019, 09:57 Uhr
SPTAG-Algorithmus ist jetzt Open Source
SPTAG steht für "Space Partition Tree and Graph". Mit Hilfe des SPTAG-Algorithmus beantwortet Microsofts Suchmaschine Bing Fragen wie diese "Wie hoch ist der Turm in Paris?".
Suchmaschinen sind heute mehr als Keyword-Matchers. Für die Antwort auf die Frage nach der Höhe des Turmes in Paris muss das Wort Eiffel nicht erwähnt werden. Bing nutzt wie alle anderen Suchmaschinen Algorithmen des maschinellen Lernens, um Vektoren – im Wesentlichen lange Listen von Zahlen - zu erstellen, die in gewisser Weise ihre Eingabedaten darstellen, sei es Text auf einer Webseite, Bilder, Ton oder Videos. Bing erfasst Milliarden dieser Vektoren für all die verschiedenen Arten von Medien, die es indiziert. Um die Vektoren zu durchsuchen, verwendet Microsoft einen Algorithmus, den es SPTAG ("Space Partition Tree and Graph") nennt. Eine Eingabeabfrage wird in einen Vektor umgewandelt, und SPTAG wird verwendet, um schnell "approximative Nearest Neighbors" (ANN) zu finden, das heißt Vektoren, die der Eingabe ähnlich sind. Microsoft hat den SPTAG-Algorithmus jetzt als MIT-lizenzierte Open Source auf GitHub veröffentlicht. Mit dem Algorithmus können Entwickler ihre eigenen Vektorsätze suchen, und zwar schnell: Eine einzige Maschine kann 250 Millionen Vektoren verarbeiten und 1.000 Anfragen pro Sekunde beantworten. Es gibt einige Beispiele und Erklärungen in Microsofts AI Lab, und Azure wird einen Dienst haben, der die gleichen Algorithmen verwendet. Mehr dazu lesen Sie im englischsprachigen Beitrag von Charlie Waldburger in Microsofts AI-Blog.
Die Kombination aus einem Azure-Dienst und Open-Source bedeutet, dass Entwickler mit dem eingeschränkteren, benutzerfreundlicheren Dienst beginnen können, und wenn ihr Fachwissen oder ihre Anforderungen komplexer werden, können sie SPTAG nutzen, um ihre eigenen Dienste zu erstellen.
Das GitHub-Repository zu SPTAG finden Sie unter https://github.com/microsoft/SPTAG.