数极客首页

数据挖掘化功大法(7)——矩阵

我们将一个对象的一个属性扩展到多个对象的多个属性,就形成了矩阵。

数据挖掘化功大法(7)——矩阵
数据挖掘化功大法(7)——矩阵

相异性矩阵:

相异度矩阵存储n个对象两两之间的相似性,表现形式是一个n×n维的矩阵。d(i,j)是对象i和j之间相异性的量化表示,通常为非负值,两个对象越相似或“接近”,其值越接近0,越不同,其值越大,且d(i,j)= d(j,i),d(i,i)=0。

相异度矩阵是对象—对象结构的一种数据表达方式,多数聚类算法都是建立在相异度矩阵基础上,如果数据是以数据矩阵形式给出的,就要将数据矩阵转化为相异度矩阵。对象间的相似度或相异度是基于两个对象间的距离来计算的。

数据的相似性(similarity)和相异性(dissimilarity)都称为邻近性(proximity)。两个对象越相似则相似性值越高,越相异则相异性值越高。用于度量相似性和相异性的数据结构是:数据矩阵(用于存放数据对象)和相异性矩阵(用于存放数据对象对的相异性值)。

标称属性的邻近性度量

假设标称属性的状态数目是M。两个对象i和j之间的相异性可以根据不匹配率来计算:

数据挖掘化功大法(7)——矩阵

其中,p是刻画对象的属性总数,m是两个对象取值相同的属性数。

相似性可以用下式计算:sim(i,j) = 1 – d(i,j) = m / p。

示例

假如我们有以下的样本数据:

对象标识符属性1

1 A

2 B

3?C

4?A

此处令p=1,获取4个对象构成的相异性矩阵如下所示:

有相异性矩阵可得

数据挖掘化功大法(7)——矩阵
数据挖掘化功大法(7)——矩阵

0

(1-0)/10

(1-0)/1(1-0)/10

(1-1)/1(1-0)/1(1-0)/10

得到结果如下:

数据挖掘化功大法(7)——矩阵

由相异性矩阵可知,对象1和4是相似的,其他对象互不相似。

二元属性的邻近性度量

二元属性只有两种状态。

二元属性的邻近性度量分为对称的(symmetric)和非对称(asymmetric)的两种情况。对称的二元属性是指两个状态都同样重要,非对称的二元属性是指一个状态可以被忽略。

对于二元属性的相似性度量,首先需要制作两个对象的二元属性的列联表,如下所示:

二元属性的列联表

数据挖掘化功大法(7)——矩阵

表中q是对象i和j都取1的属性数;r是在对象i中取1、在对象j中取0的属性数;s是在对象i中取0、在对象j中取1的属性数;t是对象i和j都取0的属性数。属性的总数是p,p=q + r + s + 。

如果对象i和j都是用对称的二元属性刻画,则i和j的相异性为:

数据挖掘化功大法(7)——矩阵

如果对象i和j都是用非对称的二元属性刻画,只有一个结果是重要的,那么上述公式中的t认为是可被忽略的,则i和j的相异性为:

数据挖掘化功大法(7)——矩阵

非对称的二元相似性可以用下式计算:

数据挖掘化功大法(7)——矩阵

公式中的sim(i,j)被称作Jaccard系数。

本文采用「CC BY-SA 4.0 CN」协议转载学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请联系「我们」处理。

发表评论

评论已关闭。

相关文章