【论文阅读】 Hinton神经网络降维:Reducing the Dimensionality of Data with Neural Networks

摘要

通过训练有一个小的中间层用来重建高维输入向量的多层神经网络,我们可以将高维度数据转换成低维度数据。在自编码神经网络中,梯度下降可以很好地调整权值,但只有在初始权重接近最佳值时效果才好。作者提出了一种有效的初始化权重的方法,能让自编码神经网络学习低维度编码方式,这种方法在降维方面比pca算法更有效。

介绍

降维有利于分类、可视化、高维数据的存储。PCA是一种简单且广泛使用的降维方法,pca可以找出数据集中方差最大是方向,并通过每个方向上的坐标表示每个数据点。文章定义了一个pca的非线性泛化,它使用一个自适应的多层编码器将高维数据转换为低维代码,并使用一个类似的“解码器”网络从代码中恢复数据。

编码器和解码器一起训练。开始时两个网络的权重都是随机值,通过训练最小化原始数据和重建数据的差别。所需的梯度通过误差反向传播从解码器传递到编码器,整个模型叫做自编码。

有多隐层的非线性自编码器最优化权重是很难的,初始化权重太大的话编码器会倾向找到局部最优,而太小的话前几层梯度太小,训练没用。只有在初始权重接近最佳值时效果才最好,但很好得人工初始化权重很难。文章作者提出了针对二进制数据的预训练程序,再泛化到实值数据,最终在多种数据下都能表现很好。

方法

一组二进制向量(如图像)可以由限制玻尔兹曼机(RBM)建模,随机的二进制像素值通过对称的加权连接与随机的二进制特征检测器连接。像素对应RBM中的可见单元(visual),特征检测器对应隐藏单元(hidden)。因为像素的状态可以被观察到。一个可见单元与隐藏单元组成的结构(v,h)有能量值:Embedded Image  Embedded Image  其中vi为像素i的二进制状态值,hj为特征j,bi、bj分别为可见单元与隐藏单元的偏置,wij为他们之间的权重。

猜你喜欢

转载自blog.csdn.net/wangqianqianya/article/details/88827300