(2020李宏毅)机器学习-半监督学习_半监督学习

文章目录


半监督学习


(2020李宏毅)机器学习-半监督学习_人工智能_02

假设有R笔train data,每一笔train data有(2020李宏毅)机器学习-半监督学习_生成模型_03,(2020李宏毅)机器学习-半监督学习_人工智能_04。假设(2020李宏毅)机器学习-半监督学习_生成模型_03是一张image,(2020李宏毅)机器学习-半监督学习_生成模型_06是class label。semi-supervised learning是在label上面,是有另外一组unlabel的data,这组data记做(2020李宏毅)机器学习-半监督学习_半监督学习_07,这组data只有input,没有output。在做semi-superised learning时,U远远大于R(unlabel的数量远远大于label data的数量)。semi-surprised learning可以分成两种,一种是transductive learning,一种是inductive learning。这两种最简单的分法是:在做transductive的时候,你的unlabel data就是你的testing data,inductive learning 就是说:不把unlabel data考虑进来。


监督生成模型和半监督生成模型


监督生成模型


(2020李宏毅)机器学习-半监督学习_概率论_08

supervised generative model, 在supervised learning里面有一堆train example,分别是属于class1, class2。去估测class1, class2的probability (2020李宏毅)机器学习-半监督学习_概率论_09
假设每一个class它的分布都是一个Gaussion distribution,估测说class1是从 (2020李宏毅)机器学习-半监督学习_人工智能_10(2020李宏毅)机器学习-半监督学习_生成模型_11, covariance是 (2020李宏毅)机器学习-半监督学习_机器学习_12 的Gaussion估测出来的, class2是从 (2020李宏毅)机器学习-半监督学习_人工智能_10(2020李宏毅)机器学习-半监督学习_人工智能_14, covariance是 (2020李宏毅)机器学习-半监督学习_机器学习_12 的Gaussion估测出来的。 那现在有了这些probability,有了这些 (2020李宏毅)机器学习-半监督学习_人工智能_10


半监督生成模型


(2020李宏毅)机器学习-半监督学习_机器学习_17

(2020李宏毅)机器学习-半监督学习_机器学习_18

先初始化参数(class1,class2的几率,(2020李宏毅)机器学习-半监督学习_半监督学习_19,这些值,用已经有label data先估测一个值,得到一组初始化的参数,这些参数统称(2020李宏毅)机器学习-半监督学习_概率论_20

  • Step 1 先计算每一笔unlabel data的 posterior probability,根据现有的(2020李宏毅)机器学习-半监督学习_人工智能_21
  • Step2 算出这个几率以后呢, 就可以update你的model,(2020李宏毅)机器学习-半监督学习_概率论_22是出现次数就是所有unlabel data它是(2020李宏毅)机器学习-半监督学习_概率论_22posterior probability的和。所有unlabel data而是根据它的posterior probability决定它有百分之多少是属于(2020李宏毅)机器学习-半监督学习_概率论_22, 有多少是属于 $\mathrm{C}_{2}, $ 把unlabel data的每一笔datax(2020李宏毅)机器学习-半监督学习_人工智能_25根据它的posterior probability做相乘。如果这个(2020李宏毅)机器学习-半监督学习_生成模型_26比较偏向class(2020李宏毅)机器学习-半监督学习_人工智能_27的 话, 它对class1的影响就大一点,反之就小一点。(2020李宏毅)机器学习-半监督学习_人工智能_28的 probability就是这样的做的(2020李宏毅)机器学习-半监督学习_机器学习_29
  • 这里的Step1就是Estep,而Step2就是Mstep (也就是熟悉的EM算法)

(2020李宏毅)机器学习-半监督学习_生成模型_30

unlabel data(2020李宏毅)机器学习-半监督学习_机器学习_31出现的几率(我不知道它是从claas1还是class2来的,所以class1,class2都有可能)就是它在(2020李宏毅)机器学习-半监督学习_生成模型_32的posterior probability跟(2020李宏毅)机器学习-半监督学习_生成模型_32这个class产生这笔unlabel data的几率加上(2020李宏毅)机器学习-半监督学习_概率论_34的posterior probability乘以(2020李宏毅)机器学习-半监督学习_概率论_34这个class产生这笔unlabel data的几率。把他们通通合起来,就是这笔unlabel data产生的几率。


假设一:Low-density Separation


(2020李宏毅)机器学习-半监督学习_机器学习_36

self-training


Low-density separation最简单的方法是self-training。self-training就是说,我们有一些label data并且还有一些unlabel data。接下来从label data中去train一个model,这个model叫做(2020李宏毅)机器学习-半监督学习_人工智能_37,根据这个(2020李宏毅)机器学习-半监督学习_人工智能_37去label你的unlabel data。你就把(2020李宏毅)机器学习-半监督学习_机器学习_31丢进(2020李宏毅)机器学习-半监督学习_人工智能_37,看它吐出来的yu是什么,那就是你的label data。那这个叫做pseudo-label。那接下来你要从你的unlabel data set中拿出一些data,把它加到labeled data set里面。然后再回头去train你的(2020李宏毅)机器学习-半监督学习_人工智能_37


基于熵的正则化


(2020李宏毅)机器学习-半监督学习_机器学习_42


假设二:Smoothness Assumption


(2020李宏毅)机器学习-半监督学习_生成模型_43

(2020李宏毅)机器学习-半监督学习_人工智能_44


聚类和标记


(2020李宏毅)机器学习-半监督学习_人工智能_45


基于图的方法


(2020李宏毅)机器学习-半监督学习_机器学习_46

Better Representation

最后一个方法是:Better Representation,这个方法的精神是:“去无存青,化繁为简”,等到unsupervised的时候再讲。 它的精神是这样子的:我们观察到的世界其实是很复杂的,我们在我们观察到的世界背后其实是有一些比较简单的东西在操控着我们这个复杂的世界,所以你只要能看透这个世界的假象,直指它的核心的话就可以让训练变得容易。