UFLDL之自我学习
参考资料:UFLDL教程及tornadomeet的博客
个人代码:github地址
自我学习算法介绍
假设我们有大量数据集(其中既有已标注的,也有未标注的),那么,想要得到标注,通常是只使用已标注的数据得到模型。
但是这样对数据集的信息利用是不充分的(没有利用到未标注数据)。根据UFLDL的稀疏自编码算法部分,稀疏自编码这种无监督学习算法可以提取所有数据间隐含的联系和特征。因此可以考虑,先利用稀疏自编码算法提取所有数据的隐含特征,再计算已标注数据的特征,利用其特征和标签来训练模式。
稀疏自编码算法的结构如下:
去掉最后一层,转而利用中间特征层的输出作为训练模型时输入:
此时训练集由原来的({(x^{(1)},y^{(1)}), (x^{(2)},y^{(2)})ldots (x^{(m)},y^{(m)})})改变为({(a^{(1)},y^{(1)}), (a^{(2)},y^{(2)})ldots (a^{(m)},y^{(m)})}),若使用级联表示,则可表示为({((x^{(1)},a^{(1)}),y^{(1)}), ((x^{(2)},a^{(2)}),y^{(2)})ldots ((x^{(m)},a^{(m)}),y^{(m)})})。