精华内容
下载资源
问答
  • 推荐算法之向量之间距离

    千次阅读 2018-02-17 11:39:06
    介绍协作型过滤对一大群人进行搜索,找出与我们品味相同的人。算法对这些人偏爱的其他的内容进行考察,并把它们组合起来形成一个...欧几里得距离本质是求出两个向量的夹角。皮尔逊相关度是对向量标准化(减去平均...

    介绍

    协作型过滤

    对一大群人进行搜索,找出与我们品味相同的人。算法对这些人偏爱的其他的内容进行考察,并把它们组合起来形成一个经过排名的推荐列表。

    先找到和我们志趣相投的人,那么那些志趣相投的人推荐的东西,肯定是我们喜欢的。

    寻找相似的用户

    把每个人与所有其他人进行比较,并计算他们的相似度评价值。有两种方法:欧几里得距离和皮尔逊相关度。

    欧几里得距离本质是求出两个向量的夹角。皮尔逊相关度是对向量标准化(减去平均值)之后再求它们的夹角。

    欧几里得距离

    欧几里得距离就是把每个人对电影的评价当作一个多维空间中的向量。两个人的相似程度就是两个向量的距离。

    1.    向量的维度就是电影名称

    2.    每个维度的值就是对这个电影的评分。

    可以通过下面的函数计算两个人的相似度。最后的返回值做了Normalization,保证返回1是完全相似。返回0是完全不相似。

    def sim_distance(prefs, p1, p2):
        ''' 
        Returns a distance-based similarity score for person1 and person2.
        '''
    
        # Get the list of shared_items
        si = {}
        for item in prefs[p1]:
            if item in prefs[p2]:
                si[item] = 1 
        # If they have no ratings in common, return 0
        if len(si) == 0:
            return 0
        # Add up the squares of all the differences
        sum_of_squares = sum([pow(prefs[p1][item] - prefs[p2][item], 2) for item in
                             prefs[p1] if item in prefs[p2]])
    return 1 / (1 + sqrt(sum_of_squares))
    

    皮尔逊相关度

    如果某个人评分总是比另外的人高,欧几里得距离就不是那么合适了。这个时候可以用皮尔逊相关度来计算两个变量的相关程度。

    pearson其实做的事情就是先把两个向量都减去他们的平均值,然后再计算两个向量的夹角余弦值。   

    两个变量之间的皮尔逊相关系数定义为两个变量之间的协方差标准差的商:


    上式定义了总体相关系数,常用希腊小写字母   p   作为代表符号。估算样本的协方差和标准差,可得到皮尔逊相关系数,常用英文小写字母 r代表:


      亦可由    样本点的标准分数均值估计,得到与上式等价的表达式:

     

     

    其中     

            分别是对   样本的标准分数、样本平均值和样本标准差

     

    皮尔逊相关度评价算法首先找出两位评论者都评价过的物品,然后计算两者的评分总和和平方和,评球的评分的乘积之和。

    算法的实现如下:(展开r的表达式,  = (X1 + X2 + .. Xn)/n

    def sim_pearson(prefs, p1, p2):
        ''' 
        Returns the Pearson correlation coefficient for p1 and p2.
        '''
    
        # Get the list of mutually rated items
        si = {}
        for item in prefs[p1]:
            if item in prefs[p2]:
                si[item] = 1
        # If they are no ratings in common, return 0
        if len(si) == 0:
            return 0
        # Sum calculations
        n = len(si)
        # Sums of all the preferences
        sum1 = sum([prefs[p1][it] for it in si])
        sum2 = sum([prefs[p2][it] for it in si])
        # Sums of the squares
        sum1Sq = sum([pow(prefs[p1][it], 2) for it in si])
        sum2Sq = sum([pow(prefs[p2][it], 2) for it in si])
        # Sum of the products
        pSum = sum([prefs[p1][it] * prefs[p2][it] for it in si])
        # Calculate r (Pearson score)
        num = pSum - sum1 * sum2 / n
        den = sqrt((sum1Sq - pow(sum1, 2) / n) * (sum2Sq - pow(sum2, 2) / n))
        if den == 0:
            return 0
        r = num / den
        return r,
    

    参考:

    1.    基于用户的协同过滤和皮尔逊相关系数http://blog.csdn.net/pi9nc/article/details/9328823

    2.    皮尔逊相关系数,https://baike.baidu.com/item/%E7%9A%AE%E5%B0%94%E9%80%8A%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0/12712835?fr=aladdin

    3.    书籍:《集体智慧编程》,Programming Collective Intelligence


    展开全文
  • 二、距离向量 1)欧氏距离 欧式距离是最容易值观理解的距离度量方法。 2)曼哈顿距离 在曼哈顿街区要从一个十字路口开车到另一个十字路口,驾驶距离显然不是两点之前的直线距离。这个实际的驾驶距离就是"曼哈顿距离...

    二、距离向量

    1)欧氏距离

    欧式距离是最容易值观理解的距离度量方法。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zmCovBFn-1573195675837)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/1.4%20%E6%AC%A7%E5%BC%8F%E8%B7%9D%E7%A6%BB2-1965410.png)]

    2)曼哈顿距离

    在曼哈顿街区要从一个十字路口开车到另一个十字路口,驾驶距离显然不是两点之前的直线距离。这个实际的驾驶距离就是"曼哈顿距离"。曼哈顿距离也称“城市街区距离”。

    在这里插入图片描述

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5mfaBqhG-1573195675846)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/1.6%20%E6%9B%BC%E5%93%88%E9%A1%BF%E8%B7%9D%E7%A6%BB.png)]

    3)切比雪夫距离

    国际象棋中,国王可以直行、横行、斜行,所以国王走一步可以移动到相邻8个方格中的任意一个。国王从格子(x1,y1)走到格子(x2,y2)最少需要走多少步?这个距离就叫做切比雪夫距离。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oosoEmkR-1573195675848)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/1.7%20%E5%88%87%E6%AF%94%E9%9B%AA%E5%A4%AB%E8%B7%9D%E7%A6%BB.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jh2WkPKB-1573195675849)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/1.8%20%E5%88%87%E6%AF%94%E9%9B%AA%E5%A4%AB%E8%B7%9D%E7%A6%BB.png)]

    4)闵可夫斯基距离

    闵氏距离不是一种距离,而是一组距离的定义,是对多个距离度量公式的概括性的表示。

    两个n维变量a(x11,x12,…x1n)与b(x21,x22,…,x2n)间的闵可夫斯基距离定义为:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KCzIXBz6-1573195675850)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/%E9%97%B5%E5%8F%AF%E5%A4%AB%E6%96%AF%E5%9F%BA%E8%B7%9D%E7%A6%BB.png)]

    其中p是一个变参数:

    • p=1的时候,就是曼哈顿距离;
    • p=2的时候,就是欧式距离;
    • p→∞的时候,就是切比雪夫距离。

    就是根据参数p的不同,闵氏距离可以表示某一种类/种的距离。

    但是:

    闵氏距离、曼哈顿距离、欧式距离和切比雪夫距离都存在明显的缺点

    • 将各个分两的量纲,也就是“单位”相同看待了。
    • 未考虑各个分量的分布(期望、方差等)可能是不同的。

    5)标准化欧氏距离

    标准化欧式距离是针对欧式距离的缺点而做的一种改进

    思路:既然数据各维分两的分布不一样,那就先将各个分量都”标准化“到均值、方差等。

    Sk表示各个维度的标准差

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r3tPK90q-1573195675851)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/%E6%A0%87%E5%87%86%E5%8C%96%E6%AC%A7%E5%BC%8F%E8%B7%9D%E7%A6%BB.png)]

    如果将方差的倒数看成一个权重,也可以称之为加权欧式距离

    6)余弦距离

    几何中,夹角余弦可用来衡量两个向量方向的差异;机器学习中,借用这一概念来衡量样本向量之间的差异。

    夹角余弦取值范围为[-1,1]。余弦越大表示两个向量的夹角越小,余弦越小表示两向量的夹角越大。当两个向量的方向重合时余弦取最大值1,当两个向量的方向完全相反余弦取最小值-1。

    结果越趋近于1越正相关,越趋近于-1则越负相关,越趋近于0说越无相关。

    7)汉明距离

    两个等长字符串s1与s2的汉明距离为:将其中一个变成为另一个所需要作的最小替换次数。

    汉明重量:是字符串相对于同样长度的零字符串的汉明距离,也就是说,它是字符串中非零的元素个数:对于二进制字符串来说,就是 1 的个数,所以 11101 的汉明重量是 4。因此,如果向量空间中的元素a和b之间的汉明距离等于它们汉明重量的差a-b。

    8)杰卡德距离

    杰卡德相似系数:两个集合A和B的交集元素在A和B的并集所占的比例,称为两个集合的杰卡德相似系数,用符号J(A,B)表示:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-awI0P0cP-1573195675852)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/%E6%9D%B0%E5%8D%A1%E5%BE%B7%E8%B7%9D%E7%A6%BB1.png)]

    杰卡德距离:与杰卡德相似系数相反,用两个集合中的不同元素占所有元素的比例来衡量两个集合的区分度:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TEeto4gQ-1573195675853)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/%E6%9D%B0%E5%8D%A1%E5%BE%B7%E8%B7%9D%E7%A6%BB2.png)]

    9)马氏距离

    下图有两个正态分布图,它们的均值分别为a和b,但方差不一样,则图中的A点离哪个总体更近?或者说A有更大的概率属于谁?显然,A离左边的更近,A属于左边总体的概率更大,尽管A与a的欧式距离远一些。这就是马氏距离的直观解释。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LhulTMFC-1573195675854)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/%E9%A9%AC%E6%B0%8F%E8%B7%9D%E7%A6%BB.png)]

    马氏距离是一种基于样本分布的距离

    马氏距离是由印度统计学家马哈拉诺比斯提出的,表示数据的协方差距离。它是一种有效的计算两个位置样本集的相似度的方法。

    与欧式距离不同的是,它考虑到各种特性之间的联系,即独立于测量尺度。

    **马氏距离定义:**设总体G为m维总体(考察m个指标),均值向量为μ=(μ1,μ2,… …,μm,)`,协方差阵为∑=(σij),

    则样本X=(X1,X2,… …,Xm,)`与总体G的马氏距离定义为:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o0U8KO58-1573195675854)(file:///C:/Users/%E6%B8%85%E9%A3%8E/Desktop/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AF%BE%E4%BB%B6/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%AE%B2%E4%B9%89/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%EF%BC%88%E7%AE%97%E6%B3%95%E7%AF%87%EF%BC%89/K-%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/images/%E9%A9%AC%E6%B0%8F%E8%B7%9D%E7%A6%BB1.png)]

    马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为∑的随机变量的差异程度:如果协方差矩阵为单位矩阵,马氏距离就简化为欧式距离;如果协方差矩阵为对角矩阵,则其也可称为正规化的欧式距离。

    马氏距离特性:

    1.量纲无关,排除变量之间的相关性的干扰;

    2.马氏距离的计算是建立在总体样本的基础上的,如果拿同样的两个样本,放入两个不同的总体中,最后计算得出的两个样本间的马氏距离通常是不相同的,除非这两个总体的协方差矩阵碰巧相同;

    3 .计算马氏距离过程中,要求总体样本数大于样本的维数,否则得到的总体样本协方差矩阵逆矩阵不存在,这种情况下,用欧式距离计算即可。

    4.还有一种情况,满足了条件总体样本数大于样本的维数,但是协方差矩阵的逆矩阵仍然不存在,比如三个样本点(3,4),(5,6),(7,8),这种情况是因为这三个样本在其所处的二维空间平面内共线。这种情况下,也采用欧式距离计算。

    展开全文
  • 向量之间的余弦相似度Prerequisite: 先决条件: Defining a Vector using list 使用列表定义向量 Defining Vector using Numpy 使用Numpy定义向量 Cosine similarity is a metric used to measure how similar ...

    两向量之间的余弦相似度

    Prerequisite:

    先决条件:

    Python | Cosine Similarity between two vectors

    Cosine similarity is a metric used to measure how similar the vectors are irrespective of their size. Mathematically, it is a measure of the cosine of the angle between two vectors in a multi-dimensional space. The cosine similarity is advantageous because even if the two similar vectors are far apart by the Euclidean distance, chances are they may still be oriented closer together. The smaller the angle, the higher the cosine similarity.

    余弦相似度是一种度量标准,用于测量向量的大小无关性。 从数学上讲,它是多维空间中两个向量之间角度的余弦的量度。 余弦相似度是有利的,因为即使两个相似向量相距欧几里德距离,它们仍然有可能更靠近在一起。 角度越小,余弦相似度越高。

    LA Cosine

    两个向量之间的余弦相似性的Python代码 (Python code for cosine similarity between two vectors)

    # Linear Algebra Learning Sequence
    # Cosine Similarity
    
    import numpy as np
    
    a = np.array([2, 4, 8, 9, -6])
    b = np.array([2, 3, 1, 7, 8])
    
    ma = np.linalg.norm(a)
    mb = np.linalg.norm(b)
    
    print('A : ', a)
    print('B : ', b)
    
    # Cosine Similarity
    sim = (np.matmul(a,b))/(ma*mb)
    
    print('\n\nCosine Similarity between A and B : ', sim)
    
    

    Output:

    输出:

    A :  [ 2  4  8  9 -6]
    B :  [2 3 1 7 8]
    
    
    Cosine Similarity between A and B :  0.2440982792118955
    
    
    

    翻译自: https://www.includehelp.com/python/cosine-similarity-between-two-vectors.aspx

    两向量之间的余弦相似度

    展开全文
  • 在NLP中文本均会被表示为向量的形式,为了给出任何两个文本之间的相似程度,则可以利用各类的距离进行表示,其中最为著名的两种距离就是欧式距离和宇轩相似度,此外还有曼哈顿距离也被广泛使用。而这三个测度方式均...


    在NLP中文本均会被表示为向量的形式,为了给出任何两个文本之间的相似程度,则可以利用各类的距离进行表示,其中最为著名的两种距离就是欧式距离和宇轩相似度,此外还有曼哈顿距离也被广泛使用。而这三个测度方式均是在欧式空间下进行的。

    本文以如下的两个向量作为例子进行具体的阐述:

    	vec1=[x1,x2,x3...xn]
    	vec2=[y1,y2,y3...yn]
    

    欧氏距离

    欧式距离就是最简单最直观的测度方式,两点之间连线最短,把这两个点的连线的距离计算出来就可以得到欧氏距离的结果了。也就是利用如下的公式可以计算出来。

    E u c l i d e a n _ D i s t a n c e ( v e c 1 , v e c 2 ) = ∑ i = 1 n ( x i − y i ) 2 Euclidean\_Distance(vec1,vec2)=\sqrt{\sum_{i=1}^n(x_i-y_i)^2} Euclidean_Distance(vec1,vec2)=i=1n(xiyi)2

    曼哈顿距离

    曼哈顿距离作为向量距离的另一种测度方式,是将某一向量在绝对值方向上进行移动,最终变为另一向量的总体变动的距离之和。具体的公式可以表示为如下形式。
    M a n h a t t a n _ D i s t a n c e ( v e c 1 , v e c 2 ) = ∑ i = 1 n ∣ x i − y i ∣ Manhattan\_Distance(vec1,vec2)=\sum_{i=1}^n|x_i-y_i| Manhattan_Distance(vec1,vec2)=i=1nxiyi

    曼哈顿距离和欧氏距离的区别

    在这里插入图片描述
    引用最经典的一个图,上图可以认为是两点之间的4个路径。其中绿色路径的距离是欧式距离,而剩下的三条均是曼哈顿距离。

    可以直观的理解,欧式距离与平方相关,曼哈顿距离与绝对值相关。

    余弦相似度

    本质上余弦相似度并不是一种距离的测度,当然可以利用1-余弦相似度的方法来定义余弦距离。但是余弦相似度与欧氏距离经常一起出现。所以本文也一并将其列出来进行简单的介绍。
    c o s i n e _ s i m i l a r i t y ( v e c 1 , v e c 2 ) = v e c 1 ⋅ v e c 2 ∣ v e c 1 ∣ × ∣ v e c 2 ∣ = ∑ i = 1 n ( x i × y i ) ∑ i = 1 n x i × ∑ i = 1 n y i cosine\_similarity(vec1,vec2)=\frac{vec1\cdot vec2}{|vec1|\times |vec2|}=\frac{\sum_{i=1}^n(x_i\times y_i)}{\sum_{i=1}^nx_i \times \sum_{i=1}^ny_i} cosine_similarity(vec1,vec2)=vec1×vec2vec1vec2=i=1nxi×i=1nyii=1n(xi×yi)

    余弦相似度和欧氏距离的区别

    在这里插入图片描述
    上图较为清晰的表示出欧氏距离与余弦相似度的本质内容,一个是真实在数值上的差异,另一个是在方向与趋势上的差异。

    不同的使用场景需要选择不同的度量方式。

    展开全文
  • 向量距离和相似度

    千次阅读 2016-09-01 22:25:10
    向量之间的关系,统计学上的距离和方向的角度来分析关联性的一些常用的指标。
  • 在机器学习里,我们的运算一般都是基于向量的,一条用户具有100个特征,那么他对应的就是一个100维的向量,通过计算两个用户对应向量之间距离值大小,有时候能反映出这两个用户的相似程度。这在后面的KNN算法和K-...
  • 1.欧氏距离(Euclidean Distance) 欧氏距离是最易于理解的一...(3)两个n维向量a(x11,x12,…,x1n)与 b(x21,x22,…,x2n)间的欧氏距离:  也可以用表示成向量运算的形式: (4)Matlab计算欧氏距离 Matlab计算距...
  • 向量距离与范数

    千次阅读 2015-04-05 14:39:38
    欧氏距离(Euclidean Distance) 欧氏距离是最易于理解的一种距离计算方法,源自欧氏空间中两点间的距离公式。 (1)二维平面上两点a(x1,y1)与b(x2,y2)间的欧氏距离: ...(3)两个n维向量a(x11,x12,…,x1n)与 b(x21,x2
  • 距离向量路由选择

    千次阅读 2019-11-06 21:50:43
    距离向量路由选择是通过对Bellman-Ford算法进行适当修改,找到任意两结点之间的最短路径。 ​ 先介绍一下Bellman-Ford算法: 1 Bellman-Ford算法 ​ 这个算法基于这样一个事实,如果结点 i 的所有邻站都知道到...
  • 向量相似度匹配之豪氏距离

    千次阅读 2014-01-16 21:38:55
    Hausdorff 距离是描述两组点集(两个向量)之间相似程度的一种量度,它是两个点集之间距离的一种定义形式: 假设有两组集合A={a1,…,ap},B= {b1,…,bq},则这两个点集合之间的Hausdorff 距离定义为: H(A...
  • (我理解为:这个距离主要是用来计算两个向量中两个点之间距离,结果对数值非常敏感,突出的是一种数值大小的感受,如判断图片的分类时,对图片进行打分) 余弦相似性 余弦定理:cosM=(向量A.向量B)/||A||*||...
  • 第一篇博客part1的部分很短,就说了一个事情,SVM在试图找一个Max Margin(最大间隔)的分离超平面。OK,这个部分要补补基础,复习一下数学,为后面的学习做准备(墙裂建议数学...咱们来看看SVM涉及到的向量和空间距离
  • 向量空间中各类距离表示

    千次阅读 2018-04-02 13:28:57
    严格意义上讲,闵可夫斯基距离不是一种距离,而是一组距离定义。 两个n维变量A(x11,x12,…x1n)与B(x21,x22,…,x2n)间的闵可夫斯基距离定义为: 其中p是一个变参数 [ ] 当p=1时,就是曼哈顿距离。 [ ] 当p=...
  • 一、RIP简介 RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统...(2)从一个路由器到另一个非直接相连的路由器距离定义为所经过路由器的个数加.
  • Jaccard相似度:集合之间的Jaccard相似度等于交集大小与并集大小的比例。适合的应用包括文档文本相似度以及顾客购物习惯的相似度计算等。 Shingling:k-shingle是指文档中连续出现的任意k个字符。如果将文档表示...
  • 利用向量求点到线的最短距离

    千次阅读 2020-02-20 16:24:03
    参考JTS的CGAlgorithms类distancePointLine方法,实现原理是根据向量原理进行计算 利用向量积(叉积)计算三角形...在这里θ表示两向量之间的角夹角(0° ≤ θ ≤ 180°),它位于这两个矢量 所定义的平面上。 向...
  • 各种距离定义与理解

    千次阅读 2013-04-15 19:46:54
    定义:p维空间的两点(两个p维向量x,y)的距离定义为: 并且点x欧氏模数为: 这里很快可以得出,所有到原点距离相等的点满足 这是某个正球体的方程。这就是说观测数据x的各个分量对x至
  • 各种距离定义

    千次阅读 2019-09-14 07:28:55
    1、欧式距离(欧几里得距离) 欧式距离是最易理解的距离定义,即各坐标点的坐标之差的平方和相加,然后开根号。 二维平面上点 与点 之间的距离公式是: n维空间上点 和点 之间的距离公式是: 2、曼哈顿距离 ...
  • 概述 现在我们使用的一些APP都有智能推荐功能,例如抖音能够根据你的口味推荐符合你口味的短视频,网易云音乐每天会有大约...简单的推荐系统底层的基础原理是线性代数中的向量空间,以及欧几里得距离向量空间 向...
  • (1)Python之向量(Vector)距离矩阵计算

    万次阅读 多人点赞 2018-12-17 14:06:40
    矩阵自身(行)向量之间距离矩阵计算2.1 第一种方法:简单使用两重循环2.2 第二种方法:矩阵內积双重循环2.3 第三种方法:避免循环内的点积运算2.4 第四种方法:避免循环2.5 第五种方法:利用`scipy`求距离矩阵...
  • 向量空间中各类距离的意义

    千次阅读 2015-12-08 09:34:28
    标签: 数学基础 闵可夫斯基距离 欧氏距离Euclidean Distance 曼哈顿距离Manhattan Distance 切比雪夫距离Chebyshev Distance ...1. 闵可夫斯基距离严格意义上讲,闵可夫斯基距离不是一种距离,而是一组距离定义。两
  • 假设有两个三维向量集,用矩阵表示: 要求A,B两个集合中的元素两两间...将上面这个矩阵一开平方,就得到了A,B向量集两两间的欧式距离了。 代码: def EuclideanDistances(A, B): BT = B.transpose() # vecP...
  • 斯坦福大学在三月份开设了一门“深度学习与自然语言处理”的课程:CS224d: Deep Learning for Natural Language ...第三讲:高级的词向量表示(Advanced word vector representations: language models, softmax, si...
  • 向量间的距离或相似性度量计算

    万次阅读 2017-01-02 12:19:50
    在做分类时常常需要估算不同样本之间的相似性度量(SimilarityMeasurement),这时通常采用的方法就是计算样本间的“距离”(Distance)。采用什么样的方法计算距离是很讲究,甚至关系到分类的正确与否。  本文的...
  • RIP协议和距离向量算法

    千次阅读 2020-08-06 19:31:31
    RIP(Routing Information Protocol,路由信息协议) 是一种内部网关协议(IGP),是一种动态路由选择...RIP协议基于距离矢量算法(DistanceVectorAlgorithms),使用“跳数”(即metric)来衡量到达目标地址的路由距离
  • RIP及距离向量算法

    千次阅读 2018-10-09 21:39:00
    从一路由器到非直接连接的路由器的距离定义为所经过的路由器数加 1。 RIP允许一条路径最多包含 15 个路由器,即“距离”等于 16 时不可达。 RIP选择一条具有最少路由器的路由(最短路由),哪怕还存在另一条...
  • 向量范数

    万次阅读 多人点赞 2019-06-04 11:03:05
    声明: 仅个人小记 效果展示 绘制∥v⃗∥p=1\left \| \vec{v}\right \|_p = 1∥v∥p​=1的图像如下 当 p = 0 ...向量范数定义 总体定义 ∥v⃗∥p=(∣v1∣p+∣v2∣p+...+∣vn∣p)1p\left \| \vec{v}\righ...
  • spark-mllib-kmeans向量表示和距离计算

    万次阅读 2014-11-04 15:24:29
    mllib在实现kmeans的过程中,对于距离的计算,使用了一些技巧。 首先要注意的是,mllib的jar中包org.apache.spark.mllib.linalg下定义了DenseVector,SparseVector,Vector等类或对象或特质。但实际上在真正...
  • 基于距离向量算法的路由协议的实现
  • 数据点之间距离计算(转载)

    千次阅读 2017-08-06 12:13:24
    在分类聚类算法,推荐系统中,常要用到两个输入变量(通常是特征向量的形式)距离的计算,即相似性度量.不同相似性度量对于算法的结果,有些时候,差异很大.因此,有必要根据输入数据的特征,选择一种合适的相似性度量方法. ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 66,854
精华内容 26,741
关键字:

向量之间的距离定义