2014-08-29 5 views
1

Mon employeur m'a demandé de faire un projet pour notre équipe locale. En fait, ce sera un moyen d'aider notre travail à finir plus vite.Recherche de doublons dans des textes avec des équations mathématiques

Nous avons une base de données locale où nous ajoutons des exercices divisés en deux champs. La question et la solution. Mon employeur veut puisque nous sommes une équipe et nous travaillons en même temps, pour créer un système comme les questions similaires de stackoverflow. Lorsque l'un des membres de l'équipe essaie de soumettre de nouvelles données dans la base de données, il vérifie s'il existe d'autres champs qui peuvent être des doublons.

La raison pour laquelle il m'a demandé est parce que j'ai fait quelque chose de similaire dans le passé, mais seulement pour le texte en utilisant des techniques comme TF-IDF et Latent Semantic Analysis. Mais maintenant, puisque les symboles mathématiques sont tous en Latex, je ne peux pas trouver un moyen de vérifier les doublons.

J'ai essayé d'appliquer TF-IDF uniquement au texte, mais cela ne fonctionne pas.

Une suggestion?

Editer: Désolé pour le grand sujet. Je vais essayer de donner plus d'exemples sur mon problème.

Tous les textes sont des exercices d'écoles primaires et secondaires. C'est un mélange de texte et de nombres-équations-symboles. S'il n'y avait que du texte, je pourrais utiliser TF-IDF pour trouver d'éventuels doublons. Maintenant, plusieurs exercices ont un peu ou sont sans texte. Exemples:

1) a. Résoudre l'équation suivante: (x + 1) * (x-1) = 5

b. Trouver le x: x^2 - 1 = 5

Ils sont la même équation mais avec une expression différente. Donc, je ne veux pas les marquer comme des doublons.

2) a. Résoudre l'équation suivante: 3x + 7 = 12

b. Trouver la solution: 7 + 3x = 12

c. Trouver le x: 3x = 12 - 7

a et b devraient être dupliqués alors que le c ne le sera pas.

Répondre

2

Vous pouvez essayer d'utiliser MathJax pour convertir l'équation LaTeX en MathML au format XML. Vous pouvez ensuite utiliser des outils pour examiner cette structure. Il y a probablement quelques autres outils qui peuvent convertir votre équation en une sorte de structure arborescente.

L'égalité des expressions mathématiques est un problème complexe. Il est question que si vous traitez (x + 1) * (x-1) comme étant égal à x^2-1, algébriquement ils sont les mêmes.

Vous pourriez vouloir étudier les systèmes d'algèbre informatique qui ont beaucoup de fonctionnalités sophistiquées pour manipuler des expressions.

Une technique consiste à évaluer l'expression en un certain nombre de points. Si les valeurs sont d'accord, c'est une bonne indication que les expressions sont les mêmes.

Il pourrait être plus facile de donner une meilleure réponse s'il y avait une idée du type de problèmes avec lesquels vous travaillez, des polynômes, des intégrales, etc.

Questions connexes