Theano.tensor.round函数学习,同时解决输出Elemwise{xxx,no_inplace}.0的问题
1. 出现Elemwise{xxx,no_inplace}.0
这是因为没有定义theano.function所致,参考下面错误示范:
y = np.random.normal(size=(2,2))
z1 = T.round(y, mode='half_to_even')
print(z1)
# 输 出
Elemwise{round_half_to_even,no_inplace}.0
正确操作如下:
x = T.dmatrix('x')
y = np.random.normal(size=(2,2))
z = T.round(x, mode='half_to_even')
f = function([x], z)
print(f(y))
# 输 出
[[ 0., 1.],
[-1., -1.]]
2. tensor.round(a, mode='half_to_even')函数学习
其实就是对a近似,离哪个整数值近就近似成那个值,有2种模式(我的theano版本默认为half_to_even),具体区别见下面代码:
# -*- coding:utf-8 -*-
# Theano learning
# 文档位置:http://deeplearning.net/software/theano/library/tensor/basic.html?highlight=round#theano.tensor.round
import theano
import numpy as np
import theano.tensor as T
from theano import function
# version 1.0.4
if __name__ == '__main__':
"""
theano.tensor.round(a, mode='half_to_even')
mode='half_to_even'(default) or 'half_away_from_zero'
"""
x = T.dmatrix('x')
y = np.random.normal(size=(2,2))
z1 = T.round(x, mode='half_to_even')
z2 = T.round(x, mode='half_away_from_zero')
f1 = function([x], z1)
f2 = function([x], z2)
print(y)
print(f1(y))
print(f2(y))
# 输 出
# 试了好几个输入,可以看出2种模式近似几乎没区别,只有在近似到0时会出现-0这样
[[-0.06255656 -0.44239336]
[-2.25829238 -0.23422771]]
[[ 0. 0.]
[-2. 0.]]
[[-0. -0.]
[-2. -0.]]
Theano.tensor.round函数学习,同时解决输出Elemwise{xxx,no_inplace}.0的问题的更多相关文章
- C#中ROUND函数的问题 解决
ROUND()是C#中math的一个成员函数.System.Math.Round(),这个函数有四种用法,最长用的是对小数点位数的舍入.但这和现实生活中的“四舍五入”有一定区别,也有别JAVA中Mat ...
- round函数解决oracle报错"OCI-22053: 溢出错误"的问题
继上次公司网站报错除数为0的问题,这次又来报错溢出错误,还是同一条语句!搜索网上的解决方法,发现问题描述和解决方法如下: Oracle 数值数据类型最多可存储 38 个字节的精度.当将 Oracle ...
- 改写python round()函数,解决四舍五入问题 round(1.365,2)=1.36
round()函数四舍五入存在一个问题,遇到5不一定进一.如下图所示: print(round(1.365,2)) #1.36 没进一 print('%.2f'%1.365) print(round( ...
- Javascript 随机数函数 学习之一:产生服从均匀分布随机数
大家都知道Math.random是 javascript 中返回伪随机数的函数,但查看 MDN, The Math.random() function returns a floating-point ...
- R实现的最小二乘lsfit函数学习
1.源码 function (x, y, wt = NULL, intercept = TRUE, tolerance = 1e-, yname = NULL) { x <- as.matrix ...
- C语言(函数)学习之strstr strcasestr
C语言(函数)学习之[strstr]&[strcasestr]一.strstr函数使用[1]函数原型char*strstr(constchar*haystack,constchar*needl ...
- php中的ceil和floo以及round函数
ceil是向上进位得到一个值的函数: floor是舍掉小数位得到一个值的函数: round是用来四舍五入的函数. ceil 定义和用法: ceil() 函数向上舍入为最接近的整数. ceil(x); ...
- mysql 函数学习(常用)
1.时间函数(组1) SELECT CURRENT_DATE() AS date, CURRENT_TIME() AS `time`, CURRENT_TIMESTAMP() AS `timestam ...
- pythone函数基础(8)内置函数学习
内置函数学习# sorted# map# filter# max# sum# round# chr# ord# dir# bool# eval# exec# zipimport mathres = m ...
随机推荐
- 为什么要花钱学 Python,自学不好吗?
买了这么多课程,有哪一门是你从头到尾听完,并且能将知识点学以致用的?如果你想成为一名相对优秀的程序员,建议你读完这篇文章,如果愿意可以分享给你的朋友. 2018过去的一年,对大多数互联网人来说,201 ...
- 学习storm实现求和操作
1 storm求和简单操作 主要逻辑,就是spout发送数据源,blot进行处理数据,主要注意的点就是 spout这有个nextTuple自旋,和使用父类的declare..方法声明要发送到下游的名称 ...
- django项目外部的脚本文件执行ORM操作,无需配置路由、视图启动django服务
#一.将脚本路径添加到python的sys系统环境变量里 import sys # sys.path.append('c:/Users/Administrator/www/mymac') #第一种.绝 ...
- keras04 GAN simple
reference: GAN 讲解 https://blog.csdn.net/u010900574/article/details/53427544 命令行解析 https://blog.csdn. ...
- vue 相关
1.vue v-for 循环一个数组,key值报错,但是数据是正常显示的 报错: v-for使用key,需要在key前加上:key;srcList是个数组,key值绑定不能是数据类型Object的it ...
- linux上面sqlserver数据库的操作
sqlserver2017可以安装到linux也不是什么新鲜事, centos安装好sqlserver后有一写操作 systemctl status mssql-server:查看sqlserver的 ...
- LeetCode33—搜索旋转排序数组
方法一:先找到旋转点,然后根据目标值重新确定二分查找区域. 时间复杂度:用到两次二分查找,每次二分查找粗略的认为是O(logn),那么时间复杂度为2 * O(logn): 空间复杂度:O(1). in ...
- element 给table的个别表格框添加样式 ---重构里面的组件
<el-table ref="singleTable" :show-header='false' :data="tableData" align='cen ...
- WD与地图 解题报告
WD与地图 哎,我好傻啊,看了题解还弄错了一遍,靠着lbw指点才董 题意:给一个带点权有向图,要求支持删边,查询一个scc前\(k\)大权值,修改点权,不强制在线. 显然倒序处理变成加边 考虑求出每条 ...
- Re.多项式求逆
前言 emmm暂无 多项式求逆目的 顾名思义 就是求出一个多项式的摸xn时的逆 给定一个多项式F(x),请求出一个多项式G(x),满足F(x)∗G(x)≡1(modxn),系数对998244353取模 ...