64、图片预处理:Normalize

上一篇介绍了图像预处理中 resize 和 crop 的概念,在仓库的 python 预处理函数中,在 resize 和 crop之后,还有几个预处理的过程:一个是归一化,另外就是transpose 和reshape。

这一节就介绍一下,为什么在推理之前还需要对图像进行归一化。

归一化(Normalization)

在深度学习中,推理或训练之前对图像进行预处理,特别是归一化,是一种非常常见的做法。

那为什么要做归一化呢?

使用归一化的目的是将输入数据进行标准化,使输入的数据具有相似的分布。

什么意思呢?我们以图像举例子,不同的图片之间数据分布差异是很大的,有些图片的像素值普遍偏大,而有些图片的像素值偏小。

数据分布的不同,会导致神经网络在训练或者推理时出现较大的偏差,有时会导致训练收敛困难,推理误差较大。

这一点我们在介绍bn算法的时候曾经说到过,Bn 算法就是为了纠正在隐藏层与层之间,由于数据分布不一致而导致的模型难以收敛的问题,可以翻回到 bn 介绍的那一节再复习一下。

所以在将不同的图片送给神经网络进行推理之前,我们也需要对不同的图片中数据分布进行归一化,以纠正不同图片样本之间的数据偏差,从而使得模型更好地完成推理。

你可能感兴趣的:(CV视觉算法入门与调优,人工智能)