zoukankan      html  css  js  c++  java
  • 李宏毅机器学习课程笔记-10.3基于Low-density Separation假设的半监督学习

    按照“非黑即白”的思路,假设类别之间的boundary周围的data是很少的,即假设不同类别数据之间应该有1个很明显的boundary

    Self-training

    最简单的基于Low-density Separation假设的半监督学习是Self-training。

    1. 使用有标签的数据训练1个模型(f^*),模型类型和训练方式没有限制,神经网络、深或浅、其它机器学习方法等等都可以

    2. 使用模型(f^*)生成未标注数据的伪标签(Pseudo-label),即(y^u=f^*(x^u))

    3. 取出一部分未标注数据将它们添加到有标签数据中,然后回到步骤1

      如何选择未标注数据仍然是一个open question,可以自行设计策略,比如给每个样本一个置信度。

    Self-training和生成模型中的半监督学习(见上1篇文章)还挺像的,它们的区别在于:

    1. Self-training使用hard label,即假定某个无标签样本一定属于某个类别("非黑即白")
    2. 生成模型使用soft label,即假定某个无标签样本有一定概率属于某类别(也可以理解为一个样本可以按照后验概率划分成多个部分,不同部分属于不同类别)

    Self-training使用了hard label,它并不适用于regression。

    生成模型使用了soft label,它生成的伪标签在分类任务中是没有用的。因为把某个无标签样本(通过soft label生成伪标签)丢进模型重新训练模型,模型参数根本不会发生变化。

    实际上,low-density separation就是通过hard label来提升分类效果的方法。

    Entropy-based Regularization

    该方法是Self-training的进阶版。

    Self-training中使用的hard label还是有些武断和激进,Entropy-based Regularization对此进行了改进。

    在使用神经网络进行分类时,(y^u=f^*_{ heta^*}(x^u)),其中(y_u)是1个one-hot编码。现在我们并不限制其必须是某个类别,而是将其看做1个分布,我们希望这个分布越集中越好("非黑即白"),因为分布越集中时它的含义就是样本(x^u)属于某类别的概率很大属于其它类别的概率很小

    我们可以使用Entropy评估分布(y^u)的集中程度(E(y^u)=-sum_{m=1}^5y_m^uln(y_m^u)),假设是5分类,其值越小则表示分布(y^u)越集中。

    无监督分类的目标为有标签数据分类正确、无标签数据分类结果集中,所以损失函数则为(L=sum_{x^r}C(y^r,hat y^r)+lambdasum_{x^u}E(y^u)),其中第1项为有标签数据的交叉熵损失、第2项为无标签数据的entropy、(lambda)表示无标签数据的损失权重,因为式中第2项的作用类似于regularization,所以该方法被称为Entropy-based Regularization。

    Semi-supervised SVM

    SVM为两个类别的数据找到一个boundary,该boundary与两个类别的margin最大、分类错误最小。

    Semi-supervised SVM穷举所有无标签数据的类别并进行计算,最终选择与两个类别的margin最大、分类错误最小的boundary。

    在数据量大的时候,Semi-supervised SVM难以穷举出所有情况,但还有一种求近似解的方法,其大致思路是初始化一些label,然后每次尝试改动1个样本的label并判断是否更优,如果更优则改变该样本的label,具体见Transductive Inference for Text Classification using Support Vector Machines。


    Github(github.com):@chouxianyu

    Github Pages(github.io):@臭咸鱼

    知乎(zhihu.com):@臭咸鱼

    博客园(cnblogs.com):@臭咸鱼

    B站(bilibili.com):@绝版臭咸鱼

    微信公众号:@臭咸鱼

    转载请注明出处,欢迎讨论和交流!


  • 相关阅读:
    JS第一次课
    第四课:盒子模型+浮动+定位
    第三课:CSS
    第二课:HTML和CSS
    第一节课!HTML
    大家好
    MVC5 Views文件夹访问不了css,js
    数据挖掘之关联分析七(非频繁模式)
    数据挖掘之关联分析六(子图模式)
    数据挖掘之关联分析五(序列模式)
  • 原文地址:https://www.cnblogs.com/chouxianyu/p/14673553.html
Copyright © 2011-2022 走看看