gpt4 book ai didi

python - 在 tensorflow 中沿任何轴归一化意味着什么?

转载 作者:行者123 更新时间:2023-12-04 12:24:32 28 4
gpt4 key购买 nike

我已经了解使用 tf.keras.utils.normalize(x_train, axis=0) 进行标准化的内容和 tf.keras.utils.normalize(x_train, axis=1)数学平均值 -> 如果我们的列是特征而行是数据样本,则使用 axis=0意味着标准化每个特征 w.r.t 所有样本中该特征的总和。
现在,当我们有一个尺寸为 28*28 的图像时,归一化轴取决于什么?每个图像都是一个数据样本,所以我对用什么轴对单个图像对应的像素值进行归一化感到困惑。在几乎每个教程和示例中,axis=1被拍摄并对所有图像一起进行归一化。

除了数学运算之外,我也很想了解轴选择背后的推理。

最佳答案

channel 归一化 可能会弄乱图像的视觉表现,而且总是更难进行完整性检查。

问题一:现在,当我们有一个尺寸为 28*28 的图像时,归一化轴取决于什么?

如果您有 28*28*1 (假设有 1 个 channel ),您可以根据其 对该图像进行归一化整理在数据集中。此处使用的通常值为 1 ,因为图像通常是 堆叠而不是串联 .

[Image 0]     Compared to [Image 0][Image 1][Image 2][Image ...]
[Image 1]
[Image 2]
[Image ...]

这意味着您可以像这样引用它:
Image[0] = (28*28*1) // 28*28 is the number of Columns per Row (Image)
Image[1] = (28*28*1)

问题2:每个图像都是一个数据样本,所以我对用什么轴对单个图像对应的像素值进行归一化感到困惑。在几乎每个教程和示例中,axis=1 都被采用,并且对所有图像一起进行归一化。

规范化数据意味着两件事:
  • 把数据放在同比例 (缩放)提高收敛速度和准确性。
  • Scaling is commonly 0 to 1, -1 to 1, and -1 to 1 with 0 mean. 
  • 平衡围绕一个点(居中)的数据可以对抗爆炸和消失的梯度,并提高收敛性和准确性。

  • 正如我在问题 1 的答案中所指出的,值轴 = 1 是由于图像被堆叠。
    Image[0][28*28_pixels]
    Image[1][28*28_pixels]
    Image[...][28*28_pixels]

    因此,当您在 axis = 1 (columns) 中标准化时您可以获得 右刻度考虑像素位置中的所有值 pixel 1 is compared to pixel 1 of all the images ,这是在 上完成的整个数据集 所以归一化是 平衡 全程数据 到某个点 .

    关于python - 在 tensorflow 中沿任何轴归一化意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61022929/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com