数据是一个numpy数组(784,)
这是排序功能:
while flips < max_flip:
flipped_accuracy = 0
combination = []
while flipped_accuracy <= original_accuracy:
i_vals = []
for i in range(flips):
i_vals.append(i)
index = 1
last_added = 0
while flips - index > 0:
for i in i_vals:
ind = indexes[i]
combination.append(index_accuracies[ind])
if np.mean(combination) > original_accuracy:
flip_combinations.append(combination)
last_added = 0
else:
last_added += 1
if i_vals[-index] < 784:
if last_added > 10 or (i_vals[0] == 783 and i_vals[-1] == 783):
flips += 1
break
i_vals[-index] += 1
if index > 1:
index -= 1
else:
index += 1
augemented_images = []
for c in flip_combinations:
z = pixel_flipper(x0_test, c)
augemented_images.append(z)`
而我一直得到的错误是
ind = indices [i]
IndexError:索引784超出了轴0的大小为784的范围
1 回答
以下代码似乎是可能的罪魁祸首:
如果
i_vals[-index]
是783
,它将增加到784
,因此下次将该值用作索引时,将导致错误 .