数据仓库作业四:第7章 数据的属性与相似性


第7章 数据的属性与相似性

作业题

1、设有10个二元属性,3个数据对象的数据集(表1)。

id A 1 A_1 A1 A 2 A_2 A2 A 3 A_3 A3 A 4 A_4 A4 A 5 A_5 A5 A 6 A_6 A6 A 7 A_7 A7 A 8 A_8 A8 A 9 A_9 A9 A 10 A_{10} A10
X 1 X_1 X11011111011
X 2 X_2 X21100100110
X 3 X_3 X30110111001

试计算简单匹配系数相似度 s m c ( X 1 , X 2 ) s_{mc}(X_1,X_2) smc(X1,X2) s m c ( X 2 , X 3 ) s_{mc}(X_2,X_3) smc(X2,X3);Jaccard 系数相似度 s j c ( X 1 , X 2 ) s_{jc}(X_1,X_2) sjc(X1,X2) s j c ( X 2 , X 3 ) s_{jc}(X_2,X_3) sjc(X2,X3);Rao 系数相似度 s r c ( X 1 , X 2 ) s_{rc}(X_1,X_2) src(X1,X2) s r c ( X 2 , X 3 ) s_{rc}(X_2,X_3) src(X2,X3)

解:

由题可知, X 1 = ( 1 , 0 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 ) X_1=(1,0,1,1,1,1,1,0,1,1) X1=(1,0,1,1,1,1,1,0,1,1) X 2 = ( 1 , 1 , 0 , 0 , 1 , 0 , 0 , 1 , 1 , 0 ) X_2=(1,1,0,0,1,0,0,1,1,0) X2=(1,1,0,0,1,0,0,1,1,0)

比较 X 1 X_1 X1 X 2 X_2 X2 每一个属性的取值情况,可得 f 11 = 3 f_{11}=3 f11=3 f 10 = 5 f_{10}=5 f10=5 f 01 = 2 f_{01}=2 f01=2 f 00 = 0 f_{00}=0 f00=0

向量的维数 d = f 11 + f 10 + f 01 + f 00 = 10 d=f_{11}+f_{10}+f_{01}+f_{00}=10 d=f11+f10+f01+f00=10

计算得:
s m c ( X 1 , X 2 ) = f 11 + f 00 f 11 + f 10 + f 01 + f 00 = f 11 + f 00 d = 3 10 s_{mc}(X_1,X_2)=\frac{f_{11}+f_{00}}{f_{11}+f_{10}+f_{01}+f_{00}}=\frac{f_{11}+f_{00}}{d}=\frac{3}{10} smc(X1,X2)=f11+f10+f01+f00f11+f00=df11+f00=103 s j c ( X 1 , X 2 ) = f 11 f 11 + f 10 + f 01 = f 11 d − f 00 = 3 10 s_{jc}(X_1,X_2)=\frac{f_{11}}{f_{11}+f_{10}+f_{01}}=\frac{f_{11}}{d-f_{00}}=\frac{3}{10} sjc(X1,X2)=f11+f10+f01f11=df00f11=103 s r c ( X 1 , X 2 ) = f 11 f 11 + f 10 + f 01 + f 00 = f 11 d = 3 10 s_{rc}(X_1,X_2)=\frac{f_{11}}{f_{11}+f_{10}+f_{01}+f_{00}}=\frac{f_{11}}{d}=\frac{3}{10} src(X1,X2)=f11+f10+f01+f00f11=df11=103
由题可知, X 2 = ( 1 , 1 , 0 , 0 , 1 , 0 , 0 , 1 , 1 , 0 ) X_2=(1,1,0,0,1,0,0,1,1,0) X2=(1,1,0,0,1,0,0,1,1,0) X 3 = ( 0 , 1 , 1 , 0 , 1 , 1 , 1 , 0 , 0 , 1 ) X_3=(0,1,1,0,1,1,1,0,0,1) X3=(0,1,1,0,1,1,1,0,0,1)

比较和每一个属性的取值情况,可得 f 11 = 2 f_{11}=2 f11=2 f 10 = 3 f_{10}=3 f10=3 f 01 = 4 f_{01}=4 f01=4 f 00 = 1 f_{00}=1 f00=1

向量的维数 d = f 11 + f 10 + f 01 + f 00 = 10 d=f_{11}+f_{10}+f_{01}+f_{00}=10 d=f11+f10+f01+f00=10

