比较MySQL条目的“最接近”匹配

时间:2014-04-22 22:47:31

标签: javascript php mysql

(如果你看到我之前的问题,这是同一个项目的一部分)

我不清楚从哪里开始,所以我想为什么不是谷歌(现在是我的)最喜欢看的地方!

我正在建立一个约会'学校项目的网站(因此早期的@ trnty.edu电子邮件验证),并想知道是否可以比较字符串的相似性 - ergo:"我喜欢在沙滩上漫步&# 34;和#34;我喜欢在沙滩上散步,或者在福雷斯特保护区内散步。 - 我们正如人们注意到相似之处,但我想知道是否有办法比较这些可能匹配的确定性百分比。

我不想追逐我的尾巴,所以在继续这个项目之前,我想先知道它是否可行。

我是否应该学习PHP,Javascript,Ajax以及上述(?)所有指定网站的内容?

1 个答案:

答案 0 :(得分:1)

总之,“不”。

这并不意味着您想要做的事情是不可能的,它只是意味着没有内置的语义分析器能够理解文本的内容,上下文,语言,语法和意图。嗯,这些可能存在,但它们不是商业上可用的。尤其不是免费软件。

你能做什么?有几种选择。如果您实际上在寻找文本的相似之处,那么两种常见的方法是统计单词并计算三元组。你可以google“trigrams”(或n-gram)看看这意味着什么。请注意,这些都会发现“我喜欢在沙滩上漫步”和“我讨厌在沙滩上散步”非常相似。要使用单词相似性,您可能需要一个字典和同义词库,这是n-gram方法的一个优点。

另一种使用的方法,但单个单词或代码更多,称为Levenshtein Distance(google it;)。这是衡量“不同”两个字符串如何基于简单的字符串操作的度量。不过,“我爱......”和“我讨厌......”非常相似。

要了解文本的情绪,然后进入情绪分析。这使用了词语传达的词典。这些词典的祖父是哈佛的“心理社会”词典。在这一点上,我很想说可以写一本关于这个主题的书。我本人只撰写了一篇很长的章节,分别是 营销,销售和客户支持的数据挖掘技术,第三版