博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
theano报一种float类型错误的处理办法
阅读量:5088 次
发布时间:2019-06-13

本文共 818 字,大约阅读时间需要 2 分钟。

  我实际用的环境是Keras,查错误时查到是Theano的配置问题,所以在标题里就写成Theano的问题了,

  是这样的,从Github上下载的别人的代码,准备复现别人的实验,结果在机器上部署好环境之后跑代码时报错为:

  TypeError: ('An update must have the same type as the original shared variable (shared_var=weight_1,

shared_var.type=TensorType(float32, matrix), update_val=Elemwise{sub,no_inplace}.0,
update_val.type=TensorType(float64, matrix)).', 'If the difference is related to the broadcast pattern, you
can call the tensor.unbroadcast(var, axis_to_unbroadcast[, ...]) function to remove broadcastable
dimensions.')

  意思就是代码里float的位数不对,以前的Keras版本都是float32的,现在的新版Keras默认是float64的,具体两者有什么区别还不太清楚,但是表现在执行的时候就是报上面的错,之后程序停止,

  解决方案:在代码中,import语句的下面添加下面一行代码,

   theano.config.floatX= 'float32'

  之后运行就行了,此时就是显式设置相关编译信息,

 

  (初来乍到,有错误之处还望指正,其实个人刚开始使用Keras和Theano,有很多也不太了解,)

转载于:https://www.cnblogs.com/1394htw/p/5357976.html

你可能感兴趣的文章
MyBatis学习总结(一)——MyBatis入门学习
查看>>
Hotels杂志
查看>>
Niginx反向代理负载均衡
查看>>
Linux/Unix下的任务管理器-top命令
查看>>
必须掌握的八个【cmd 命令行】
查看>>
BZOJ 1876: [SDOI2009]SuperGCD( 更相减损 + 高精度 )
查看>>
sql 添加修改说明
查看>>
开发中的乱码问题
查看>>
java实现从报文中获取投保单号
查看>>
面试中的Singleton
查看>>
SPOJ - ADAQUEUE ,双端队列简单运用!
查看>>
网页转图片--- html2canvas截图
查看>>
ios调试技巧
查看>>
bzoj3376/poj1988[Usaco2004 Open]Cube Stacking 方块游戏
查看>>
lexical_cast组件
查看>>
[Noi2015]荷马史诗
查看>>
log4j 初体验
查看>>
jQuery form插件的使用--ajaxForm()和ajaxSubmit()的可选参数项对象
查看>>
在本地windows机器上安装SecureCRT客户端
查看>>
解决“Kali Linux终端打不开”
查看>>