У меня есть следующая нейронная сеть в Керасе:
inp = layers.Input((3,))
#Middle layers omitted
out_prop = layers.Dense(units=3, activation='softmax')(inp)
out_value = layers.Dense(units=1, activation = 'linear')(inp)
Затем я подготовил псевдо-ввод для проверки моей сети:
inpu = np.array([[1,2,3],[4,5,6],[7,8,9]])
Когда я пытаюсь предсказать, это происходит:
In [45]:nn.network.predict(inpu)
Out[45]:
[array([[0.257513 , 0.41672954, 0.32575747],
[0.20175152, 0.4763418 , 0.32190666],
[0.15986516, 0.53449154, 0.30564335]], dtype=float32),
array([[-0.24281949],
[-0.10461146],
[ 0.11201331]], dtype=float32)]
Итак, как вы можете видеть выше, я хотел получить два вывода: один должен был быть массивом с размером 3, другой должен был иметь нормальное значение.Вместо этого я получаю матрицу 3х3 и массив с 3 элементами.Что я делаю не так?