关于Neural Network(MLPs)的训练前准备:数据预处理和网络初始化

本文详细介绍了训练Neural Network(MLPs)前的数据预处理,包括Mean Subtraction, Scaling/Normalization和PCA,以及网络初始化,强调了打破对称性和控制内部协变量偏移的重要性,提出Batch Normalization作为有效手段。" 81590891,7300664,CentOS7 使用 Apache2.4+mod_wsgi 部署Django项目教程,"['centos', '项目部署', 'django', 'httpd', 'mod_wsgi']
摘要由CSDN通过智能技术生成

训练一个的Neural Network(特指由FC层和non-linearity构成的MLP式网络),为了达到又快又好的convergence,训练前的准备非常重要。这里主要谈个主要的预训练措施:数据预处理 and 网络初始化。

一. 数据预处理:

本文还是以在CIFAR-10上做10分类任务为背景展开(训练集50000张32 * 32 * 3 = 3072dim的图片,X∈[N , D] = [50000, 3072])。所谓数据预处理,就是把这个3072维空间上的50000个点的数据进行处理,使得他们在3072维feature空间的各个单个feature维度上,具有很好的分布(distribution)性质。注意,这里把3072维feature中的每一维看做一个variable,是50000个采样的distribution。

数据预处理的核心(即希望处理后的数据集)有三:1. zero-mean(zero-centered);2. unit varaiance;3. low dimensionality; 4. Features de-correlation。

1. Mean Subtraction for zero-mean(centered):

对3072维feature的每一维重复以下操作:求50000个值的mean,然后用50000个值各自减去这个mean;

2. Scaling/Normalization by dividing std:

对3072维feature的每一维重复一下操作:求50000个值得标准差(std, i.e. varaince的算术平方根),然后用50000个值各自除以这个标准差。

zero-centered和normalization处理数据的过程如下图:

3. Dimensionality reduciton & de-correlation by PCA:

有时input图像太大导致输入维度很高,从而使得存储和计算代价都很大,而如此高维度的特征中有很多冗余、互相关的信息。可以通过PCA的方法,实现降维和解相关。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值