如何使用欧氏距离来计算三对文档的相似度

时间:2017-01-05 19:03:36

标签: information-retrieval euclidean-distance

我正在尝试解决这个问题,但我不确定如何使用欧几里德方程来找到解决方案。

问题:

以下是其他3个关键字,频率和令牌数量 文档。

Doc 4 - 平板电脑:7;记忆:5;应用程序:8;呆滞:5

Doc 5 - 记忆:4;表现:6;剧本:8;应用程序:6

Doc 6 -tablet:6;表现:3;剧本:7;呆滞:3

Token计数:Doc 4:55 Doc 5:60 Doc 6:65

(i)使用欧氏距离计算三对的相似度值     具有相对频率值的文件(4,5),(4,6),(5,6)。声明     每对距离为4位小数(4 d.p。)。

我试图将欧几里德距离公式与给定的文档对一起使用来查找每对文档的距离。

这是我试图使用的等式:

dist((x,y),(a,b))=√(x - a)²+(y - b)²

根据解决方案,答案应该是:

欧几里德D4,D5 = 0.2343至4.d.p

欧几里德D5,D6 = 0.1693至4.d.p

欧几里德D4,D6 = 0.2153至4.d.p

任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:2)

首先,您应该根据您的术语频率制作文档术语矩阵。术语的术语 - 频率是指文档中重复术语的次数除以令牌文档的数量。所以我们刚刚制作了下表: enter image description here

正如您自己提到的距离公式,我将仅以文档4和5之间的距离为例进行计算。

d(Document4,Document5)= [(7 / 55-0)^ 2 +(5 / 55-4 / 60)^ 2 +(8 / 55-6 / 60)^ 2 +(5 / 55- 0)^ 2 +(0-6 / 60)^ 2 +(0-8 / 60)^ 2] ^(1/2)= 0.23428614982,四舍五入为0.2343。

答案 1 :(得分:0)

Euclidean distance是一种流行的启发式方法,其公式如下:

假设您有2个积分(a1,b1)(a2,b2),则这些积分之间的Euclidean distance为:SquareRoot( (a2-a1)^2 + (b2-b1)^2 )

在你的情况下,

Doc 4 - (7,5,8,5)
Doc 5 - (4,6,8,6)

所以申请的公式是,

SquareRoot( (a2-a1)^2 + (b2-b1)^2 + (c2-c1)^2 + (d2-d1)^2 ).

答案 2 :(得分:0)

Wikipedia

点p和q之间的欧几里德距离是连接它们的线段的长度(pq)

在笛卡尔坐标系中,如果p =(p1,p2,...,pn)和q =(q1,q2,...,qn)是欧几里德n空间中的两个点,那么距离(d)从p到q,或从q到p由毕达哥拉斯公式给出:

error

让我们像这样规范化给定。

Q3

然后根据上面的公式,

locked

你可以像我一样计算其他两对。

如果需要,请告诉我,因此我添加了一个示例代码段以便以编程方式进行计算。