Python 哪种是正确的图像标准化方法?
在为神经网络训练准备训练集时,我发现了两种可能的方法Python 哪种是正确的图像标准化方法?,python,tensorflow,neural-network,deep-learning,data-science,Python,Tensorflow,Neural Network,Deep Learning,Data Science,在为神经网络训练准备训练集时,我发现了两种可能的方法 传统的方法是:计算整个训练集的平均值,然后在发送到网络之前减去每个图像的固定平均值。以类似的方式处理标准偏差 我发现tensorflow提供了一个函数tf.image.per\u image\u standarization,可以对单个图像进行规范化处理 我想知道哪种方法更合适?两种方法都有可能,选择主要取决于您读取数据的方式 当您可以将整个数据集一次性加载到numpy数组中时,整个训练集规范化非常方便。例如,通常完全加载到内存中。在收敛性
tf.image.per\u image\u standarization
,可以对单个图像进行规范化处理我想知道哪种方法更合适?两种方法都有可能,选择主要取决于您读取数据的方式
- 当您可以将整个数据集一次性加载到numpy数组中时,整个训练集规范化非常方便。例如,通常完全加载到内存中。在收敛性方面,当单个图像显著变化时,这种方法也更可取:两个训练图像,一个大部分为白色,另一个大部分为黑色,将具有非常不同的方法
- 当图像逐个加载或以小批量加载(例如从TFRecord加载)时,每个图像的规格化非常方便。当数据集太大或太适合内存时,它也是唯一可行的选择。在这种情况下,最好像图中的其他张量一样组织和变换图像张量。我在CIFAR-10中看到了这种标准化的非常好的准确性,因此这是一种可行的方法,尽管前面提到了一些问题。还请注意,您可以通过以下方式减少负面影响