我在boston_Housing学习神经网络,我得到了一个错误,我不知道这意味着什么
from keras.datasets import boston_housing
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import SGD
(x_train, y_train), (x_test, y_test) = boston_housing.load_data()
neural_model = Sequential([
Dense(2, input_shape=(13,), activation="relu"),
Dense(1, activation="sigmoid")
])
neural_model.summary()
neural_model.compile(SGD(lr = .003), "binary_crossentropy", \
metrics=["accuracy"])
np.random.seed(0)
run_hist_1 = neural_model.fit(x_train, y_train, epochs=40,\
validation_data=(x_test, y_test), \
verbose=True, shuffle=False)
print("Training neural network...\n")
print('Accuracy over training data is ', \
accuracy_score(y_train, neural_model.predict_classes(x_train))
print('Accuracy over testing data is ', \
accuracy_score(y_test, neural_model.predict_classes(x_test)))
conf_matrix = confusion_matrix(y_test, neural_model.predict_classes(x_test))
print(conf_matrix)
我得到这个错误:
Classification metrics can't handle a mix of continuous and binary targets at
this point print('Accuracy over testing data is ', \
---> 29 accuracy_score(y_test, neural_model.predict_classes(x_test)))
有人能帮我吗
您正在尝试对适合回归的数据集/任务执行
classification
。您的目标(y_训练和y_测试)是连续的值,而不是离散的类别。完整的方法需要修正sigmoid
改变为linear
或relu
compile
函数中,loss
应该是mse
mae
或mse
李>你们应该了解机器学习和神经网络的一些基本主题,特别是逻辑回归和线性回归之间的区别
相关问题 更多 >
编程相关推荐