余弦相似度

原创 2016年05月31日 16:59:17

wiki链接: Cosine Similarity

这里给出公式:

/media/problem/cosine-similarity.png

给你两个相同大小的向量 A B,求出他们的余弦相似度

返回 2.0000 如果余弦相似不合法 (比如 A = [0] B = [0]).

样例

给出 A = [1, 2, 3]B = [2, 3 ,4].

返回 0.9926.

给出 A = [0]B = [0].

返回 2.0000

class Solution {
    /**
     * @param A: An integer array.
     * @param B: An integer array.
     * @return: Cosine similarity.
     */
    public double cosineSimilarity(int[] A, int[] B) {
        // write your code here
        if (A.length == 0 || B.length == 0 || A.length != B.length){
            return 2.0000;
        }
        int a = 0;
        int b = 0;
        int c = 0;
        for (int i = 0; i < A.length; i++){
            a += A[i] * A[i];
            b += B[i] * B[i];
            c += A[i] * B[i];
        }
        if (a == 0 || b == 0){
            return 2.0000;
        }
       return c/( Math.sqrt(a) * Math.sqrt(b));
    }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

余弦相似度

  • 2014-09-14 20:43
  • 7.46MB
  • 下载

余弦相似度计算代码

图像基础7 图像分类——余弦相似度

图像分类利用计算机对图像进行分析,根据图像信息的不同特征,将不同类别的图像区分开来。算法过程 1. 准备样本图像。样本图像能代表所属类别中尽可能多的图像 2. 提取每个样本的特征后,形成类别特...
  • xundh
  • xundh
  • 2017-07-30 16:47
  • 214

【Python】用zip函数求欧氏距离、余弦相似度

首先欧氏距离,如此高大上的名称,其实大家都学过的也就是坐标系,或者说是N维向量坐标系的两点之间的距离^_^。也被称作“欧几里得度量”。 在二维坐标系,公式是这样: 在N维坐标是,公式就是: 而余...

余弦相似度

余弦相似度 在向量空间模型中,文本泛指各种机器可读的记录。用D(Document)表示,特征项(Term,用t表示)是指出现在文档D中且能够代表该文档内容的基本语言单位,主要是由词或...

余弦相似度

Cosine similarity is a measure of similarity between two vectors of an inner product space that meas...

Python简单实现基于VSM的余弦相似度计算

在知识图谱构建阶段的实体对齐和属性值决策过程中、判断一篇文章是否是你喜欢的文章、比较两篇文章的相似性等,都涉及到了向量空间模型(Vector Space Model,简称VSM)和余弦相似度计算相关知...

欧氏距离和余弦相似度

两者相同的地方,就是在机器学习中都可以用来计算相似度,但是两者的含义有很大差别,以我的理解就是: 前者是看成坐标系中两个点,来计算两点之间的距离; 后者是看成坐标系中两个向量,来计算两向量之间的夹角。...
  • linvo
  • linvo
  • 2013-07-15 23:39
  • 15964

余弦相似度

在向量空间模型中,文本泛指各种机器可读的记录。用D(Document)表示,特征项(Term,用t表示)是指出现在文档D中且能够代表该文档内容的基本语言单位,主要是由词或者短语构成,文本可以用特征项集...
  • memray
  • memray
  • 2012-05-02 02:55
  • 1492

余弦相似度 —— Cosine Similarity

余弦相似度用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小。相比距离度量,余弦相似度更加注重两个向量在方向上的差异,而非距离或长度上。 与欧几里德距离类似,基于余弦相似度的计算方法也...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)