Machine learning 如何在Keras模型中拆分输入

Machine learning 如何在Keras模型中拆分输入,machine-learning,keras,deep-learning,keras-layer,keras-2,Machine Learning,Keras,Deep Learning,Keras Layer,Keras 2,我试图在keras中做一些非常简单的事情,但没有成功。我有一个输入X,大小(?,1452,1)。我要做的就是把这个输入分成1450和2的向量,然后在网络中分别处理它们。我试过: X1 = X[:, 1450:1452, :] X2 = X[:, 0:1450, :] 然后我想做什么就做什么。它编译得很好,直到我创建模型的那一行。我得到一个错误,说我的张量对象没有任何名为\u keras\u history的属性,即使它有。我猜keras将X1和X2转换成正则张量。因此,我尝试通过以下方式使用

我试图在
keras
中做一些非常简单的事情,但没有成功。我有一个输入
X
,大小
(?,1452,1)
。我要做的就是把这个输入分成1450和2的向量,然后在网络中分别处理它们。我试过:

X1 = X[:, 1450:1452, :]

X2 = X[:, 0:1450, :]
然后我想做什么就做什么。它编译得很好,直到我创建模型的那一行。我得到一个错误,说我的张量对象没有任何名为
\u keras\u history
的属性,即使它有。我猜keras将X1和X2转换成正则张量。因此,我尝试通过以下方式使用
Lambda层

X1 = Lambda(lambda x: X[:, 0:1450, :], output_shape=(1450, 1))(X)
使用此工具后,网络编译和训练完全正常,唯一的问题是将模型保存到
json/yaml
。它在
copy.deepcopy
部分给了我一个错误,它说:

TypeError:无法pickle\u thread.lock对象。在网上研究之后

出于某种原因,我发现在将
Lambda层
保存到
json
时存在问题


问题:您知道有什么方法可以以正常方式分割输入,以便我以后保存模型吗?谢谢

请提供更多代码,说明第一步中发生错误的位置。如果有更多信息,则显示错误的stacktrace。您可以使用tf.slice吗?为什么不使用具有两个输入的模型?tf.slice与X[:,1,:]相同。。。我不知道有两个输入的模型。我试试看。谢谢在阅读了将多个输入输入输入到我的模型并调整代码之后,它似乎工作了。非常感谢你!我不知道解决办法这么简单