计算得:
s m c ( X 2 , X 3 ) = f 11 + f 00 f 11 + f 10 + f 01 + f 00 = f 11 + f 00 d = 3 10 s_{mc}(X_2,X_3)=\frac{f_{11}+f_{00}}{f_{11}+f_{10}+f_{01}+f_{00}}=\frac{f_{11}+f_{00}}{d}=\frac{3}{10} smc(X2,X3)=f11+f10+f01+f00f11+f00=df11+f00=103 s j c ( X 2 , X 3 ) = f 11 f 11 + f 10 + f 01 = f 11 d − f 00 = 2 10 − 1 = 2 9 s_{jc}(X_2,X_3)=\frac{f_{11}}{f_{11}+f_{10}+f_{01}}=\frac{f_{11}}{d-f_{00}}=\frac{2}{10-1}=\frac{2}{9} sjc(X2,X3)=f11+f10+f01f11=df00f11=1012=92 s r c ( X 2 , X 3 ) = f 11 f 11 + f 10 + f 01 + f 00 = f 11 d = 2 10 = 1 5 s_{rc}(X_2,X_3)=\frac{f_{11}}{f_{11}+f_{10}+f_{01}+f_{00}}=\frac{f_{11}}{d}=\frac{2}{10}=\frac{1}{5} src(X2,X3)=f11+f10+f01+f00f11=df11=102=51

2、设有5个分类属性,3个数据对象的数据集(表2)。

对象id背景颜色婚姻状况性别血型职业
X 1 X_1 X1单身B工人
X 2 X_2 X2离异AB工人
X 3 X_3 X3单身B教师

试计算 s ( X 1 , X 2 ) s(X_1,X_2) s(X1,X2) s ( X 1 , X 3 ) s(X_1,X_3) s(X1,X3) s ( X 2 , X 3 ) s(X_2,X_3) s(X2,X3)

解:

利用 X i X_i Xi X j X_j Xj 的相似度公式 s ( X i , X j ) = p d s(X_i,X_j)=\frac{p}{d} s(Xi,Xj)=dp p p p X i X_i Xi X j X_j Xj 的对应属性值 x i k = x j k x_{ik}=x_{jk} xik=xjk 的个数, d d d 是向量的维数。

由题可知,向量的维数 d = 5 d=5 d=5,对象 X 1 X_1 X1 X 2 X_2 X2 在职业分量上取相同的值,

计算得,
s ( X 1 , X 2 ) = p 1 d = 1 5 s(X_1,X_2)=\frac{p_1}{d}=\frac{1}{5} s(X1,X2)=dp1=51

同理可得,
s ( X 1 , X 3 ) = p 2 d = 2 5 s(X_1,X_3)=\frac{p_2}{d}=\frac{2}{5} s(X1,X3)=dp2=52 s ( X 2 , X 3 ) = p 3 d = 1 5 s(X_2,X_3)=\frac{p_3}{d}=\frac{1}{5} s(X2,X3)=dp3=51

3、假设某校用考试成绩、奖学金和月消费3个属性来描写学生在校的信息(表3)。

其中第1个属性考试成绩取 m 1 = 5 m_1=5 m1=5 个状态,其顺序排位为优>良>中>及格>不及格;第2个属性奖学金取 m 2 = 3 m_2=3 m2=3 个状态,其顺序排位为甲>乙>丙;第3个属性月消费取 m 3 = 3 m_3=3 m3=3 个状态,其顺序排位为高>中>低。

对象id成绩奖学金月消费
X 1 X_1 X1
X 2 X_2 X2
X 3 X_3 X3

试按照序数属性相似度计算方法求 s ( X 1 , X 2 ) s(X_1,X_2) s(X1,X2) s ( X 1 , X 3 ) s(X_1,X_3) s(X1,X3) s ( X 2 , X 3 ) s(X_2,X_3) s(X2,X3)

解:

首先将序数属性的值域映射为整数排位集合。

{ 优 , 良 , 中 , 及格 , 不及格 } ⇒ { 5 , 4 , 3 , 2 , 1 } \{优,良,中,及格,不及格\}\Rightarrow\{5,4,3,2,1\} {,,,及格,不及格}{5,4,3,2,1},其中最大排位数 m 1 = 5 m_1=5 m1=5

{ 甲 , 乙 , 丙 } ⇒ { 3 , 2 , 1 } \{甲,乙,丙\}\Rightarrow\{3,2,1\} {,,}{3,2,1},其中最大排位数 m 2 = 3 m_2=3 m2=3

{ 高 , 中 , 低 } ⇒ { 3 , 2 , 1 } \{高,中,低\}\Rightarrow\{3,2,1\} {,,}{3,2,1},其中最大排位数 m 3 = 3 m_3=3 m3=3

