4.简述基于距离的分类算法的主要思想。
基于距离的分类算法的思路为:假定数据库中的每个元组ti为数值向量,每个类用一个典型数值向量来表示,则能通过分配每个元祖到它最相似的类来实现分类。
具体定义为:给定一个数据库
D
=
D=
D={
t
1
,
t
2
,
…
,
t
n
t_1,t_2,…,t_n
t1,t2,…,tn}和一组类
𝐶
=
𝐶=
C={
𝐶
1
,
𝐶
2
,
…
,
𝐶
𝑛
𝐶_1,𝐶_2,…,𝐶𝑛
C1,C2,…,Cn}。对于任意的元祖
𝑡
𝑖
=
𝑡_𝑖=
ti={
𝑡
𝑖
1
,
𝑡
𝑖
2
,
…
,
𝑡
𝑖
𝑘
𝑡_𝑖1,𝑡_𝑖2,…,𝑡_𝑖𝑘
ti1,ti2,…,tik}
∈
𝐷
∈𝐷
∈D,如果存在一个
𝐶
𝑗
∈
𝐶
𝐶_𝑗∈𝐶
Cj∈C,使得:
s
i
m
(
t
i
,
C
j
)
≥
s
i
m
(
t
i
,
C
p
)
∀
C
p
∈
C
,
C
p
≠
C
j
sim\left( {t_{i},C_{j}} \right) \geq sim\left( {t_{i},C_{p}} \right)~~~~~~~~\forall C_{p} \in C~,C_{p} \neq C_{j}
sim(ti,Cj)≥sim(ti,Cp) ∀Cp∈C ,Cp=Cj
则
𝑡
𝑖
𝑡_𝑖
ti被分配到
𝐶
𝑗
𝐶_𝑗
Cj中,其中
s
i
m
(
t
i
,
C
j
)
sim\left( {t_{i},C_{j}} \right)
sim(ti,Cj)称为相似性。在实际的计算中往往用距离来表征,距离越近,相似性越大,距离越远,相似性越小。
5.简述k-最临近方法的主要思想。
k-最临近分类算法思想为:假定每个类包含多个训练数据,且每个训练数据都有一个唯一的类别标记,k-最临近分类的主要思想就是计算每个训练数据到待分类元组的距离,取和待分类元组距离最近的k个训练数据,k个数据中哪个类别的训练数据占多数,则待分类元组就属于哪个类别。
7.决策树容易转换成分类规则,试把如图A4-1所示的决策树转换成分类规则(假定决策属性为buys_computer)。
IF age≤30 AND student=yes THEN buys_computer=yes
IF age≤30 AND student=no THEN buys_computer=no
IF 30<age≤40 THEN buys_computer=yes
IF age>40 AND credit_rating=excellent THEN buys_computer=no
IF age>40 AND credit_rating=fair THEN buys_computer=yes
11.表A4-2给出了一个关于配眼镜的一个决策分类所需要的数据。数据集包含5个属性。
1) age:{young,pre-presbyopic,presbyopic};
2) astigmatism:{no,yes};
3) spectacle-prescrip:{myope,hypermetrope};
4) tear-prod-rate:{reduced,normal};
5) contact-lenses:{soft,none,hard}。
contact-lenses是决策属性,通过手动模拟ID3算法来实现决策过程。
13.下面的例子分为3类:{Short,Tall,Medium},Height属性划分为(0,1.6),(1.6,1.7),(1.7,1.8),(1.8,1.9),(1.9,2.0),(2.0,∞),数据集如表A4-3所示,请用贝叶斯分类方法对例子t=(Adam,M,1.95m)进行分类。
P(Output=”Short”)=4/15=0.267
P(Output=”Medium”)=8/15=0.533
P(Output=”Tall”)=3/15=0.2
P(Height∈(1.9,2.0)|Output=”Short”)=0/3=0
P(Height∈(1.9,2.0)|Output=”Medium”)=3/3=1
P(Height∈(1.9,2.0)|Output=”Tall”)=0/3=0
P(Gender=”M”|Output=”Short”)=1/6=0.167
P(Gender=”M”|Output=”Medium”)=2/6=0.333
P(Gender=”M”|Output=”Tall”)=3/6=0.5
P(t|Output=”Short”)=0×0.167=0
P(t|Output=”Medium”)=1×0.333=0.333
P(t|Output=”Tall”)=0×0.5=0
P(t|Output=”Short”)P(Output=”Short”)=0×0.267=0
P(t|Output=”Medium”)P(Output=” Medium”)=0.333×0.533=0.177
P(t|Output=”Tall”)P(Output=”Tall”)=0×0.2=0
综上,贝叶斯分类预测Output=”Medium”
14.在应用贝叶斯方法解决实际问题的时候,可能会出现观察概率为0的情况,因此在贝叶斯分类中这项概率占有统治地位,如何解决上述问题?
采用一种估计概率的贝叶斯方法,即如下定义的m-估计:
m
−
估
计
=
n
c
+
m
p
n
+
m
m-估计= \frac{n_{c} + mp}{n + m}
m−估计=n+mnc+mp
n
n
n表示的训练样本数目,
n
c
n_c
nc表示满足某条件的训练样本数目,
p
p
p是将要确定的概率的先验估计,而
m
m
m是一个称为等效样本大小的常量,它起到对于观察到的数据如何衡量
p
p
p的作用。
m
m
m被称为等效样本大小的原因是:上式可被解释为将
n
n
n个实际的观察扩大,加大
m
m
m个按
p
p
p分布的虚拟样本。在缺少其他信息时选择
p
p
p的一种典型的方法是假定均匀的先验概率,即若某属性有
k
k
k个可能值,那么设置
p
=
1
/
k
p=1/k
p=1/k。
25.简述分类器的性能表示与评估的主要方法。
分类器性能是评价分类算法的一个非常重要的因素。对于同样的数据,不同的分类算法将产生不同的分类结果。分类的性能通常用分类器的准确率来评价。分类准确率通常通过被正确分类的元组所占该类内的元组个数的百分比来表示。这里忽视了将不属于某类的元组归为该类的代价,这个因素也应该被考虑。分类器性能的表示方法类似信息检索系统的评价方法,可以采用OC曲线和ROC曲线、混淆矩阵等。
分类器性能的表示可以采用类似信息检索系统所采用的方法。假如只有两个类(A类、B类),分类器将产生四个可能的分类输出,分为四个象限,左上角象限和右下角象限表示了正确的分类,剩余的两个象限是不正确的分类。
在上述定义的基础上,人们经常使用OC(Operation Characteristic)曲线和ROC(Receive Operation Characteristic)曲线表示“假正”和“真正”的关系。OC曲线通常用于通信领域来测试误报率。OC曲线的水平轴一般表示“假正”的百分比,另外一个轴表示“真正”的百分比。
混淆矩阵是另外一种表示分类准确率的方法。假定有m个类,混淆矩阵是一个m×m的矩阵,
C
(
i
∙
j
)
C_{(i∙j)}
C(i∙j)表明了D中被分到类
C
j
C_j
Cj但实际类别是
C
i
C_i
Ci的元组的数量。显然地,最好的解决方案是对角线以外的值全为零。
26如何评价分类器的性能?
分类器的性能和所选择的测试集和训练集有直接的关系,一般情况下,先用一部分数据建立模型,然后再用剩下的数据来测试和验证这个得到的模型。如果使用相同的训练和测试集,那么模型的准确度就很难使人信服。保持法和交叉验证是两种基于给定数据随机选样划分的、常用的评估分类方法准确率的技术。
(1)保持法
在保持方法中,把给定的数据随机地划分成两个独立的集合:训练集和测试集。通常,三分之一的数据分配到训练集,其余三分之二分配到测试集。使用训练集得到分类器,其准确率用测试集评估。
(2)交叉验证
先把数据随机分成不相交的n份,每份大小基本相等,训练和测试都进行n次。比如,如果把数据分成10份,先把第一份拿出来放在一边用作模型测试,把其他9份合在一起来建立模型,然后把这个用90%的数据建立起来的模型用上面放在一边的第一份数据做测试。这个过程对每一份数据都重复进行一次,得到10个不同的错误率。然后把所有数据放在一起建立一个模型,模型的错误率为上面10个错误率的平均。
使用这些技术评估分类法的准确率增加了总体的计算时间,但是对于分类方法的选择是有意义的。