机器学习训练营——机器学习爱好者的自由交流空间(入群联系qq:2279055353)
分类原理
本例模拟一个多标签文档分类问题。数据集根据下面的过程随机产生。
-
选择标签数
n
: 来自泊松分布。 -
选择一个类别
c
: 来自多项分布。 -
选择文档长度
k
: 来自泊松分布。 -
选择一个单词
w
: 来自多项分布。
在上述过程里,使用拒绝采样(rejection sampling)确保n>2, 文档长度不是0. 同样地,我们也拒绝已经被选择的类。被分配两个类的文档,在图上用两种颜色圈出。
通过投射到PCA的前两个主成分做分类,然后使用sklearn.multiclass.OneVsRestClassifier
分类器学习一个两类的判别模型。请注意,PCA是用来作一个无监督的降维,而CCA(典型关联分析)是用作有监督的降维。不同情况下的样本分类结果见下图。
注意:在下图中,无标签的样本并不意味着我们不能预测它们的标签,而是样本没有标签。
代码详解
首先,在Python环境加载必