从 Keras.layers.core 在创建模型时使用 theano 作为后端导入 Dense
Posted
技术标签:
【中文标题】从 Keras.layers.core 在创建模型时使用 theano 作为后端导入 Dense【英文标题】:from Keras.layers.core import Dense using theano as backend when creating a model 【发布时间】:2020-05-08 10:01:44 【问题描述】:我已经从 keras.layers.core 导入了 Dense ,当我创建一个新模型时
model = Sequential()
model.add(Dense(12, input_shape=(len(train_x[0]),), activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(6, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(len(train_y[0]), activation='softmax'))
那么有错误
AttributeError:('The following error happened while compiling the node',
DotModulo(A, s, m, A2, s2, m2), '\n',
"module 'numpy.core.multiarray' has no attribute '_get_ndarray_c_version'")
我不明白为什么?
【问题讨论】:
【参考方案1】:您的theano
版本对于您拥有的numpy
版本来说太旧了,所以您会收到这些错误,但解决方法很简单,您应该升级到theano >= 1.0.4
(至少版本1.0.4)应该可以解决问题,如here所述。
另外请注意,Theano 并没有真正被开发出来,所以这样的问题将变得更加普遍,您应该考虑迁移到另一个后端。
【讨论】:
谢谢,我在新环境下安装了keras,不用theano,避免矛盾以上是关于从 Keras.layers.core 在创建模型时使用 theano 作为后端导入 Dense的主要内容,如果未能解决你的问题,请参考以下文章