У меня есть прогноз, сохраненный в массиве со следующей формой: [batch_size, time_steps, 3]
, я хочу применить функцию сглаживания для каждого измерения в 3-м измерении вектора. Поэтому я сделал следующее:
for d in range(3):
for p in range(len(outputs_devel)):
for t in range(len(outputs_devel[p])):
if t >= 2 or t < len(outputs_devel[p]) - 2:
outputs_devel[p][t][d] = (outputs_devel[p][t - 2][d] + outputs_devel[p][t - 1][d] +
outputs_devel[p][t][d] + outputs_devel[p][t + 1][d] +
outputs_devel[p][t + 2][d]) / 5
Я бы хотел векторизовать эту операцию. Как это возможно?
В тензорном потоке я могу просто использовать tf.layers.average_pooling1d(outputs_devel, pool_size=5, strides=1, padding='same')
; но я хотел бы добиться того же мысли в NumPy. Это возможно?
Любая помощь очень ценится!