自编码算法与稀疏性
From Ufldl
Line 130: | Line 130: | ||
\end{align}</math> | \end{align}</math> | ||
其中, <math>\textstyle \rho</math> 是'''稀疏性参数''',通常是一个接近于0的较小的值(比如 <math>\textstyle \rho = 0.05</math> )。换句话说,我们想要让隐藏神经元 <math>\textstyle j</math> 的平均活跃度接近0.05。为了满足这一条件,隐藏神经元的活跃度必须接近于0。 | 其中, <math>\textstyle \rho</math> 是'''稀疏性参数''',通常是一个接近于0的较小的值(比如 <math>\textstyle \rho = 0.05</math> )。换句话说,我们想要让隐藏神经元 <math>\textstyle j</math> 的平均活跃度接近0.05。为了满足这一条件,隐藏神经元的活跃度必须接近于0。 | ||
+ | |||
+ | 【一审】 | ||
+ | |||
+ | 回想一下,标识符 <math>\textstyle a^{(2)}_j</math> 代表自编码神经网络中隐藏单元 <math>\textstyle j</math> 的激活值。但是,这种标识符并没有清楚地指出产生这个激活值的输入向量 <math>\textstyle x</math> 是哪个。因此,当给定神经网络一个确定的输入向量 <math>\textstyle x</math> 时,我们就用 <math>\textstyle a^{(2)}_j(x)</math> 来表示这个隐藏单元的激活值。 | ||
+ | 更进一步,我们令 | ||
+ | :<math>\begin{align} | ||
+ | \hat\rho_j = \frac{1}{m} \sum_{i=1}^m \left[ a^{(2)}_j(x^{(i)}) \right] | ||
+ | \end{align}</math> | ||
+ | 表示隐藏单元 <math>\textstyle j</math> 的平均激活值(通过所有样本数据计算平均值),于是我们就要加入(近似的)约束条件: | ||
+ | :<math>\begin{align} | ||
+ | \hat\rho_j = \rho, | ||
+ | \end{align}</math> | ||
+ | 其中, <math>\textstyle \rho</math> 是'''稀疏性参数''',通常是一个接近于0的较小的值(比如 <math>\textstyle \rho = 0.05</math> )。换句话说,我们想要让隐藏神经元 <math>\textstyle j</math> 的平均活跃度接近0.05。为了满足这一条件,隐藏神经元的活跃度必须接近于0。 | ||
+ | |||
+ | 【二审】 |