Я работаю над проблемой, которая включает партию из 19 токенов с 400 функциями. Я получаю форму (19, 1400), когда объединяю два вектора размером (1, 200) в конечный вектор признаков. Если я сжимаю 1, у меня остается (19,), но я пытаюсь получить (19,400). Я пытался преобразовать в список, сжимая и расправляясь, но ничего не получалось.
Есть ли способ преобразовать этот массив в правильную форму?
def attn_output_concat(sample):
out_h, state_h = get_output_and_state_history(agent.model, sample)
attns = get_attentions(state_h)
inner_outputs = get_inner_outputs(state_h)
if len(attns) != len(inner_outputs):
print 'Length err'
else:
tokens = [np.zeros((400))] * largest
print(tokens.shape)
for j, (attns_token, inner_token) in enumerate(zip(attns, inner_outputs)):
tokens[j] = np.concatenate([attns_token, inner_token], axis=1)
print(np.array(tokens).shape)
return tokens