我的雇主让我为我们当地的团队做一个项目。实际上,这将是一种帮助我们更快完成工作的方法。
我们有一个本地数据库,我们在其中添加分为两个字段的练习。问题和解决方案。我的雇主想要,因为我们是一个团队,我们同时工作,创建一个类似stackoverflow的系统类似的问题。当其中一个团队尝试在数据库中提交新数据时,它将检查是否存在可能重复的其他字段。
他问我的原因是因为我过去做过类似的事情,但仅限于使用TF-IDF和潜在语义分析等技术的文本。但是现在,由于数学符号都在Latex中,我找不到检查重复的方法。
我曾尝试将TF-IDF仅应用于文本,但它不起作用。
有什么建议吗?
修改 对不起,广泛的主题。我会尝试提供更多关于我的问题的例子。
所有文本都是小学和中学的练习。它是文本和数字 - 方程 - 符号的混合。如果只有文本,我可以使用TF-IDF查找可能的重复项。现在,有几个练习有一些或没有文字。
示例:
1)a。求解以下等式:(x + 1)*(x-1)= 5
湾找到x:x ^ 2 - 1 = 5
它们是相同的等式,但具有不同的表达式。所以,我不想把它们标记为重复。
2)a。求解以下等式:3x + 7 = 12
湾找到解决方案:7 + 3x = 12
℃。找到x:3x = 12 - 7
a和b应该是重复的,而c则不是。
答案 0 :(得分:2)
您可以尝试使用MathJax将LaTeX等式转换为MathML和XML格式。然后,您可以使用工具来检查该结构。可能还有一些其他工具可以将您的方程转换为某种树结构。
数学表达式的平等是一个复杂的问题。有一个问题,你应该把(x + 1)*(x-1)视为等于x ^ 2-1,代数上它们是相同的。
您可能想要研究具有许多用于处理表达式的复杂功能的计算机代数系统。
一种技术是在许多点评估表达。如果值一致,则表明表达式是相同的。
如果您对使用的问题类型,多项式,积分等有所了解,可能更容易给出更好的答案。