我正在研究机器学习中的问题,我发现[-1]在代码的不同位置经常弹出,但是我似乎不明白它的重要性。
在此特定示例中,目标是稍微移动训练集中的所有图像。
代码如下:
LocationMapper.setGlobalLocationMapper(new LocationMapper());
最后一行中-1的含义是什么?
答案 0 :(得分:2)
在numpy数组中,reshape
允许您在尝试重塑数组形状时“推断”其中一个尺寸。
import numpy as np
a = np.arange(4).reshape(2,2)
#Output:
array([[0, 1],
[2, 3]])
a.reshape([-1])
#Output:
array([0, 1, 2, 3])
如果您注意到了,还可以使用推论来重写第一个重塑,如下所示:
b =np.arange(4).reshape(2,-1)
#Output:
array([[0, 1],
[2, 3]])
答案 1 :(得分:1)
此行:
shifted_image.reshape([-1])
仅使用列表作为参数调用reshape
方法,列表恰好包含单个元素,即数字-1
。这具有重塑numpy数组的效果。从文档中:
一个形状尺寸可以为-1。在这种情况下,该值是根据数组的长度和剩余维数推断的。
答案 2 :(得分:-2)
方法reshape
将一个整数列表作为其参数,在这种情况下,列表的元素为-1。
-1特别影响调整大小,我确定您可以在numpy文档中找到。
希望这会有所帮助!