ここには、3つの入力値と3つの出力値を含む単純なニューラルネットワークがあります。ケラスニューラルネットワークアーキテクチャが正しくない
エラー:私はこのネットワークを実行すると
ValueError: Error when checking model target: expected dense_78 to have shape (None, 3) but got array with shape (3, 1)
がスローされます。私は正しくこのネットワークを設計さていませんでした
model.add(Dense(3, activation='softmax'))
、私のミスです:私は、最終的な層は、ラベルの数と一致する3つの可能な出力を持つように設定していますか?
data = ([[ 0.29365378],
[ 0.27958957],
[ 0.27946938]])
labels = [[1], [2], [3]]
import numpy as np
from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation
from keras.optimizers import SGD
model.add(Dense(64, activation='relu', input_dim=1))
model.add(Dropout(0.5))
model.add(Dense(64, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(3, activation='softmax'))
sgd = SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='categorical_crossentropy',
optimizer=sgd,
metrics=['accuracy'])
model.fit(data, labels,
epochs=20,
batch_size=32)