【问题标题】:What are the 4 values passed in shape for ndarray in numPy?numPy 中 ndarray 的形状传递的 4 个值是什么?
【发布时间】:2022-11-17 22:59:25
【问题描述】:

是什么意思: 形状=(1, 224, 224, 3)

我的意思是这里为形状指定的所有值是多少?

【问题讨论】:

  • 如果你正在使用机器学习图像,那么(batch, image_width, image_height, RGB_dims) = (1,224,224,3)

标签: python numpy-ndarray


【解决方案1】:

Python NumPy numpy.shape() 函数查找数组的形状。通过形状,我们的意思是它有助于找到数组的维度。它以元组的形式返回形状,因为我们不能像改变数组的维度一样改变元组。

示例代码:用于传递简单数组的 numpy.shape()

我们现在将传递一个简单的一维数组。

import numpy as np 
   
a = np.array([89, 34, 56, 87, 90, 23, 45, 12, 65, 78, 9, 34, 12, 11, 2, 65, 78, 82, 28, 78]) 
dimensions = np.shape(a) 
print(dimensions) 

输出: (20,)

输出显示该数组是一维数组,包含 20 个元素。

示例代码:numpy.shape() 传递多维数组

import numpy as np 
   
a = np.array([[11, 12, 5], [15, 6,10], [10, 8, 12], [12,15,8], [34, 78, 90]]) 
dimensions = np.shape(a) 
print(dimensions) 

输出:

(5, 3)

请注意,输出元组现在包含两个整数元素。它显示该数组包含五行和三列。

【讨论】:

    【解决方案2】:
    In machine learning,
    image data are loaded in batch/bulk for faster loading ,
    So the first value means "loaded in batch"
    
    # you can read like this:
    (batch, image_width, image_height, RGB_dims) = (1,224,224,3)
    

    【讨论】:

      【解决方案3】:

      当形状的长度为 4 时,这意味着您有一个“4D 张量”。一个 4D 张量是一组 3D 张量。例如,如果A 是一个 4D 张量,A[0] 是一个 3D 张量,它是该组的第一个元素。这里第一个数字1 表示您的组仅由一个 3D 张量组成。然后,您猜测 3D 张量是一组 2D 张量(也称为矩阵)。在这里,您的 3D 张量由 2242D 张量(第二个数字)组成。然后每个二维张量由224长度为 3 的一维张量(向量)组成。

      在您的特定情况下,您还可以(更简单地)将数据视为由一个大小为 224*224 的 RGB 图像组成的组。每个像素有 3 个值(红色、绿色、蓝色强度)。

      【讨论】:

        猜你喜欢
        • 2018-05-13
        • 1970-01-01
        • 2018-07-10
        • 1970-01-01
        • 2014-08-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多