gpt4 book ai didi

python - 一种确定两个句子相似程度的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:11:03 25 4
gpt4 key购买 nike

我的一个 friend 有一个想法,就是制作一个一个一个显示单词的速读程序(很像目前现有的速读程序)。但是,该程序会过滤掉对意思不是完全必要的词(如果你想略读一些东西)。

我已经开始实现这个程序,但我不太确定去除“不重要”单词的算法应该是什么。

我的想法是解析句子(我目前正在使用 Stanford Parser)并根据该词对句子对每个词的含义的重要性以某种方式分配权重,然后开始删除权重最低的词。我将继续这样做,检查原始树和新树的“不同”程度。我将继续删除权重最低的词,直到两棵树差异太大(我将通过每个用户都经历一次的“校准”过程来确定一些常数)。最后,我将检查缩短的句子中的每个词,并尝试用该词的更简单或更短的同义词替换它(同时仍然试图保留值(value))。

此外,“the”、“a”和“of”等非常常见的词也会有特殊情况。

例如:

“比利对简说,‘你想出去吗?’”

会变成:

“比利告诉简‘想出去吗?’”

这基本上保留了句子的所有含义,但大大缩短了它。

这对算法来说是个好主意吗?如果是的话,我将如何分配权重,我应该使用哪种树比较算法,以及在合适的地方插入同义词(即应该在我之前完成)尝试删除任何单词)?

最佳答案

您可以使用本文描述的方法来计算两个句子的相似度:Corpus-based and Knowledge-based Measuresof Text Semantic Similarity

可以删除单词,直到与原句的相似度明显下降(这本身就是一个有趣的问题)。

您还可以在此处查看相似度算法的简化版本:Wordnet Sentence Similarity

关于python - 一种确定两个句子相似程度的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40788494/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com