我正在使用Tensorflow和Keras.我写了代码,
from keras.layers import *
match = dot([input_encoded_m, question_encoded], axes=(2, 2))
当我运行它时,
match = dot([input_encoded_m, question_encoded], axes=(2, 2))
NameError: name 'dot' is not defined
发生错误。我认为通过使用import *
,可以调用点方法,但是这是错误的吗?我应该如何解决这个问题?
这就是你想要的
from keras.layers import dot
match = dot([input_encoded_m, question_encoded], axes=(2, 2))
只是对未来的建议:根本不要通过 * 导入,因为知道里面的内容可能会产生误导,并且使用相同的命名空间很容易出错。始终像使用import xxx
一样导入完整的库(脚本(,或者只使用from xxx import xxx
导入一些函数、类等,但切勿通过 * 导入。
dot是NumPy的一个函数,你只需用numpy.dot(x,y(调用它,它就可以正常工作...