当前位置:  开发笔记 > 编程语言 > 正文

如何将数据输入Keras?具体是什么是x_train和y_train,如果我有超过2列?

如何解决《如何将数据输入Keras?具体是什么是x_train和y_train,如果我有超过2列?》经验,为你挑选了1个好方法。

如何将数据输入keras?结构是什么?具体是什么是x_train和y_train,如果我有超过2列?

这是我想输入的数据:

在此输入图像描述

我试图在这个例子中定义Xtrain,Keras在其文档中有多层感知器神经网络代码.(http://keras.io/examples/)这是代码:

from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation
from keras.optimizers import SGD

model = Sequential()
model.add(Dense(64, input_dim=20, init='uniform'))
model.add(Activation('tanh'))
model.add(Dropout(0.5))
model.add(Dense(64, init='uniform'))
model.add(Activation('tanh'))
model.add(Dropout(0.5))
model.add(Dense(2, init='uniform'))
model.add(Activation('softmax'))

sgd = SGD(lr=0.1, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='mean_squared_error', optimizer=sgd)

model.fit(X_train, y_train, nb_epoch=20, batch_size=16)
score = model.evaluate(X_test, y_test, batch_size=16)

编辑(附加信息):

在这里:Python Keras深度学习包的数据类型是什么?

Keras使用包含theano.config.floatX浮点类​​型的numpy数组.这可以在.theanorc文件中配置.通常,对于CPU计算,它将是float64,对于GPU计算,它将是float32,但如果您愿意,也可以在处理CPU时将其设置为float32.您可以通过命令创建正确类型的零填充数组

X = numpy.zeros((4,3), dtype=theano.config.floatX)

问题:步骤1看起来像使用excel文件中的上述数据创建一个浮点numpy数组.我如何处理获胜者专栏?



1> Ian Chen..:

这一切都取决于你的需要.

看起来你想根据A - N列中显示的参数来预测胜利者.然后你应该定义input_dim为14,并且 X_train应该是一个(N,14)numpy数组,如下所示:

[
   [9278,  37.9, ...],
   [18594, 36.3, ...],
   ...
]

看来您的预测集只包含2个项目(2个总统候选LOL),因此您应该将答案编码为Y_train(N,2)numpy数组,如下所示:

[
   [1, 0],
   [1, 0],
   ...
   [0, 1],
   [0, 1],
   ...
]

其中[1,0]表明巴拉克奥巴马是胜利者,反之亦然.


嗯...让我们这样说:Y_train是每个条目对应X_train中的一个的答案.当您想要预测答案时,可以使用model.predict并将X_test提供给它.
@ pr338是的,因为最后一层的激活是softmax,所以它可以被认为是概率.
推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有