将每个属性的取值用其排位的整数代替,得

对象id成绩奖学金月消费
X 1 X_1 X1433
X 2 X_2 X2532
X 3 X_3 X3313

利用公式 z i k = x i k − 1 m k − 1 z_{ik}=\frac{x_{ik}-1}{m_k-1} zik=mk1xik1将其映射到 [ 0 , 1 ] [0,1] [0,1] 区间的实数,并代替原先的排位整数,得到数值属性的数据集。

对于数据对象 X 1 X_1 X1 ,其成绩排位整数是 4,而 m 1 = 5 m_1=5 m1=5 ,因此 z 11 = ( x 11 − 1 ) / ( m 1 − 1 ) = ( 4 − 1 ) / ( 5 − 1 ) = 0.75 z_{11}=(x_{11}-1)/(m_1-1)=(4-1)/(5-1)=0.75 z11=(x111)/(m11)=(41)/(51)=0.75 X 2 X_2 X2 的成绩排位数是 5,映射为 z 21 = ( x 21 − 1 ) / ( m 1 − 1 ) = ( 5 − 1 ) / ( 5 − 1 ) = 1 z_{21}=(x_{21}-1)/(m_1-1)=(5-1)/(5-1)=1 z21=(x211)/(m11)=(51)/(51)=1 X 3 X_3 X3 的成绩排位数是 3,映射为 z 31 = ( x 31 − 1 ) / ( m 1 − 1 ) = ( 3 − 1 ) / ( 5 − 1 ) = 0.5 z_{31}=(x_{31}-1)/(m_1-1)=(3-1)/(5-1)=0.5 z31=(x311)/(m11)=(31)/(51)=0.5

同理可得 X 1 X_1 X1 X 2 X_2 X2 X 3 X_3 X3 的奖学金和月消费的实数值。

对象id成绩奖学金月消费
X 1 X_1 X10.7511
X 2 X_2 X2110.5
X 3 X_3 X30.501

选用欧几里得距离公式计算任意两点之间的相异度,得
d ( X 1 , X 2 ) = ( 0.75 − 1 ) 2 + ( 1 − 1 ) 2 + ( 1 − 0.5 ) 2 = 5 16 d(X_1,X_2)=\sqrt{(0.75-1)^2+(1-1)^2+(1-0.5)^2}=\sqrt{\frac{5}{16}} d(X1,X2)=(0.751)2+(11)2+(10.5)2 =165 d ( X 1 , X 3 ) = ( 0.75 − 0.5 ) 2 + ( 1 − 0 ) 2 + ( 1 − 1 ) 2 = 17 16 d(X_1,X_3)=\sqrt{(0.75-0.5)^2+(1-0)^2+(1-1)^2}=\sqrt{\frac{17}{16}} d(X1,X3)=(0.750.5)2+(10)2+(11)2 =1617 d ( X 2 , X 3 ) = ( 1 − 0.5 ) 2 + ( 1 − 0 ) 2 + ( 0.5 − 1 ) 2 = 3 2 d(X_2,X_3)=\sqrt{(1-0.5)^2+(1-0)^2+(0.5-1)^2}=\sqrt{\frac{3}{2}} d(X2,X3)=(10.5)2+(10)2+(0.51)2 =23

由公式 s ( X i , X j ) = 1 d ( X i , X j ) s(X_i,X_j)=\frac{1}{d(X_i,X_j)} s(Xi,Xj)=d(Xi,Xj)1计算得相似度
s ( X 1 , X 2 ) = 1 d ( X 1 , X 2 ) = 16 5 ≈ 1.79 s(X_1,X_2)=\frac{1}{d(X_1,X_2)}=\sqrt{\frac{16}{5}}\approx1.79 s(X1,X2)=d(X1,X2)1=516 1.79 s ( X 1 , X 3 ) = 1 d ( X 1 , X 3 ) = 16 17 ≈ 0.97 s(X_1,X_3)=\frac{1}{d(X_1,X_3)}=\sqrt{\frac{16}{17}}\approx0.97 s(X1,X3)=d(X1,X3)1=1716 0.97 s ( X 2 , X 3 ) = 1 d ( X 2 , X 3 ) = 2 3 ≈ 0.82 s(X_2,X_3)=\frac{1}{d(X_2,X_3)}=\sqrt{\frac{2}{3}}\approx0.82 s(X2,X3)=d(X2,X3)1=32 0.82

