相似性度量—距离2
来源:互联网 发布:pdf.js ajax 编辑:程序博客网 时间:2024/05/22 14:12
接着介绍剩下的几种距离公式及pyhton实现。
5.夹角余弦(Cosine)
几何中的夹角余弦可用来衡量两个向量方向的差异,机器学习中借用这一条来衡量样本向量之间的差异。
(1)在二维空间中向量
(2)对于两个n维样本点
夹角余弦的取值范围为[-1, 1],夹角余弦越大,表示两个向量的夹角越小。夹角余弦越小,表示两个向量的夹角越大。当两个向量的方向重合时,夹角余弦最大为1。当两个向量的方向完全相反时,夹角余弦最小为-1。
(3)python实现夹角余弦。
1. from numpy import * 2. vector1 = [1, 2, 3] 3. vector2 = [4, 5, 6] 4. cosV12 = dot(vector1, vector2)/(linalg.norm(vector1) * linalg.norm(vector2)) 5. print cosV12
6.汉明距离(Hamming Distance)
(1)定义:两个等长字符串S1与S2之间的汉明距离定义为将其中一个变换为两一个所需的最小变换次数。例如,“1111”与“1001”之间的汉明距离为2.
(2)python实现汉明距离。
1. from numpy import * 2. matV = mat([[1, 1, 0, 1, 0, 1, 0, 0, 1], [0, 1, 1, 0, 0, 0, 1, 1, 1]]) 3. smstr = nonzero(matV[0] - matv[1]) 4. print shape(smstr[0])[0]
7.杰卡德相似系数(Jaccard Similarity Coefficient)
(1)定义:两个集合
(2)杰卡德距离:与杰卡德相似系数相反的概念,用两个集合中不同元素占所有元素的比例来衡量两个集合的区分度。可表示为:
(3)python实现杰卡德距离
1. from numpy import * 2. import scipy.spatial.distance as dist 3. matV = mat([[1, 1, 0, 1, 0, 1, 0, 0, 1], [0, 1, 1, 0, 0, 0, 1, 1, 1]]) 4. print "dist.jaccard:", dist.pdist(matV, 'jaccard')
至此,几种相似性度量的几种方法介绍完毕。
- 相似性度量—距离2
- 相似性度量—距离1
- 距离度量和相似性度量
- 相似性距离度量
- 距离和相似性度量
- 距离和相似性度量
- 距离和相似性度量
- 距离与相似性度量
- 距离和相似性度量
- 各种距离【相似性度量】
- 距离和相似性度量
- 距离和相似性度量
- 距离与相似性度量
- 距离与相似性度量
- 相似性度量的各种距离
- 相似性度量(距离 相似系数)
- 各种距离的相似性度量
- 距离和相似性度量方法
- NB-IoT学习笔记_汇总
- anaconda常用命令
- Visual C++异常处理机制原理与应用(三)——C/C++结构化异常处理之try-except异常处理的使用(上)
- JDBC—JDBC中的异常处理
- Bzoj5088 HDU 6000 Wash
- 相似性度量—距离2
- 为什么要学习硬件
- Coin Change
- Codeforces Round #449 div2 C(递归求解)
- Codeforces Round #422 (Div. 2) C Hacker, pack your bags! (二分orDP)
- Object.prototype.toString.call(obj)检测对象类型?
- 日记:opencv3.0以后的版本变化
- 欢迎使用CSDN-markdown编辑器
- NVIDIA TK1 学习笔记(2):环境配置