我正在使用numpy 1.9和最新版本的Theano编写此代码,但是我收到了一个我无法解决的错误.我怀疑它可能是我声明变量类型的方式,但我无法解决它.我感谢你的建议.我想用矢量生成矩阵,并用偏差求和.
import theano.tensor as T from theano import function import numpy as np import pprint def test_theano_matrix(): pp = pprint.PrettyPrinter(indent=3) W= T.fmatrix() x=T.fvector() b= T.fvector() y = T.dot(W,x) + b lin_func = function([W,x,b],y) dt = np.dtype(np.float) w_inp = np.matrix('1 0;0 1',dtype=dt) x_inp = np.matrix('2;1',dtype=dt) b_inp = np.matrix('0;0',dtype=dt) lin_func(w_inp,x_inp,b_inp) if __name__ == '__main__': test_theano_matrix()
我收到以下错误:
raise TypeError(err_msg,data) TypeError: ('Bad input argument to theano function at index 0(0-based)','TensorType(float32,matrix) cannot store a value of dtype float64 without risking loss of precision. If you do not mind this loss,you can: 1) explicitly cast your data to float32,or 2) set "allow_input_downcast=True" when calling "function".',matrix([[ 1.,0.],[ 0.,1.]]))
谢谢你的时间!
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。