Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
pytensor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
testgroup
pytensor
Commits
9cfbf4fd
提交
9cfbf4fd
authored
3月 21, 2017
作者:
Shubh Vachher
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
All *InplaceTesters now pass grad as None
上级
1f365c07
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
56 行增加
和
51 行删除
+56
-51
test_basic.py
theano/tensor/tests/test_basic.py
+56
-51
没有找到文件。
theano/tensor/tests/test_basic.py
浏览文件 @
9cfbf4fd
...
...
@@ -653,7 +653,6 @@ def makeBroadcastTester(op, expected, checks=None, name=None, **kwargs):
return
numpy
.
all
(
inputs
[
0
]
==
outputs
[
0
])
checks
=
dict
(
checks
,
inplace_check
=
inplace_check
)
grad
=
{}
del
kwargs
[
'inplace'
]
return
makeTester
(
name
,
op
,
expected
,
checks
,
**
kwargs
)
...
...
@@ -746,6 +745,7 @@ AddInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_binary_normal
,
bad_build
=
_bad_build_broadcast_binary_normal
,
bad_runtime
=
_bad_runtime_broadcast_binary_normal
,
grad
=
None
inplace
=
True
)
SubTester
=
makeBroadcastTester
(
...
...
@@ -761,7 +761,7 @@ SubInplaceTester = makeBroadcastTester(op=inplace.sub_inplace,
good
=
_good_broadcast_binary_normal
,
bad_build
=
_bad_build_broadcast_binary_normal
,
bad_runtime
=
_bad_runtime_broadcast_binary_normal
,
grad
=
_grad_broadcast_binary_normal
,
grad
=
None
,
inplace
=
True
)
...
...
@@ -808,7 +808,7 @@ MaximumInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_binary_normal
,
bad_build
=
_bad_build_broadcast_binary_normal
,
bad_runtime
=
_bad_runtime_broadcast_binary_normal
,
grad
=
_grad_broadcast_binary_normal
,
grad
=
None
,
inplace
=
True
)
MinimumTester
=
makeBroadcastTester
(
...
...
@@ -825,7 +825,7 @@ MinimumInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_binary_normal
,
bad_build
=
_bad_build_broadcast_binary_normal
,
bad_runtime
=
_bad_runtime_broadcast_binary_normal
,
grad
=
_grad_broadcast_binary_normal
,
grad
=
None
,
inplace
=
True
)
MulTester
=
makeBroadcastTester
(
...
...
@@ -846,7 +846,7 @@ MulInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_binary_normal
,
bad_build
=
_bad_build_broadcast_binary_normal
,
bad_runtime
=
_bad_runtime_broadcast_binary_normal
,
grad
=
_grad_broadcast_binary_normal
,
grad
=
None
,
inplace
=
True
)
...
...
@@ -955,7 +955,7 @@ TrueDivInplaceTester = makeBroadcastTester(
_good_broadcast_div_mod_normal_float_inplace
,
# The output is now in float, we cannot work inplace on an int.
without
=
[
'integer'
,
'uint8'
,
'uint16'
,
'int8'
]),
grad
=
_grad_broadcast_div_mod_normal
,
grad
=
None
,
grad_rtol
=
div_grad_rtol
,
inplace
=
True
)
...
...
@@ -993,7 +993,7 @@ InvInplaceTester = makeBroadcastTester(
expected
=
lambda
x
:
_numpy_true_div
(
numpy
.
int8
(
1
),
x
),
good
=
_good_inv_inplace
,
bad_runtime
=
_bad_runtime_inv
,
grad
=
_grad_inv
,
grad
=
None
,
grad_rtol
=
div_grad_rtol
,
inplace
=
True
)
...
...
@@ -1025,7 +1025,7 @@ ModInplaceTester = makeBroadcastTester(
x
%
y
,
dtype
=
theano
.
scalar
.
basic
.
upcast
(
x
.
dtype
,
y
.
dtype
)),
good
=
copymod
(
_good_broadcast_div_mod_normal_float_inplace
,
[
"complex1"
,
"complex2"
]),
grad
=
_grad_broadcast_div_mod_normal
,
grad
=
None
,
grad_eps
=
1e-5
,
inplace
=
True
)
...
...
@@ -1081,7 +1081,7 @@ PowInplaceTester = makeBroadcastTester(
op
=
inplace
.
pow_inplace
,
expected
=
lambda
x
,
y
:
x
**
y
,
good
=
_good_broadcast_pow_normal_float_pow
,
grad
=
_grad_broadcast_pow_normal
,
grad
=
None
,
inplace
=
True
,
mode
=
m
)
...
...
@@ -1192,7 +1192,7 @@ AbsInplaceTester = makeBroadcastTester(
op
=
inplace
.
abs__inplace
,
expected
=
lambda
x
:
numpy
.
abs
(
x
),
good
=
_good_broadcast_unary_normal_abs
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
NegTester
=
makeBroadcastTester
(
...
...
@@ -1204,7 +1204,7 @@ NegInplaceTester = makeBroadcastTester(
op
=
inplace
.
neg_inplace
,
expected
=
lambda
x
:
-
x
,
good
=
_good_broadcast_unary_normal
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
SgnTester
=
makeBroadcastTester
(
...
...
@@ -1216,7 +1216,7 @@ SgnInplaceTester = makeBroadcastTester(
op
=
inplace
.
sgn_inplace
,
expected
=
numpy
.
sign
,
good
=
_good_broadcast_unary_normal_no_complex
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
IntDivTester
=
makeBroadcastTester
(
...
...
@@ -1235,6 +1235,7 @@ IntDivInplaceTester = makeBroadcastTester(
# I don't test the grad as the output is always an integer
# (this is not a continuous output).
# grad=_grad_broadcast_div_mod_normal,
grad
=
None
,
inplace
=
True
)
...
...
@@ -1253,9 +1254,7 @@ CeilInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_unary_normal_no_complex
,
# corner cases includes a lot of integers: points where Ceil is not
# continuous (not differentiable)
grad
=
copymod
(
_grad_broadcast_unary_normal_noint
,
extra
=
[
numpy
.
asarray
([
-
2.5
,
-
1.5
,
-
1.51
,
0.49
,
.
98
,
1.02
],
dtype
=
floatX
)]),
grad
=
None
,
inplace
=
True
)
FloorTester
=
makeBroadcastTester
(
...
...
@@ -1268,13 +1267,14 @@ FloorInplaceTester = makeBroadcastTester(
op
=
inplace
.
floor_inplace
,
expected
=
upcast_float16_ufunc
(
numpy
.
floor
),
good
=
_good_broadcast_unary_normal_no_complex
,
grad
=
_grad_broadcast_unary_normal_noint
,
grad
=
None
,
inplace
=
True
)
TruncInplaceTester
=
makeBroadcastTester
(
op
=
inplace
.
trunc_inplace
,
expected
=
upcast_float16_ufunc
(
numpy
.
trunc
),
good
=
_good_broadcast_unary_normal_no_complex
,
grad
=
None
,
inplace
=
True
)
TruncTester
=
makeBroadcastTester
(
...
...
@@ -1292,7 +1292,7 @@ RoundHalfToEvenInplaceTester = makeBroadcastTester(
op
=
inplace
.
round_half_to_even_inplace
,
expected
=
numpy
.
round
,
good
=
_good_broadcast_unary_normal_float_no_complex
,
grad
=
_grad_broadcast_unary_normal_no_complex_no_corner_cas
e
,
grad
=
Non
e
,
inplace
=
True
)
# numpy.vectorize don't handle correctly empty ndarray.
...
...
@@ -1308,7 +1308,7 @@ RoundHalfAwayFromZeroInplaceTester = makeBroadcastTester(
op
=
inplace
.
round_half_away_from_zero_inplace
,
expected
=
lambda
a
:
theano
.
scalar
.
basic
.
round_half_away_from_zero_vec
(
a
),
good
=
_good_broadcast_unary_normal_float_no_empty_no_complex
,
grad
=
_grad_broadcast_unary_normal_no_complex_no_corner_cas
e
,
grad
=
Non
e
,
inplace
=
True
)
SqrTester
=
makeBroadcastTester
(
...
...
@@ -1321,7 +1321,7 @@ SqrInplaceTester = makeBroadcastTester(
op
=
inplace
.
sqr_inplace
,
expected
=
numpy
.
square
,
good
=
_good_broadcast_unary_normal
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
ExpTester
=
makeBroadcastTester
(
...
...
@@ -1336,7 +1336,7 @@ ExpInplaceTester = makeBroadcastTester(
op
=
inplace
.
exp_inplace
,
expected
=
numpy
.
exp
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
Exp2Tester
=
makeBroadcastTester
(
...
...
@@ -1348,7 +1348,7 @@ Exp2InplaceTester = makeBroadcastTester(
op
=
inplace
.
exp2_inplace
,
expected
=
numpy
.
exp2
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
...
...
@@ -1364,7 +1364,7 @@ Expm1InplaceTester = makeBroadcastTester(
op
=
inplace
.
expm1_inplace
,
expected
=
numpy
.
expm1
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
...
...
@@ -1391,7 +1391,7 @@ LogInplaceTester = makeBroadcastTester(
op
=
inplace
.
log_inplace
,
expected
=
numpy
.
log
,
good
=
_good_broadcast_unary_positive_float
,
grad
=
_grad_broadcast_unary_positiv
e
,
grad
=
Non
e
,
inplace
=
True
)
Log2Tester
=
makeBroadcastTester
(
...
...
@@ -1403,7 +1403,7 @@ Log2InplaceTester = makeBroadcastTester(
op
=
inplace
.
log2_inplace
,
expected
=
numpy
.
log2
,
good
=
_good_broadcast_unary_positive_float
,
grad
=
_grad_broadcast_unary_positiv
e
,
grad
=
Non
e
,
inplace
=
True
)
Log10Tester
=
makeBroadcastTester
(
...
...
@@ -1415,7 +1415,7 @@ Log10InplaceTester = makeBroadcastTester(
op
=
inplace
.
log10_inplace
,
expected
=
numpy
.
log10
,
good
=
_good_broadcast_unary_positive_float
,
grad
=
_grad_broadcast_unary_positiv
e
,
grad
=
Non
e
,
inplace
=
True
)
Log1pTester
=
makeBroadcastTester
(
...
...
@@ -1427,7 +1427,7 @@ Log1pInplaceTester = makeBroadcastTester(
op
=
inplace
.
log1p_inplace
,
expected
=
numpy
.
log1p
,
good
=
_good_broadcast_unary_positive_float
,
grad
=
_grad_broadcast_unary_positiv
e
,
grad
=
Non
e
,
inplace
=
True
)
SqrtTester
=
makeBroadcastTester
(
...
...
@@ -1439,7 +1439,7 @@ SqrtInplaceTester = makeBroadcastTester(
op
=
inplace
.
sqrt_inplace
,
expected
=
numpy
.
sqrt
,
good
=
_good_broadcast_unary_positive_float
,
grad
=
_grad_broadcast_unary_positiv
e
,
grad
=
Non
e
,
inplace
=
True
)
_good_broadcast_unary_wide
=
dict
(
...
...
@@ -1470,7 +1470,7 @@ Deg2radInplaceTester = makeBroadcastTester(
op
=
inplace
.
deg2rad_inplace
,
expected
=
numpy
.
deg2rad
,
good
=
_good_broadcast_unary_normal_float_no_complex
,
grad
=
_grad_broadcast_unary_normal_no_complex
,
grad
=
None
,
inplace
=
True
,
eps
=
angle_eps
)
...
...
@@ -1484,7 +1484,7 @@ Rad2degInplaceTester = makeBroadcastTester(
op
=
inplace
.
rad2deg_inplace
,
expected
=
numpy
.
rad2deg
,
good
=
_good_broadcast_unary_normal_float_no_complex
,
grad
=
_grad_broadcast_unary_normal_no_complex
,
grad
=
None
,
inplace
=
True
,
eps
=
angle_eps
)
...
...
@@ -1497,7 +1497,7 @@ SinInplaceTester = makeBroadcastTester(
op
=
inplace
.
sin_inplace
,
expected
=
numpy
.
sin
,
good
=
_good_broadcast_unary_wide_float
,
grad
=
_grad_broadcast_unary_wid
e
,
grad
=
Non
e
,
inplace
=
True
)
_good_broadcast_unary_arcsin
=
dict
(
...
...
@@ -1526,7 +1526,7 @@ ArcsinInplaceTester = makeBroadcastTester(
op
=
inplace
.
arcsin_inplace
,
expected
=
numpy
.
arcsin
,
good
=
_good_broadcast_unary_arcsin_float
,
grad
=
_grad_broadcast_unary_arcsin
,
grad
=
None
,
inplace
=
True
)
CosTester
=
makeBroadcastTester
(
...
...
@@ -1538,7 +1538,7 @@ CosInplaceTester = makeBroadcastTester(
op
=
inplace
.
cos_inplace
,
expected
=
numpy
.
cos
,
good
=
_good_broadcast_unary_wide_float
,
grad
=
_grad_broadcast_unary_wid
e
,
grad
=
Non
e
,
inplace
=
True
)
...
...
@@ -1557,7 +1557,7 @@ ArccosInplaceTester = makeBroadcastTester(
op
=
inplace
.
arccos_inplace
,
expected
=
numpy
.
arccos
,
good
=
_good_broadcast_unary_arcsin_float
,
grad
=
_grad_broadcast_unary_arcsin
,
grad
=
None
,
inplace
=
True
)
_good_broadcast_unary_tan
=
dict
(
...
...
@@ -1583,7 +1583,7 @@ TanInplaceTester = makeBroadcastTester(
op
=
inplace
.
tan_inplace
,
expected
=
numpy
.
tan
,
good
=
copymod
(
_good_broadcast_unary_tan
,
without
=
[
'integers'
,
'int8'
,
'uint8'
,
'uint16'
]),
grad
=
_grad_broadcast_unary_tan
,
grad
=
None
,
inplace
=
True
)
ArctanTester
=
makeBroadcastTester
(
...
...
@@ -1595,7 +1595,7 @@ ArctanInplaceTester = makeBroadcastTester(
op
=
inplace
.
arctan_inplace
,
expected
=
numpy
.
arctan
,
good
=
_good_broadcast_unary_wide_float
,
grad
=
_grad_broadcast_unary_wid
e
,
grad
=
Non
e
,
inplace
=
True
)
_good_broadcast_binary_arctan2
=
dict
(
...
...
@@ -1635,7 +1635,7 @@ Arctan2InplaceTester = makeBroadcastTester(
expected
=
numpy
.
arctan2
,
good
=
copymod
(
_good_broadcast_binary_arctan2
,
without
=
[
'integers'
,
'int8'
,
'uint8'
,
'uint16'
]),
grad
=
_grad_broadcast_binary_arctan2
,
grad
=
None
,
inplace
=
True
)
CoshTester
=
makeBroadcastTester
(
...
...
@@ -1650,7 +1650,7 @@ CoshInplaceTester = makeBroadcastTester(
op
=
inplace
.
cosh_inplace
,
expected
=
numpy
.
cosh
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
_good_broadcast_unary_arccosh
=
dict
(
...
...
@@ -1670,7 +1670,7 @@ ArccoshInplaceTester = makeBroadcastTester(
op
=
inplace
.
arccosh_inplace
,
expected
=
numpy
.
arccosh
,
good
=
copymod
(
_good_broadcast_unary_arccosh
,
without
=
[
'integers'
,
'uint8'
]),
grad
=
_grad_broadcast_unary_arccosh
,
grad
=
None
,
inplace
=
True
)
SinhTester
=
makeBroadcastTester
(
...
...
@@ -1685,7 +1685,7 @@ SinhInplaceTester = makeBroadcastTester(
op
=
inplace
.
sinh_inplace
,
expected
=
numpy
.
sinh
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
ArcsinhTester
=
makeBroadcastTester
(
...
...
@@ -1697,7 +1697,7 @@ ArcsinhInplaceTester = makeBroadcastTester(
op
=
inplace
.
arcsinh_inplace
,
expected
=
numpy
.
arcsinh
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
TanhTester
=
makeBroadcastTester
(
...
...
@@ -1709,7 +1709,7 @@ TanhInplaceTester = makeBroadcastTester(
op
=
inplace
.
tanh_inplace
,
expected
=
numpy
.
tanh
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
_good_broadcast_unary_arctanh
=
dict
(
...
...
@@ -1732,7 +1732,7 @@ ArctanhInplaceTester = makeBroadcastTester(
op
=
inplace
.
arctanh_inplace
,
expected
=
numpy
.
arctanh
,
good
=
copymod
(
_good_broadcast_unary_arctanh
,
without
=
[
'integers'
,
'int8'
,
'uint8'
,
'uint16'
]),
grad
=
_grad_broadcast_unary_arctanh
,
grad
=
None
,
inplace
=
True
)
...
...
@@ -1787,7 +1787,7 @@ ErfInplaceTester = makeBroadcastTester(
op
=
inplace
.
erf_inplace
,
expected
=
expected_erf
,
good
=
_good_broadcast_unary_normal_float
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
mode
=
mode_no_scipy
,
eps
=
2e-10
,
inplace
=
True
,
...
...
@@ -1805,7 +1805,7 @@ ErfcInplaceTester = makeBroadcastTester(
op
=
inplace
.
erfc_inplace
,
expected
=
expected_erfc
,
good
=
_good_broadcast_unary_normal_float_no_complex
,
grad
=
_grad_broadcast_unary_normal
,
grad
=
None
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
inplace
=
True
,
...
...
@@ -1822,7 +1822,7 @@ ErfcxInplaceTester = makeBroadcastTester(
op
=
inplace
.
erfcx_inplace
,
expected
=
expected_erfcx
,
good
=
_good_broadcast_unary_normal_float_no_complex_small_neg_range
,
grad
=
_grad_broadcast_unary_normal_small_neg_rang
e
,
grad
=
Non
e
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
inplace
=
True
)
...
...
@@ -1869,7 +1869,7 @@ GammaInplaceTester = makeBroadcastTester(
op
=
inplace
.
gamma_inplace
,
expected
=
expected_gamma
,
good
=
_good_broadcast_unary_gammaln
,
grad
=
_grad_broadcast_unary_gammaln
,
grad
=
None
,
mode
=
mode_no_scipy
,
eps
=
1e-5
,
inplace
=
True
,
...
...
@@ -1887,7 +1887,7 @@ GammalnInplaceTester = makeBroadcastTester(
op
=
inplace
.
gammaln_inplace
,
expected
=
expected_gammaln
,
good
=
_good_broadcast_unary_gammaln
,
grad
=
_grad_broadcast_unary_gammaln
,
grad
=
None
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
inplace
=
True
,
...
...
@@ -1913,6 +1913,7 @@ PsiInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_unary_psi
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
grad
=
None
,
inplace
=
True
,
skip
=
skip_scipy
)
...
...
@@ -1947,6 +1948,7 @@ Chi2SFInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_unary_chi2sf
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
grad
=
None
,
inplace
=
True
,
skip
=
skip_scipy
,
name
=
'Chi2SF'
)
...
...
@@ -1990,7 +1992,7 @@ J0InplaceTester = makeBroadcastTester(
op
=
inplace
.
j0_inplace
,
expected
=
expected_j0
,
good
=
_good_broadcast_unary_bessel
,
grad
=
_grad_broadcast_unary_bessel
,
grad
=
None
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
inplace
=
True
,
...
...
@@ -2009,7 +2011,7 @@ J1InplaceTester = makeBroadcastTester(
op
=
inplace
.
j1_inplace
,
expected
=
expected_j1
,
good
=
_good_broadcast_unary_bessel
,
grad
=
_grad_broadcast_unary_bessel
,
grad
=
None
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
inplace
=
True
,
...
...
@@ -2029,6 +2031,7 @@ JvInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_binary_bessel
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
grad
=
None
,
inplace
=
True
,
skip
=
skip_scipy
)
...
...
@@ -2060,9 +2063,9 @@ I0InplaceTester = makeBroadcastTester(
op
=
inplace
.
i0_inplace
,
expected
=
expected_i0
,
good
=
_good_broadcast_unary_bessel
,
grad
=
_grad_broadcast_unary_bessel
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
grad
=
None
,
inplace
=
True
,
skip
=
skip_scipy
)
...
...
@@ -2079,9 +2082,9 @@ I1InplaceTester = makeBroadcastTester(
op
=
inplace
.
i1_inplace
,
expected
=
expected_i1
,
good
=
_good_broadcast_unary_bessel
,
grad
=
_grad_broadcast_unary_bessel
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
grad
=
None
,
inplace
=
True
,
skip
=
skip_scipy
)
...
...
@@ -2099,6 +2102,7 @@ IvInplaceTester = makeBroadcastTester(
good
=
_good_broadcast_binary_bessel
,
eps
=
2e-10
,
mode
=
mode_no_scipy
,
grad
=
None
,
inplace
=
True
,
skip
=
skip_scipy
)
...
...
@@ -2160,6 +2164,7 @@ ConjInplaceTester = makeBroadcastTester(
op
=
inplace
.
conj_inplace
,
expected
=
numpy
.
conj
,
good
=
_good_broadcast_unary_normal
,
grad
=
None
,
inplace
=
True
)
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论