4、对于如下表4所示的数据集,试计算余弦相似度 s c o s ( X 1 , X 3 ) s_{cos}(X_1,X_3) scos(X1,X3) s c o s ( X 2 , X 3 ) s_{cos}(X_2,X_3) scos(X2,X3) 的值。

文档号球队教练冰球棒球足球罚球得分赢球输球赛季
X 1 X_1 X15030100100
X 2 X_2 X23020110101
X 3 X_3 X34120210100

解:

X 1 = ( 5 , 0 , 3 , 0 , 1 , 0 , 0 , 1 , 0 , 0 ) X_1=(5,0,3,0,1,0,0,1,0,0) X1=(5,0,3,0,1,0,0,1,0,0) X 2 = ( 3 , 0 , 2 , 0 , 1 , 1 , 0 , 1 , 0 , 1 ) X_2=(3,0,2,0,1,1,0,1,0,1) X2=(3,0,2,0,1,1,0,1,0,1) X 3 = ( 4 , 1 , 2 , 0 , 2 , 1 , 0 , 1 , 0 , 0 ) X_3=(4,1,2,0,2,1,0,1,0,0) X3=(4,1,2,0,2,1,0,1,0,0)

∥ X 1 ∥ = 5 2 + 3 2 + 1 2 + 1 2 = 6 \lVert{X_1}\rVert=\sqrt{5^2+3^2+1^2+1^2}=6 X1=52+32+12+12 =6

∥ X 2 ∥ = 3 2 + 2 2 + 1 2 + 1 2 + 1 2 + 1 2 = 17 \lVert{X_2}\rVert=\sqrt{3^2+2^2+1^2+1^2+1^2+1^2}=\sqrt{17} X2=32+22+12+12+12+12 =17

∥ X 3 ∥ = 4 2 + 1 2 + 2 2 + 2 2 + 1 2 + 1 2 = 3 3 \lVert{X_3}\rVert=\sqrt{4^2+1^2+2^2+2^2+1^2+1^2}=3\sqrt{3} X3=42+12+22+22+12+12 =33

X 1 ⋅ X 3 = 5 × 4 + 0 × 1 + 3 × 2 + 1 × 2 + 0 × 1 + 1 × 1 = 29 X_1\cdot X_3=5×4+0×1+3×2+1×2+0×1+1×1=29 X1X3=5×4+0×1+3×2+1×2+0×1+1×1=29

X 2 ⋅ X 3 = 3 × 4 + 0 × 1 + 2 × 2 + 1 × 2 + 1 × 1 + 1 × 1 + 1 × 0 = 20 X_2\cdot X_3=3×4+0×1+2×2+1×2+1×1+1×1+1×0=20 X2X3=3×4+0×1+2×2+1×2+1×1+1×1+1×0=20

由公式 s c o s ( X i , X j ) = X i ⋅ X j ∥ X i ∥ ⋅ ∥ X j ∥ s_{cos}(X_i,X_j)=\frac{X_i\cdot X_j}{\lVert{X_i}\rVert\cdot\lVert{X_j}\rVert} scos(Xi,Xj)=XiXjXiXj
s c o s ( X 1 , X 3 ) = X 1 ⋅ X 3 ∥ X 1 ∥ ⋅ ∥ X 3 ∥ = 29 6 × 3 3 ≈ 0.93 s_{cos}(X_1,X_3)=\frac{X_1\cdot X_3}{\lVert{X_1}\rVert\cdot\lVert{X_3}\rVert}=\frac{29}{6×3\sqrt{3}}\approx0.93 scos(X1,X3)=X1X3X1X3=6×33 290.93 s c o s ( X 2 , X 3 ) = X 2 ⋅ X 3 ∥ X 2 ∥ ⋅ ∥ X 3 ∥ = 20 17 × 3 3 ≈ 0.93 s_{cos}(X_2,X_3)=\frac{X_2\cdot X_3}{\lVert{X_2}\rVert\cdot\lVert{X_3}\rVert}=\frac{20}{\sqrt{17}×3\sqrt{3}}\approx0.93 scos(X2,X3)=X2X3X2X3=17 ×33 200.93

5、设有混合属性数据集(表5),试计算 S S S 的相异度矩阵。

顾客id性别婚姻状况学位当月消费额
X 1 X_1 X1已婚其他1230
X 2 X_2 X2Null硕士Null
X 3 X_3 X3离异博士3586
X 4 X_4 X4单身硕士3670
X 5 X_5 X5单身学士1025
X 6 X_6 X6丧偶Null2890

解:

