机器学习(周志华) 参考答案 第十三章 半监督学习

版权声明:本文为博主原创文章,技术有限,如果发现错误或问题请告知博主,转载请注明出处,谢谢。 https://blog.csdn.net/icefire_tyh/article/details/52345060

机器学习(周志华) 参考答案 第十三章 半监督学习

机器学习(周志华西瓜书) 参考答案 总目录


1.试推导出式(13.5)~(13.8)。

Υ j i 为样本 x j 属于第i个高斯混合成分的后验概率。
可知 Υ j i = p ( θ = i | x j )
所以推出(13.5): Υ j i = α i p ( x j | u i , Σ i ) i N α i p ( x j | u i , Σ i )

使用(13.4): L L ( D l D u ) u i 求偏导
L L ( D l D u ) u i = 0
化简得 x j D u Υ j i ( u i x j ) + y j D l y j = i ( u i x j ) = 0
求出 u i 得到式13.6
同理推出式(13.7),式(13.8)。


2.试基于朴素贝叶斯模型推导出生成式半监督学习算法。

朴素贝叶斯模型假设样本所有属性相互独立。
参数表示:

  • a表示属性集合
  • x样本属性
  • y表示有标记样本的分类
  • c表示样本的生成伪分类
  • θ表示属性的类条件概率, θ i j k 表示第i个属性值为 a i j 分类为k的概率
    对于每个样本,将它分类为k的概率为
    P ( c = k | x ; θ ) = i P ( c = k | x i = a i j ; θ ) = θ i j k
    贝叶斯判定为 h n b ( x ) = a r g m a x k Y P ( c = k | x ; θ )
    初始化:
    根据训练样本计算出最初的θ,并对无标记样本生成最初的伪标记。
    使用EM算法来求解伪标记:
    E步:使用拉普拉斯平滑标记对已经有标记的样本进行属性类概率估计,求出θ。
    M步:使用当前的θ对无标记样本集合重新进行分类,获得新的伪标记。
    直到无标记样本的伪标记不再变化。

3.假设数据由混合专家模型生成,即数据是基于k个成分混合的概率密度生成: p ( x | θ ) = i k α i p ( x | θ i ) ,其中θ为模型参数。假设每个混合成分对应一种类别,但每个类别可能包含多个混合成分。试推导出生成式半监督学习算法。

与书上高斯混合成分不同的是,混合专家模型的分类可以对应多个混合成分。
由于与高斯混合只是混合成分与类别对应不同,可以列出相同的目标函数,如式(13.4)
L L ( D l D u ) = x j , y j D l l n ( i n α i p ( x | θ i ) p ( y j | θ = i , x j ) ) + x j D u l n ( i n α i p ( x | θ i ) )
假设第i个混合成分生成分类j的概率为 β i j
则(13.4)改写为 L L ( D l D u ) = x j , y j D l l n ( i n α i p ( x | θ i ) β i ( k = y j ) + x j D u l n ( i n α i p ( x | θ i ) )
如果 β i j 定义为常数,则与高斯混合模型进行相同的EM算法就行。
否则加入对β参数的优化。
具体初始化与公式参考本章引用[Miller and Uyar,1997]。


4.实现TSVM算法,选择两个UCI数据集,将其中30%作为测试样本,10%作为训练样本,60%作为无标记样本,分别训练出利用无标记样本的TSVM和仅利用有标记样本的SVM,并比较其性能。


5.对未标记样本进行标记指派与调整过程中可能出现类别不平衡问题,试给出该问题改进的TSVM算法。

C u 拆分为 C + C ,将 C + 作为参数,使 C = m + m C +
将式(13.9)改为
min 1 2 | | w | | 2 2 + C l i D l ξ i + C + i D u y i ^ = 1 ξ i + C i D u y i ^ = 1 ξ i
约束条件做相应更改。


6.TSVM对未标记样本进行标记指派与调整过程涉及很大的计算开销,试设计一个高效的改进算法。

在标记调整过程中,可以考虑每次将最有可能指派错误的样本进行调整,即正负伪标记样本中松弛变量最大且大于1的样本进行标记更改,可以减少迭代的次数。


7.试设计一个能对新样本进行分类图半监督算法。

图半监督算法不会直接对新样本进行分类,可行的办法一是将新样本作为无标记样本再次进行图半监督算法。或者使用已有标记的样本训练一个学习器,再对新样本分类。


8.自训练是一种比较原始的半监督学习方法:它现在有标记的样本上学习,然后在无标记的样本上获得伪标记,再在全部样本上进行重复训练,分析该方差有何缺陷。

由于训练样本远远少于无标记样本,如果将全部无标记样本的伪标记直接作为训练样本,将导致很多样本属于噪声样本,十分影响分类器的准确度。应该进行局部伪标记调整来优化分类器,而不是直接使用全部的伪标记重复训练分类器。


9.给定一个数据集,假设属性集包含两个示图,但事先并不知道哪些属性属于哪个示图,试设计一个算法将两示图分离出来。

根据已有的数据集将属性集分成二个集合,若遍历求最优解是指数级的复杂度。
考虑使用一种局部最优的方法:
设置两个集合,初始时一个集合包含全部属性,另一个为空。
从集合1随机选取一个集合放入集合2。
然后开始迭代:
每轮迭代从集合1选择一个属性放入集合2,使得集合2属性的训练误差减小量与集合1属性的训练误差增加量最小。
当两个属性集合训练结果符合停止标准时,停止迭代。


10.试为图13.7算法第10行写出违约检测算法。

猜你喜欢

转载自blog.csdn.net/icefire_tyh/article/details/52345060