#python #keras #multidimensional-array #deep-learning
#python #keras #многомерный массив #глубокое обучение
Вопрос:
Я построил эту простую нейронную сеть в Keras, однако я не понимаю вывода определенных входных векторов. Для иллюстрации:
X = np.array([1,2,3,4,5])
#Reshape to be 2D:
X = X.reshape(1,-1)
# Create the model
model_mlp = Sequential()
model_mlp.add(Dense(5, input_shape=(X.shape[0],X.shape[1]), activation='relu'))
model_mlp.add(Dense(3, activation='relu'))
model_mlp.add(Dense(1, activation='sigmoid'))
print(model_mlp(X))
Мы передаем (1,5)
многомерный тензор в MLP, который, как и ожидалось, выводит одно значение при прямом проходе. Однако, если мы изменим форму тензора, чтобы быть (5,1)
, прямой проход выводит 5 значений. Как это может быть?
Как правильно ввести «нормальный» вектор в MLP и получить в результате одно выходное значение?
Спасибо
Комментарии:
1. Ваша проблема в том, что первое измерение — это количество выборок, поэтому (1,5) и (5,1) — это не одно и то же
2. Спасибо за ваш комментарий @Dr.Snoopy! Это уже все мне разъяснило!