2009-11-20 4 views
1

Mes coéquipiers et moi avons un nouveau projet très stimulant à faire, et nous sommes censés le soumettre la semaine prochaine. Nous n'avons pas la moindre idée de la façon de le faire et nous avons vraiment besoin d'aide. Nous sommes des étudiants de premier cycle, nouveaux à la recherche d'information et à l'IA, et avons vraiment besoin de vos idées.une question sur un design

Le projet est à peu près:

Lorsqu'un expert est cité dans un document, trouver un expert avec un avis opposant & savoir ce qu'il/elle dit sur ce sujet.

Nous sommes libres d'utiliser n'importe quel langage de programmation, mais nous ne sommes pas concernés par la programmation. Nous voudrions de l'aide pour nous aider à démarrer. S'il vous plaît, donnez-nous une idée approximative de la façon de concevoir un tel système et comment récupérer des informations sur Internet. Comment devrions-nous avoir son opinion, puis trouver une opinion contraire?

+0

poster plus d'info, demander des professeurs aider à obtenir plus d'informations. – JonH

+5

Cela ressemble à un projet AI, nécessitant un niveau de capacité IA Je ne crois pas existe encore ... (ou il aurait fait des gros titres de nouvelles) –

+0

Est-ce que l'attribution de données mine l'Internet entier pour cette opinion opposée? –

Répondre

2

Simple: utilisez Amazon's Mechanical Turk.

Sans cela (ou un équivalent) vous êtes en difficulté. S'il n'y a pas d'autres contraintes sur le problème, alors vous aurez besoin d'une IA à part entière, le type qui n'existe pas encore. S'il y a des restrictions sévères, alors pourrait avoir une chance de le faire dans une semaine. Si l'expert peut être dans n'importe quel domaine (médecine, politique, histoire, mode, science, bandes dessinées, etc.) alors il n'y aura pas de référentiel unique et bien organisé d'essais. Vous devrez utiliser Google pour trouver l'opinion du Dr X. Une fois que vous avez trouvé l'écriture de Dr. X (et prions c'est du texte, pas de l'audio) vous devrez faire un peu de traitement en langage naturel pour en avoir le sens, même si vous avez la chance de trouver un titre descriptif (" La photographie numérique est absolument géniale "). Ensuite, vous devez comprendre que c'est le contraire. Quel est le contraire de "Neil Gaiman s'inspire du folklore pour ses idées d'histoire"? Déterminer quelle opinion vous recherchez sera un problème sérieux. Après cela, les choses deviennent plus faciles: vous pouvez google pour le sujet et utiliser les mêmes outils magiques pour trouver celui que vous recherchez.

Alors qu'est-ce qui a une chance de résoudre? Une recherche d'opinions que quelqu'un d'autre a déjà organisées en "pro" et "con". Certains forums politiques en ligne sont organisés de cette façon. Wikipedia cite des opinions opposées dans une section spéciale de certains de ses articles. Les revues scientifiques impriment des lettres de réfutation. Regardez autour de vous, vous pourriez trouver un site encore plus coupé et séché. Choisissez une arène assez petite et vous aurez un problème de traçabilité.

EDIT: Merde, Ben Dunlap m'a battu à tous mes points principaux dans un commentaire.Sigh

0

Cela me semble être un problème de PNL. En ce qui concerne les informations sur les documents et les cités, http://citeseerx.ist.psu.edu devrait être un bon point de départ.

Pour chaque papier, plusieurs citations se réfèrent au papier. Au minimum, vous devez scanner le résumé de l'article et celui des citations et exécuter votre propre algorithme pour déterminer si une citation est de l'opinion opposée. Peut-être que votre professeur peut vous donner des indices sur une heuristique approximative, mais autant que je sache, c'est un problème très difficile.

Je regarderais ce fil pour des approches plus intéressantes.

0

soumettre automatiquement une requête de recherche Google similaire à "expert_name suce", "expert_name mal", ou quelque chose comme ça. Trouvez le premier résultat qui a "PhD" avec un lien de document dans la même phrase et renvoyez le lien.

0

Je pense que vous pourriez souffler un peu trop gros ... en tant que projet de premier cycle, je l'aborde un peu plus petite échelle.

À moins que votre spécification ne stipule que vous devez utiliser des ressources Internet réelles, vous feriez mieux de créer votre propre base de données de documents courts personnalisés. Ajouter des métadonnées à chaque document en indiquant les points qu'ils font sur certains sujets.

Ensuite, je voudrais créer une liste de citations qui pointent vers chaque document et ajouter des métadonnées représentant la position des experts sur le sujet. Quand quelqu'un lit un document, j'ajoute à la liste des citations des listes de liens vers des documents qui ont d'autres points de vue sur ce sujet.

Fondamentalement, il serait composé de ces tables:

Document (id, data) 
DocumentPoints (documentId, topic, stance) 
Citation (documentId, topic, stance) 

Et quand quelqu'un charge un document, les citations sont tirées ainsi. Pour chaque citation, vous recherchez DocumentPoints pour les mêmes sujets avec différentes positions. La partie la plus difficile de ce projet serait de créer les 5 ou 6 documents dont vous avez besoin pour avoir des données dans votre base de données. Après cela, la solution est triviale. Sur une note de côté, la plupart de ces autres réponses vous disent d'utiliser une solution existante ... ne le faites pas à moins que l'affectation ne vous le demande. Vous ferez bien mieux de comprendre le problème et les différentes façons de le résoudre (ce n'est certainement pas le seul/meilleur) si vous travaillez vous-même sur l'ensemble du problème. Lorsque l'enseignant vous demande de faire quelque chose qui n'est pas pris en charge par le produit sur lequel vous avez choisi d'implémenter votre solution, vous ne pourrez pas le réparer. Si vous l'aviez écrit vous-même, vous pourriez tout aussi bien l'appliquer à la nouvelle spécification.