• 机器学习数学基础之 杰卡德(Jaccard)距离、余弦距离


    杰卡德距离(Jaccard Distance):

      杰卡德相似系数(Jaccard similarity coefficient):两个集合A和B的交集元素在A,B的并集中所占的比例,称为两个集合的杰卡德相似系数,用符号J(A,B)表示:

      \(J\left ( A,B\right ) = \frac{\left | A\cap B\right |}{\left | A\cup B\right |}\)

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

      \(J_{\delta }\left ( A,B\right ) = 1-J\left ( A,B\right )=\frac{\left | A\cup B\right |-\left | A\cap B\right |}{\left | A\cup B\right |}\)

    •   Matlab计算杰卡德距离:(Matlab中将杰卡德距离定义为不同的维度的个数占“非全零维度”的比例

                      

                    

     余弦距离(Cosine Distance):

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

    二维空间中向量 a(x1,x2),b(y1,y2) 的夹角余弦公式:

        \(cos\theta = \frac{x_{1}y_{1}+ x_{2}y_{2}}{\sqrt{x_{1}^{2}+x_{2}^{2}}\sqrt{y_{1}^{2}+y_{2}^{2}}}\)

      两个n维样本点 a(x1,x2,......,xn),b(y1,y2,......yn)的夹角余弦为:

        \(cos\theta = \frac{\vec{a}\cdot \vec{b}}{\left | a\right |\left | b\right |}\)

      即:

        \(cos\theta = \frac{\sum_{i=1}^{n}x_{i}y_{i}}{\sqrt{\sum_{i=1}^{n}x_{i}^{2}}\sqrt{\sum_{i=1}^{n}y_{i}^{2}}}\)

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

      Matlab计算夹角余弦(Matlab中的pdist(X, ‘cosine’)得到的是1减夹角余弦的值):

      

     学习博客:here

  • 相关阅读:
    代码仓库
    介绍
    创建mysql数据库的命令
    操作流程
    Ubuntu20.04下Mercurial的安装与配置
    邮件列表-OpenJDK
    代码约定--OpenJDK
    ubuntu20.04 下 ADB调试android工具的安装
    openjdk开发者指南
    verifying module: xxx: initializing sumdb.Client: reading tree note: malformed note 解决方案
  • 原文地址:https://www.cnblogs.com/wsy107316/p/16218500.html
Copyright © 2020-2023  润新知