李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder

Auto-encoder

1.encode:将原来高维sample encode成低维的code,再将code尽量decode成原来的sample。
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第1张图片
2.deep auto-encoder只是将层数加深。auto encode的construction error不是重点,重点是code表示的有多好。
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第2张图片
3. De-noising auto-encoder:在原来的sample上加入噪声数据,但是仍然需要reconstruction成原来的sample。

李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第3张图片
4. Auto-encoder——Text Retrieval:输入需要查询的词汇,在vector space model上求解查询的词语与库中文本的相似程度。用Bag-of-word来表示一个句子,但是这种情况并没有考虑到句子的语义表示。

李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第4张图片
将查询的句子和文本auto encoder进行降维。不同类别的文章得到了很好的区分。
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第5张图片
5. Auto-encoder——similar image search:传统方法是通过计算像素上的欧几里得相似性。如果把整个图像encode以后,再计算其相似度,会得到更好的结果。

李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第6张图片
6.auto-encoder for CNN:先按照常规的convolution来做encode,然后用deconvolution 和 unpooling来进行decode。
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第7张图片
其中unpooling的方式,因为max pooling只是记住最大点的位置,而不知道其他位置的值,所以做unpooling的时候,将这些位置补0就可以了。

李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第8张图片
Deconvolution的方式只不过convolution的逆过程,也可以看成是原来的特征拓宽补0以后进行convolution。
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第9张图片
7. 可以用Auto-encoder来做pre-training DNN(在整体训练之前,先对每一层上的权重进行训练),可以加上regularization term或者加上noising来防止网络在较宽的部分直接传送。
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第10张图片
8. 可以用后面的decode来随机生成图片
李宏毅机器学习——学习笔记(15) Unsupervised Learning—Auto encoder_第11张图片

你可能感兴趣的:(机器学习)