python – Keras:无法将形状(14,1)的输入数组广播成形状(14)
发布时间:2020-12-20 12:04:43 所属栏目:Python 来源:网络整理
导读:我在 Windows 10上使用Keras和Tensorflow.我正在尝试为Adult数据集( https://archive.ics.uci.edu/ml/datasets/Adult)创建一个maschine学习模型. 首先,我正在做一个热编码然后我正在尝试训练我的模型,但我得到: “ValueError:无法将输入数组从形状(14,1)广
我在
Windows 10上使用Keras和Tensorflow.我正在尝试为Adult数据集(
https://archive.ics.uci.edu/ml/datasets/Adult)创建一个maschine学习模型.
首先,我正在做一个热编码然后我正在尝试训练我的模型,但我得到: 即使我将input_dim更改为14以外的其他内容,我仍然会得到相同形状的相同错误. 我究竟做错了什么? df = pd.read_csv("adult_data.csv",header=None) X = df.iloc[:,0:14] Y = df.iloc[:,14] encoder = LabelEncoder() #X for i in [1,3,5,6,7,8,9,13]: column = X[i] encoder.fit(column) encoded_C = encoder.transform(column) X[i] = np_utils.to_categorical(encoded_C) print(X.shape) #Y encoder.fit(Y) en_Y = encoder.transform(Y) Y = np_utils.to_categorical(en_Y) #model model = Sequential() model.add(Dense(21,input_dim=14,activation="relu")) model.add(Dense(2,activation="softmax")) #compile model.compile(loss="categorical_crossentropy",optimizer="adam",metrics= ["accuracy"]) #train model.fit(X,Y,epochs=50,batch_size=100) score = model.evaluate(X,Y) print("Accuracy: {}%".format(score[0])) 完全错误:
解决方法
通过更新到Keras版本2.1.2修复了错误.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |