Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
pytensor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
testgroup
pytensor
Commits
16683490
提交
16683490
authored
11月 18, 2013
作者:
Pascal Lamblin
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #1611 from nouiz/release
Release preparation
上级
cbaf5cc0
467be44c
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
58 行增加
和
10 行删除
+58
-10
.mailmap
.mailmap
+9
-0
NEWS_DEV.txt
NEWS_DEV.txt
+0
-0
install.txt
doc/install.txt
+4
-0
sharedvalue.py
theano/compile/sharedvalue.py
+4
-1
test_builders.py
theano/compile/tests/test_builders.py
+2
-2
basic_scipy.py
theano/scalar/basic_scipy.py
+0
-0
blas.py
theano/tensor/blas.py
+24
-1
opt.py
theano/tensor/opt.py
+6
-4
test_basic.py
theano/tensor/tests/test_basic.py
+9
-2
没有找到文件。
.mailmap
浏览文件 @
16683490
...
@@ -8,7 +8,9 @@
...
@@ -8,7 +8,9 @@
# # This file is up-to-date if the command git log --format="%aN <%aE>" | sort -u
# # This file is up-to-date if the command git log --format="%aN <%aE>" | sort -u
# # gives no duplicates.
# # gives no duplicates.
Jan Schlüter <github@jan-schlueter.de> f0k <github@jan-schlueter.de>
Rami Al-Rfou' <rmyeid@gmail.com> Rami Al-Rfou <rmyeid@gmail.com>
Rami Al-Rfou' <rmyeid@gmail.com> Rami Al-Rfou <rmyeid@gmail.com>
Arnaud Bergeron <abergeron@gmail.com> <abergeron@gmail.com>
<abergeron@gmail.com> <anakha@kami.(none)>
<abergeron@gmail.com> <anakha@kami.(none)>
David Warde-Farley <wardefar@iro.umontreal.ca> David Warde-Farley <dwf@cs.toronto.edu>
David Warde-Farley <wardefar@iro.umontreal.ca> David Warde-Farley <dwf@cs.toronto.edu>
David Warde-Farley <wardefar@iro.umontreal.ca> David Warde Farley <dwf@cs.toronto.edu>
David Warde-Farley <wardefar@iro.umontreal.ca> David Warde Farley <dwf@cs.toronto.edu>
...
@@ -25,6 +27,11 @@ Francois Savard <devnull@localhost> fsavard <devnull@localhost>
...
@@ -25,6 +27,11 @@ Francois Savard <devnull@localhost> fsavard <devnull@localhost>
# 2 onze <onzeonline@gmail.com>
# 2 onze <onzeonline@gmail.com>
# 25 projects@lgcm <projects@lgcm>
# 25 projects@lgcm <projects@lgcm>
# 1 tutorial/debug_faq.txt <devnull@localhost>
# 1 tutorial/debug_faq.txt <devnull@localhost>
Bogdan Budescu <bbudescu@gmail.com> bbudescu <bbudescu@gmail.com>
Sebastian Berg <sebastian@sipsolutions.net> seberg <sebastian@sipsolutions.net>
Huy Nguyen <huy@huyng.com> huyng <huy@huyng.com>
Wei Li <kuantkid@gmail.com> kuantkid <kuantkid@gmail.com>
Ethan Buchman <ebuchman@uoguelph.ca> ebuchman <ebuchman@uoguelph.ca>
Frederic Bastien <nouiz@nouiz.org> Frederic Bastien <bastienf@briaree1.rqchp.qc.ca>
Frederic Bastien <nouiz@nouiz.org> Frederic Bastien <bastienf@briaree1.rqchp.qc.ca>
Frederic Bastien <nouiz@nouiz.org> Frederic Bastien <bastienf@iro.umontreal.ca>
Frederic Bastien <nouiz@nouiz.org> Frederic Bastien <bastienf@iro.umontreal.ca>
Frederic Bastien <nouiz@nouiz.org> Frédéric Bastien <nouiz@nouiz.org>
Frederic Bastien <nouiz@nouiz.org> Frédéric Bastien <nouiz@nouiz.org>
...
@@ -55,6 +62,7 @@ James Bergstra <james.bergstra@gmail.com> james@mackie <james@mackie>
...
@@ -55,6 +62,7 @@ James Bergstra <james.bergstra@gmail.com> james@mackie <james@mackie>
James Bergstra <james.bergstra@gmail.com> james@x40.unstable <james@x40.unstable>
James Bergstra <james.bergstra@gmail.com> james@x40.unstable <james@x40.unstable>
James Bergstra <james.bergstra@gmail.com> test_rng_mrg.py <devnull@localhost>
James Bergstra <james.bergstra@gmail.com> test_rng_mrg.py <devnull@localhost>
John Salvatier <jsalvatier@gmail.com> jsalvatier <jsalvatier@gmail.com>
John Salvatier <jsalvatier@gmail.com> jsalvatier <jsalvatier@gmail.com>
John Salvatier <jsalvatier@gmail.com> john salvatier <jsalvatier@gmail.com>
Joseph Turian <turian@iro.umontreal.ca> Joseph Turian <turian@gmail.com>
Joseph Turian <turian@iro.umontreal.ca> Joseph Turian <turian@gmail.com>
Joseph Turian <turian@iro.umontreal.ca> turian@grenat.iro.umontreal.ca <turian@grenat.iro.umontreal.ca>
Joseph Turian <turian@iro.umontreal.ca> turian@grenat.iro.umontreal.ca <turian@grenat.iro.umontreal.ca>
Joseph Turian <turian@iro.umontreal.ca> turian@lgcm <turian@lgcm>
Joseph Turian <turian@iro.umontreal.ca> turian@lgcm <turian@lgcm>
...
@@ -83,3 +91,4 @@ Sander Dieleman <sanderdieleman@gmail.com> benanne <sanderdieleman@gmail.com>
...
@@ -83,3 +91,4 @@ Sander Dieleman <sanderdieleman@gmail.com> benanne <sanderdieleman@gmail.com>
Xavier Glorot <glorotxa@iro.umontreal.ca> glorotxa <glorotxa@iro.umontreal.ca>
Xavier Glorot <glorotxa@iro.umontreal.ca> glorotxa <glorotxa@iro.umontreal.ca>
Xavier Glorot <glorotxa@iro.umontreal.ca> glorotxa@timide.iro.umontreal.ca <glorotxa@timide.iro.umontreal.ca>
Xavier Glorot <glorotxa@iro.umontreal.ca> glorotxa@timide.iro.umontreal.ca <glorotxa@timide.iro.umontreal.ca>
Yoshua Bengio <bengioy@iro.umontreal.ca> bengioy@bengio-mac.local <bengioy@bengio-mac.local>
Yoshua Bengio <bengioy@iro.umontreal.ca> bengioy@bengio-mac.local <bengioy@bengio-mac.local>
Sina Honari <honaris@iro.umontreal.ca> SinaHonari <sina2222@gmail.com>
NEWS_DEV.txt
浏览文件 @
16683490
差异被折叠。
点击展开。
doc/install.txt
浏览文件 @
16683490
...
@@ -1001,6 +1001,10 @@ instructions in :ref:`windows_bleeding_edge`.
...
@@ -1001,6 +1001,10 @@ instructions in :ref:`windows_bleeding_edge`.
Windows installer for AnacondaCE
Windows installer for AnacondaCE
################################
################################
.. note::
This don't work with current Anaconda. Help needed to repair this.
If you installed AnacondaCE, the simplest way to install and configure
If you installed AnacondaCE, the simplest way to install and configure
Theano is to download and execute this `Windows installer
Theano is to download and execute this `Windows installer
for Theano on AnacondaCE for Windows
for Theano on AnacondaCE for Windows
...
...
theano/compile/sharedvalue.py
浏览文件 @
16683490
...
@@ -201,7 +201,10 @@ def shared(value, name=None, strict=False, allow_downcast=None, **kwargs):
...
@@ -201,7 +201,10 @@ def shared(value, name=None, strict=False, allow_downcast=None, **kwargs):
' using
\'
theano.shared(..., borrow=True)
\'
'
,)
' using
\'
theano.shared(..., borrow=True)
\'
'
,)
raise
raise
raise
TypeError
(
'No suitable SharedVariable constructor could be found'
,
raise
TypeError
(
'No suitable SharedVariable constructor could be found.'
' Are you sure all kwargs are supported?'
' We do not support the parameter dtype or type.'
' value="
%
s". parameters="
%
s"'
%
(
value
,
kwargs
))
(
value
,
kwargs
))
shared
.
constructors
=
[]
shared
.
constructors
=
[]
...
...
theano/compile/tests/test_builders.py
浏览文件 @
16683490
...
@@ -17,7 +17,7 @@ class T_OpFromGraph(unittest.TestCase):
...
@@ -17,7 +17,7 @@ class T_OpFromGraph(unittest.TestCase):
x
,
y
,
z
=
T
.
matrices
(
'xyz'
)
x
,
y
,
z
=
T
.
matrices
(
'xyz'
)
e
=
x
+
y
*
z
e
=
x
+
y
*
z
op
=
OpFromGraph
([
x
,
y
,
z
],
[
e
],
mode
=
'FAST_RUN'
)
op
=
OpFromGraph
([
x
,
y
,
z
],
[
e
],
mode
=
'FAST_RUN'
)
f
=
op
(
x
,
y
,
z
)
-
op
(
y
,
z
,
x
)
#
(1+3*5=array of 16) - (3+1*5=array of 8)
f
=
op
(
x
,
y
,
z
)
-
op
(
y
,
z
,
x
)
#
(1+3*5=array of 16) - (3+1*5=array of 8)
fn
=
function
([
x
,
y
,
z
],
f
)
fn
=
function
([
x
,
y
,
z
],
f
)
xv
=
numpy
.
ones
((
2
,
2
),
dtype
=
config
.
floatX
)
xv
=
numpy
.
ones
((
2
,
2
),
dtype
=
config
.
floatX
)
yv
=
numpy
.
ones
((
2
,
2
),
dtype
=
config
.
floatX
)
*
3
yv
=
numpy
.
ones
((
2
,
2
),
dtype
=
config
.
floatX
)
*
3
...
@@ -47,7 +47,7 @@ class T_OpFromGraph(unittest.TestCase):
...
@@ -47,7 +47,7 @@ class T_OpFromGraph(unittest.TestCase):
def
test_grad
(
self
):
def
test_grad
(
self
):
x
,
y
,
z
=
T
.
matrices
(
'xyz'
)
x
,
y
,
z
=
T
.
matrices
(
'xyz'
)
e
=
x
+
y
*
z
e
=
x
+
y
*
z
op
=
OpFromGraph
([
x
,
y
,
z
],
[
e
],
mode
=
'FAST_RUN'
,
grad_depth
=
2
)
op
=
OpFromGraph
([
x
,
y
,
z
],
[
e
],
mode
=
'FAST_RUN'
,
grad_depth
=
2
)
f
=
op
(
x
,
y
,
z
)
f
=
op
(
x
,
y
,
z
)
f
=
f
-
T
.
grad
(
T
.
sum
(
f
),
y
)
f
=
f
-
T
.
grad
(
T
.
sum
(
f
),
y
)
fn
=
function
([
x
,
y
,
z
],
f
)
fn
=
function
([
x
,
y
,
z
],
f
)
...
...
theano/scalar/basic_scipy.py
浏览文件 @
16683490
差异被折叠。
点击展开。
theano/tensor/blas.py
浏览文件 @
16683490
...
@@ -128,10 +128,15 @@ import logging
...
@@ -128,10 +128,15 @@ import logging
import
os
import
os
import
sys
import
sys
import
time
import
time
import
warnings
import
numpy
import
numpy
import
numpy.distutils
import
numpy.distutils
import
numpy.distutils.system_info
import
numpy.distutils.system_info
try
:
import
numpy.distutils.__config__
except
ImportError
:
pass
from
theano.configparser
import
config
,
AddConfigVar
,
StrParam
from
theano.configparser
import
config
,
AddConfigVar
,
StrParam
from
theano.gof
import
(
utils
,
Op
,
view_roots
,
DestroyHandler
,
from
theano.gof
import
(
utils
,
Op
,
view_roots
,
DestroyHandler
,
...
@@ -156,8 +161,26 @@ _logger = logging.getLogger('theano.tensor.blas')
...
@@ -156,8 +161,26 @@ _logger = logging.getLogger('theano.tensor.blas')
# Otherwise, we give an optimization warning for no reason in some cases.
# Otherwise, we give an optimization warning for no reason in some cases.
def
default_blas_ldflags
():
def
default_blas_ldflags
():
try
:
try
:
if
hasattr
(
numpy
.
distutils
,
'__config__'
):
#If the old private interface is available use it as it
#don't print information to the user.
blas_info
=
numpy
.
distutils
.
__config__
.
blas_opt_info
else
:
#We need to catch warnings as in some cases NumPy print
#stuff that we don't want the user to see like this:
"""
SOMEPATH/Canopy_64bit/User/lib/python2.7/site-packages/numpy/distutils/system_info.py:564: UserWarning: Specified path /home/vagrant/src/master-env/lib is invalid.
warnings.warn('Specified path
%
s is invalid.'
%
d)
"""
#I'm not able to remove all printed stuff
with_context
=
warnings
.
catch_warnings
(
record
=
True
)
with_context
.
__enter__
()
try
:
blas_info
=
numpy
.
distutils
.
system_info
.
get_info
(
"blas_opt"
)
finally
:
with_context
.
__exit__
(
None
,
None
,
None
)
# If we are in a EPD installation, mkl is available
# If we are in a EPD installation, mkl is available
blas_info
=
numpy
.
distutils
.
system_info
.
get_info
(
"blas_opt"
)
if
"EPD"
in
sys
.
version
:
if
"EPD"
in
sys
.
version
:
use_unix_epd
=
True
use_unix_epd
=
True
if
sys
.
platform
==
'win32'
:
if
sys
.
platform
==
'win32'
:
...
...
theano/tensor/opt.py
浏览文件 @
16683490
...
@@ -1075,10 +1075,12 @@ class ShapeFeature(object):
...
@@ -1075,10 +1075,12 @@ class ShapeFeature(object):
# an element of o_shapes is either None or a tuple
# an element of o_shapes is either None or a tuple
# elements of the tuple can be either strings, or ints
# elements of the tuple can be either strings, or ints
if
len
(
o_shapes
)
!=
len
(
node
.
outputs
):
if
len
(
o_shapes
)
!=
len
(
node
.
outputs
):
raise
Exception
(
'len(o_shapes) = '
raise
Exception
(
+
str
(
len
(
o_shapes
))
'The infer_shape method for the Op "
%
s" returned a list '
+
+
' != len(node.outputs) = '
'with the wrong number of element: len(o_shapes) =
%
d '
+
+
str
(
len
(
node
.
outputs
)))
' != len(node.outputs) =
%
d'
%
(
str
(
node
.
op
),
len
(
o_shapes
),
len
(
node
.
outputs
)))
# Ensure shapes are in 'int64'. This is to make sure the assert
# Ensure shapes are in 'int64'. This is to make sure the assert
# found in the `local_useless_subtensor` optimization does not fail.
# found in the `local_useless_subtensor` optimization does not fail.
...
...
theano/tensor/tests/test_basic.py
浏览文件 @
16683490
...
@@ -188,7 +188,11 @@ def safe_make_node(op, *inputs):
...
@@ -188,7 +188,11 @@ def safe_make_node(op, *inputs):
def
makeTester
(
name
,
op
,
expected
,
checks
=
None
,
good
=
None
,
bad_build
=
None
,
def
makeTester
(
name
,
op
,
expected
,
checks
=
None
,
good
=
None
,
bad_build
=
None
,
bad_runtime
=
None
,
grad
=
None
,
mode
=
None
,
grad_rtol
=
None
,
bad_runtime
=
None
,
grad
=
None
,
mode
=
None
,
grad_rtol
=
None
,
eps
=
1e-10
,
skip
=
False
,
test_memmap
=
True
):
eps
=
1e-10
,
skip
=
False
,
test_memmap
=
True
,
check_name
=
True
):
"""
:param check_name:
Use only for tester that aren't in Theano.
"""
if
checks
is
None
:
if
checks
is
None
:
checks
=
{}
checks
=
{}
if
good
is
None
:
if
good
is
None
:
...
@@ -206,12 +210,14 @@ def makeTester(name, op, expected, checks=None, good=None, bad_build=None,
...
@@ -206,12 +210,14 @@ def makeTester(name, op, expected, checks=None, good=None, bad_build=None,
_bad_build
,
_bad_runtime
,
_grad
=
bad_build
,
bad_runtime
,
grad
_bad_build
,
_bad_runtime
,
_grad
=
bad_build
,
bad_runtime
,
grad
_mode
,
_grad_rtol
,
_eps
,
skip_
=
mode
,
grad_rtol
,
eps
,
skip
_mode
,
_grad_rtol
,
_eps
,
skip_
=
mode
,
grad_rtol
,
eps
,
skip
_test_memmap
=
test_memmap
_test_memmap
=
test_memmap
_check_name
=
check_name
class
Checker
(
unittest
.
TestCase
):
class
Checker
(
unittest
.
TestCase
):
op
=
staticmethod
(
_op
)
op
=
staticmethod
(
_op
)
expected
=
staticmethod
(
_expected
)
expected
=
staticmethod
(
_expected
)
checks
=
_checks
checks
=
_checks
check_name
=
_check_name
good
=
_good
good
=
_good
bad_build
=
_bad_build
bad_build
=
_bad_build
bad_runtime
=
_bad_runtime
bad_runtime
=
_bad_runtime
...
@@ -223,7 +229,8 @@ def makeTester(name, op, expected, checks=None, good=None, bad_build=None,
...
@@ -223,7 +229,8 @@ def makeTester(name, op, expected, checks=None, good=None, bad_build=None,
def
setUp
(
self
):
def
setUp
(
self
):
# Verify that the test's name is correctly set.
# Verify that the test's name is correctly set.
# Some tests reuse it outside this module.
# Some tests reuse it outside this module.
eval
(
self
.
__class__
.
__module__
+
'.'
+
self
.
__class__
.
__name__
)
if
self
.
check_name
:
eval
(
self
.
__class__
.
__module__
+
'.'
+
self
.
__class__
.
__name__
)
# We keep a list of temporary files created in add_memmap_values,
# We keep a list of temporary files created in add_memmap_values,
# to remove them at the end of the test.
# to remove them at the end of the test.
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论