我在學keras,而且我的任務很簡單。使用數據中的3個變量來預測另一個var值,它可以在R/Python ANN模型上正常工作。但是當我嘗試使用keras來構建一個神經網絡時,它無法以0的精度工作。 的代碼,使用keras構建一個簡單的ANN,但得到0的準確性
from keras.models import Sequential
from keras.layers import Dense, Activation
import pandas as pd
from sklearn.cross_validation import train_test_split
data = pd.read_csv(datapath)
data = data.dropna()
x = data.values[:, [2, 9, 10]]
y = data.values[:, 8]
train_X, test_X, train_y, test_y = train_test_split(x, y, train_size=0.5, random_state=0)
model = Sequential()
model.add(Dense(16, input_shape=(3,)))
model.add(Activation('sigmoid'))
model.add(Dense(1))
model.add(Activation('linear'))
model.compile(optimizer='sgd', loss='mean_squared_error', metrics=['accuracy'])
model.fit(train_X, train_y, nb_epoch=100, batch_size=32, verbose=0)
loss, accuracy = model.evaluate(test_X, test_y, verbose=0)
print("Accuracy = {:.2f}".format(accuracy))
所以,我的問題是,是我的代碼的權利,以及如何使其工作?
嘗試使用* keras.callbacks.TensorBoard *來調試您的模型。 –