it-swarm.com.de

Unüberwachte automatische Tagging-Algorithmen?

Ich möchte eine Webanwendung erstellen, mit der Benutzer Dokumente, Videos, Bilder, Musik hochladen und ihnen dann die Möglichkeit geben können, suche sie. Stellen Sie es sich als Dropbox + Semantic Search vor.

Wenn der Benutzer eine neue Datei hochlädt, z. Document1.docx , wie kann ich Tags basierend auf dem Inhalt der Datei automatisch generieren? Mit anderen Worten, es ist keine Benutzereingabe erforderlich, um festzustellen, worum es in der Datei geht. Wenn angenommen wird, dass Document1.docx ein Forschungsbericht zum Thema Data Mining ist, sucht der Benutzer nach Data Mining oder Forschungsbericht oder Dokument1. sollte diese Datei in den Suchergebnissen zurückgegeben werden, da Data Mining und Forschungsarbeit höchstwahrscheinlich automatisch generierte Tags für das angegebene Dokument sind.

1. Welche Algorithmen würden Sie für dieses Problem empfehlen?

2. Gibt es eine Bibliothek in natürlicher Sprache, die dies für mich tun könnte?

3. Mit welchen maschinellen Lerntechniken sollte ich mich befassen, um die Genauigkeit der Kennzeichnung zu verbessern?

4. Wie könnte ich dies auf die automatische Kennzeichnung von Videos und Bildern ausweiten?

Danke im Voraus!

20
Sahat Yalkabov

Das häufigste nicht überwachte maschinelle Lernmodell für diese Art von Aufgabe ist Latent Dirichlet Allocation (LDA). Dieses Modell leitet automatisch eine Sammlung von Themen über einen Korpus von Dokumenten an, basierend auf den Wörtern in diesen Dokumenten. Wenn Sie LDA für Ihre Dokumentensammlung ausführen, werden bei der Suche nach bestimmten Wörtern bestimmte Wörter mit einer bestimmten Wahrscheinlichkeit zugeordnet. Anschließend können Sie die Dokumente mit den höchsten Wahrscheinlichkeiten abrufen, die für dieses Word relevant sind.

Es gibt auch einige Erweiterungen für Bilder und Musik, siehe http://cseweb.ucsd.edu/~dhu/docs/research_exam09.pdf .

LDA verfügt über mehrere effiziente Implementierungen in mehreren Sprachen:

19
Andrew Mao

Diese Leute schlagen eine Alternative zu LDA vor.

Automatische Tag-Empfehlungsalgorithmen für Social Recommender-Systeme http://research.Microsoft.com/pubs/79896/tagging.pdf

Ich habe nicht die ganze Zeitung gelesen, aber sie haben zwei Algorithmen:

  1. Betreute Lernversion. Das ist nicht so schlimm. Sie können Wikipedia verwenden, um den Algorithmus zu trainieren
  2. "Prototyp" -Version. Ich hatte keine Chance, dies zu tun, aber das ist, was sie empfehlen

UPDATE: Ich habe mehr darüber recherchiert und einen anderen Ansatz gefunden. Grundsätzlich handelt es sich um einen zweistufigen Ansatz, der sehr einfach zu verstehen und zu implementieren ist. Obwohl es für 100.000 Dokumente zu langsam ist, hat es (wahrscheinlich) eine gute Leistung für Tausende von Dokumenten (daher ist es ideal für das Markieren von Dokumenten eines einzelnen Benutzers). Ich werde diesen Ansatz ausprobieren und über Leistung/Benutzerfreundlichkeit berichten. 

In der Zwischenzeit hier der Ansatz:

  1. Verwenden Sie TextRank gemäß http://qr.ae/36RAP , um eine Tagliste für ein einzelnes Dokument zu erstellen. Dies erzeugt eine Tag-Liste für ein einzelnes Dokument unabhängig von anderen Dokumenten
  2. Verwenden Sie den Algorithmus aus "Verwenden des maschinellen Lernens zur Unterstützung der kontinuierlichen Ontologieentwicklung" ( https://www.researchgate.net/publication/221630712_Using_Machine_Learning_to_Support_Continuous_Ontology_Development ), um die Tag-Liste (von Schritt 1) ​​in die zu integrieren vorhandene Tagliste.
4
U Avalos

Textdokumente können mit diesem Schlüsselwort-Extraktionsalgorithmus Paket markiert werden. /- http://www.nzdl.org/Kea/ Derzeit werden nur eingeschränkte Dokumenttypen (Landwirtschaft und Medizin) unterstützt Ich denke mal), aber Sie können es entsprechend Ihren Anforderungen trainieren.

Ich bin nicht sicher, wie der Bild-/Videoteil funktionieren würde, es sei denn, Sie führen eine sehr genaue Objekterkennung durch (was ihre eigenen Mängel hat). Wie planen Sie es?

1
user3675152

Ich habe heute einen Blogartikel gepostet, um Ihre Frage zu beantworten.

http://scottge.net/2015/06/30/automatic-image-and-video-tagging/

Es gibt grundsätzlich zwei Ansätze, Schlüsselwörter aus Bildern und Videos automatisch zu extrahieren.

  1. Multiple Instance Learning (MIL) 
  2. Deep Neural Networks (DNN), Recurrent Neural Networks (RNN) und die Varianten 

Im obigen Blogartikel liste ich die neuesten Forschungsarbeiten auf, um die Lösungen zu veranschaulichen. Einige von ihnen enthalten sogar eine Demo-Site und Quellcode.

Danke, Scott

0
Scott Ge