【发布时间】:2018-11-26 06:36:55
【问题描述】:
我正在尝试使用 keras 拟合我的模型(神经网络),但出现 ValueError 错误。
导入 keras
from keras.models import Sequential
from keras.layers import Dense
classificador_rede_neural = Sequential()
# # Camadas Ocultas e de Saída
# camadas ocultas = (entradas + saídas)/2 #estimando o numero de neurônios em camada oculta
#
# temos:len(train.columns) - 1 atributos previsores
#
# 1 classe
#len(train.columns)
camadas_ocultas = round(len(train.columns)/2)
print(camadas_ocultas)
classificador_rede_neural.add(Dense(units=camadas_ocultas, activation='relu',input_dim =len(train.columns) ))#primeira camada
classificador_rede_neural.add(Dense(units=camadas_ocultas, activation='relu' ))#segunda camada
classificador_rede_neural.add(Dense(units=1, activation='sigmoid' ))#camada de saída. a saída é binária, logo units=1
classificador_rede_neural.compile(optimizer='adam',loss='binary_crossentropy',metrics=['accuracy'])
classificador_rede_neural.fit(X_train2,y_train2,batch_size=10,epochs =100)
我收到错误:
ValueError: Please provide as model inputs either a single array or a list of arrays. You passed: x= sload dload spkts dpkts swin dwin smean dmean \
0 1.803636e+08 0.000000 2 0 0 0 248 0
1 8.810000e+08 0.000000 2 0 0 0 881 0
2 8.544000e+08 0.000000 2 0 0 0 534 0
3 6.000000e+08 0.000000 2 0 0 0 450 0
4 8.504000e+08 0.000000 2 0 0 0 1063 0
5 1.045333e+09 0.000000 2 0 0 0 392 0
6 1.306667e+09 0.000000 2 0 0 0 980 0
7 1.977143e+08 0.000000 2 0 0 0 692 0
[82332 rows x 22 columns]
如何拟合模型?我的数据有什么问题?
【问题讨论】:
-
X_train2和y_train2长什么样子? -
@Colonder: ibb.co/jsCmqJ
-
@Colonder: ibb.co/juDbqJ
-
@Colonder: pastebin.com/KpZZ69Ar
-
这个错误令人困惑,因为你应该提供 Numpy 数组而不是列表!!!
标签: python-3.x neural-network keras