属性 “性别” 的相异度矩阵: D ( 1 ) ( S ) = ( 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 1 1 0 1 0 ) D^{(1)}(S)= \left( \begin{matrix} 0 & & & & & \\ 0 & 0 & & & & \\ 0 & 0 & 0 & & & \\ 1 & 1 & 1 & 0 & & \\ 0 & 0 & 0 & 1 & 0 & \\ 1 & 1 & 1 & 0 & 1 & 0 \end{matrix} \right) D(1)(S)= 000101001010101010010

属性 “婚姻状况” 的相异度矩阵: D ( 2 ) ( S ) = ( 0 N u l l 0 1 N u l l 0 1 N u l l 1 0 1 N u l l 1 0 0 1 N u l l 1 1 1 0 ) D^{(2)}(S)= \left( \begin{matrix} 0 & & & & & \\ Null & 0 & & & & \\ 1 & Null & 0 & & & \\ 1 & Null & 1 & 0 & & \\ 1 & Null & 1 & 0 & 0 & \\ 1 & Null & 1 & 1 & 1 & 0 \end{matrix} \right) D(2)(S)= 0Null11110NullNullNullNull0111001010

属性 “学位” 的相异度矩阵: D ( 3 ) ( S ) = ( 0 0.67 0 1 0.33 0 0.67 0 0.33 0 0.33 0.33 0.67 0.33 0 N u l l N u l l N u l l N u l l N u l l 0 ) D^{(3)}(S)= \left( \begin{matrix} 0 & & & & & \\ 0.67 & 0 & & & & \\ 1 & 0.33 & 0 & & & \\ 0.67 & 0 & 0.33 & 0 & & \\ 0.33 & 0.33 & 0.67 & 0.33 & 0 & \\ Null & Null & Null & Null & Null & 0 \end{matrix} \right) D(3)(S)= 00.6710.670.33Null00.3300.33Null00.330.67Null00.33Null0Null0

由公式 d ( k ) ( X i , X j ) = ∣ x i k − x j k ∣ m a x k − m i n k d^{(k)}(X_i,X_j)=\frac{\vert x_{ik}-x_{jk}\vert}{max_k-min_k} d(k)(Xi,Xj)=maxkminkxikxjk

得属性 “当月消费额” 的相异度矩阵: D ( 4 ) ( S ) = ( 0 N u l l 0 0.89 N u l l 0 0.92 N u l l 0.03 0 0.08 N u l l 0.97 1 0 0.63 N u l l 0.26 0.29 0.71 0 ) D^{(4)}(S)= \left( \begin{matrix} 0 & & & & & \\ Null & 0 & & & & \\ 0.89 & Null & 0 & & & \\ 0.92 & Null & 0.03 & 0 & & \\ 0.08 & Null & 0.97 & 1 & 0 & \\ 0.63 & Null & 0.26 & 0.29 & 0.71 & 0 \end{matrix} \right) D(4)(S)= 0Null0.890.920.080.630NullNullNullNull00.030.970.26010.2900.710

利用公式 d ( X i , X j ) = ∑ k = 1 d δ ( k ) ( X i , X j ) × d ( k ) ( X i , X j ) ∑ k = 1 n δ ( k ) ( X i , X j ) d(X_i,X_j)=\frac{\sum\limits_{k=1}^d\delta^{(k)}(X_i,X_j)×d^{(k)}(X_i,X_j)}{\sum\limits_{k=1}^n\delta^{(k)}(X_i,X_j)} d(Xi,Xj)=k=1nδ(k)(Xi,Xj)k=1dδ(k)(Xi,Xj)×d(k)(Xi,Xj)

D ( k ) ( S ) ( k = 1 , 2 , ⋯   , d ) D^{(k)}(S)(k=1,2,\cdots,d) D(k)(S)(k=1,2,,d) 集成为 S S S 的相异度矩阵 D ( S ) D(S) D(S),得
D ( S ) = ( 0 0.33 0 0.72 0.17 0 0.89 0.5 0.59 0 0.35 0.17 0.66 0.59 0 0.88 1 0.75 0.43 0.9 0 ) D(S)= \left( \begin{matrix} 0 & & & & & \\ 0.33 & 0 & & & & \\ 0.72 & 0.17 & 0 & & & \\ 0.89 & 0.5 & 0.59 & 0 & & \\ 0.35 & 0.17 & 0.66 & 0.59 & 0 & \\ 0.88 & 1 & 0.75 & 0.43 & 0.9 & 0 \end{matrix} \right) D(S)= 00.330.720.890.350.8800.170.50.17100.590.660.7500.590.4300.90

  • 36
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Francek Chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值