Je souhaite créer une application Web permettant aux utilisateurs de télécharger documents , vidéos , images , musique , puis de leur donner la possibilité de fouillez-les. Pensez-y comme Dropbox + Recherche sémantique.
Lorsque l'utilisateur télécharge un nouveau fichier, par exemple Document1.docx , comment pourrais-je générer automatiquement des balises basées sur le contenu du fichier? En d'autres termes, aucune intervention de l'utilisateur n'est nécessaire pour déterminer le contenu du fichier. Si supposons que Document1.docx soit un document de recherche sur l’exploration de données, alors lorsque l’utilisateur recherche exploration de données , ou document de recherche , ou document1 , ce fichier doit être renvoyé dans les résultats de la recherche, car data mining et papier de recherche seront probablement des balises potentiellement générées automatiquement pour ce document.
1. Quels algorithmes recommanderiez-vous pour ce problème?
2. Existe-t-il une bibliothèque en langage naturel qui pourrait faire cela pour moi?
3. Quelles techniques d'apprentissage automatique dois-je étudier pour améliorer la précision du marquage?
4. Comment puis-je étendre cela au marquage automatique des vidéos et des images?
Merci d'avance!
Le modèle d'apprentissage automatique non supervisé le plus courant pour ce type de tâche est Allocation de Dirichlet latent (LDA). Ce modèle déduit automatiquement une collection de sujets sur un corpus de documents basé sur les mots de ces documents. L'exécution de LDA sur votre ensemble de documents assignerait des mots avec une probabilité à certains sujets lorsque vous les rechercheriez, puis vous pourriez récupérer les documents avec les probabilités les plus élevées pour qu'ils soient pertinents pour ce mot.
Il existe également des extensions d’images et de musique, voir http://cseweb.ucsd.edu/~dhu/docs/research_exam09.pdf .
LDA a plusieurs implémentations efficaces dans plusieurs langues:
Ces gars proposent une alternative à la LDA.
Algorithmes automatiques de recommandation de balises pour Systèmes de recommandation sociale http://research.Microsoft.com/pubs/79896/tagging.pdf
Je n'ai pas lu tout l'article mais ils ont deux algorithmes:
MISE À JOUR: J'ai encore fait des recherches à ce sujet et j'ai trouvé une autre approche. Fondamentalement, il s’agit d’une approche en deux étapes très simple à comprendre et à mettre en œuvre. Bien que trop lent pour 100 000 documents, il offre (probablement) de bonnes performances pour 1 000 documents (il est donc parfait pour baliser les documents d'un seul utilisateur). Je vais essayer cette approche et je ferai un rapport sur les performances/la convivialité.
En attendant, voici l'approche:
Les documents texte peuvent être étiquetés à l’aide de cet algorithme/package d’extraction de phrase clé. http://www.nzdl.org/Kea/ Actuellement, il prend en charge un type limité de documents (Documents agricoles et médicaux Je suppose) mais vous pouvez l’entraîner selon vos besoins.
Je ne suis pas sûr de savoir comment fonctionnerait la partie image/vidéo, à moins que vous ne détectiez très précisément les objets (qui ont leurs propres inconvénients). Comment comptez-vous le faire?
J'ai posté un article de blog aujourd'hui pour répondre à votre question.
http://scottge.net/2015/06/30/automatic-image-and-video-tagging/
Il existe essentiellement deux approches pour extraire automatiquement les mots-clés d’images et de vidéos.
Dans l'article de blog ci-dessus, j'énumère les derniers articles de recherche pour illustrer les solutions. Certains d'entre eux incluent même le site de démonstration et le code source.
Merci Scott