Это цикл, который мы должны векторизовать:
for i in range(num_train):
dW[y[i]] -= X[i]
Размеры векторов следующие:
y - num_train,1
X - num_train,3073
dW - 10,3073
Я использовал следующий расширенный метод индексации, который, кажется, правильно работает на интерпретаторе Python с небольшими примерами:
dW[y,] -= X[range(num_train),]
Но это неправильно оценивает цикл.