我尝试使用 Keras 制作分类模型。我的数据包含一些数字特征和一些文本特征。我所说的文本特征是指评论或类似的东西。数字特征将是类别、年龄等。
我想将文本特征传递到嵌入层,然后传递到 LSTM 层。数字特征需要传递到一系列密集层。之后两层都需要连接起来。之后是密集层来进行输出。
如何在 Keras 中实现这种类型的模型?
或者是否有其他方法可以在模型中同时使用数字特征和基于文本的特征?
最佳答案
使用 keras 功能 API 实现这样的网络相当容易。 假设您已经定义了两个顺序模型来处理文本和数字特征,然后您可以合并输出并继续更多层:
txt_input = keras.layers.Input(shape=(n,))
txt_feat = text_network(txt_input)
num_input = keras.layers.Input(shape=(m,))
num_feat = num_network(input2)
concatinated = keras.layers.Concatenate()([txt_feat, num_feat])
out = keras.layers.Dense(nodes)(concatinated)
model = keras.models.Model(inputs=[input1, input2], outputs=out)
您还可以使用任何 merge layer 来使用其他类型的合并来自喀拉斯。
关于python-3.x - Keras 中具有不同数据类型的深度学习模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49478072/