问题标签 [theano]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 EPD 上安装 Theano (Windows x64)
我正在尝试在 Enthought Python Distribution (EPD) 上安装 Theano,但出现了一个奇怪的错误。这是我的安装的样子:
- 我已将 EPD 安装到
C:\Python27
. - 之后,我已经
pip
使用安装了easy_install pip
- 我通过使用安装了 Theano
pip install Theano
为了测试,我开始
/li>ipython
并输入import theano
. 我收到以下错误:
有谁知道如何让 Theano 与 EPD 一起运行?
numpy - Theano 因 Ubuntu 下的 NumPy Fortran 混淆而失败
我在我的机器上安装了Theano,但鼻子测试因 Numpy/Fortran 相关的错误消息而中断。对我来说,看起来 Numpy 是用与 Theano 不同的 Fortran 版本编译的。我已经重新安装了 Theano ( sudo pip uninstall theano
+ sudo pip install --upgrade --no-deps theano
) 和 Numpy / Scipy ( apt-get install --reinstall python-numpy python-scipy
),但这并没有帮助。
你会推荐什么步骤?
完整的错误信息:
我的研究:
有关错误的安装 SciPy / BuildingGeneral页面undefined symbol: _gfortran_st_write_done'
:
如果您看到错误消息
ImportError: /usr/lib/atlas/libblas.so.3gf: undefined symbol: _gfortran_st_write_done
在构建 SciPy 时,这意味着 NumPy 在构建过程中选择了错误的 Fortran 编译器(例如 ifort)。
使用以下命令重新编译 NumPy:
python setup.py build --fcompiler=gnu95
或任何合适的(见python setup.py build --help-fcompiler
)。
但:
使用的软件版本:
- scipy 0.10.1(scipy.test() 有效)
- NumPy 1.6.2(numpy.test() 有效)
- theano 0.5.0(几个测试失败
undefined symbol: _gfortran_st_write_done'
) - 蟒蛇2.6.6
- Ubuntu 10.10
[更新]
apt-get remove
所以我用剩下的东西从我的系统中删除了 numpy 和 scipy find -name XXX -delete
。
比我用sudo python setpy.py install
.
后来我又进去sudo pip uninstall theano
了sudo pip install --upgrade --no-deps theano
。
错误仍然存在:/
我也尝试了apt-get source
... +apt-get build-dep ...
方法,但是对于我的旧 Ubuntu (10.10),它为 theano 安装了太旧版本的 numpy 和 scipy:ValueError: numpy >= 1.4 is required (detected 1.3.0 from /usr/local/lib/python2.6/dist-packages/numpy/__init__.pyc)
numpy - NumPy 与 Theano?
我想知道:这两个项目是否基本上具有相同的目标——加快 Python 中的数值工作?
有哪些相同点和不同点?
我知道 Theano 并不打算像 NumPyPy 那样重新实现所有 NumPy,但从我所读到的,Theano 已经可以带来一些非常令人印象深刻的加速结果。那么,如果我们可以为 Theano 编写运行速度很快的代码,为什么还需要 NumPyPy?
python - theano 定义重复调用另一个函数的函数?
我的训练功能:
然后从其他地方:
所以我希望这个看起来像
我真的不知道如何开始,因为 theano 对我来说仍然很令人费解。我能够做到这一点,但循环非常具有挑战性。
我有一个模糊的概念,如果我可以将 theano.function 转换为 theano.scan,然后在其周围放置一个外部 theano.function - 那可能会起作用。然而,theano.scan 对我来说仍然很神奇(尽管我尽了最大的努力)。
我怎样才能将小批量的循环合并到一个函数调用中?
更新:
我以为我拥有它!我懂了:
但不幸的是,似乎因为我使用索引来计算给定的批次,我也不能更新它:
更新 2:
这实际上运行,但它的输出很奇怪:
每次我运行它时,我都会得到相同的输出,即使 X & y 每次运行都被初始化为随机值。
python - 如何将 Theano 标志 warn.sum_div_dimshuffle_bug 设置为 False
我正在使用 theano 包来查找 sigmoid 函数的导数,使用交叉熵作为成本。这是我的代码:
当我运行我的代码时,我收到以下错误:
但我不知道该怎么做。我试过这个:
但它在警告时给了我一个错误,说它不被识别为变量。
python - Theano 安装警告:未检测到 g++
安装 Theano 后,我尝试运行它,但收到以下错误消息:
为什么?
python - 如何在 Theano 中分配/更新张量共享变量的子集?
在 中编译函数时theano
,可以通过指定来更新共享变量(比如 X)updates=[(X, new_value)]
。现在我正在尝试仅更新共享变量的子集:
代码会引发错误“更新目标必须是共享变量”,我猜这意味着更新目标不能是非共享变量。那么有没有办法编译一个函数来更新共享变量的子集?
python - Theano Scan Op 梯度中的断开输入
我有许多不同大小的项目。对于这些组中的每一个,一个(已知的)项目是“正确的”项目。有一个功能可以为每个项目分配一个分数。这会产生一个项目分数的平面向量,以及告诉索引每个组从哪里开始以及它有多大的向量。我希望对每组中的分数进行“softmax”操作以分配项目概率,然后对正确答案概率的日志求和。这是一个更简单的版本,我们只返回正确答案的分数,没有 softmax 和对数。
这正确地计算了输出,但是当我尝试获取关于参数的梯度时W
,我得到(路径缩写):
现在,groupSizes
是恒定的,因此没有理由需要对其进行任何渐变。通常,您可以通过抑制DisconnectedInputError
s 或告诉 TheanogroupSizes
在调用中将其视为常量来处理此问题T.grad
(请参见示例脚本的最后几行)。但似乎没有任何方法可以将这些事情传递T.grad
给ScanOp
.
我错过了什么吗?这是一种让梯度计算通过 ScanOp 工作的方法吗?
python - 在 Windows 7 上导入 Theano 时出现编译错误
我正在尝试在 Windows 7 上使用 Theano。我能够安装 Theano 并导入 Theano,但是在看到有关未安装 C 编译器的警告后,我还安装了 mingw。现在,当我尝试“import theano”时,出现编译错误。该消息相当长,但相关部分(据我所知)如下所示:
稍后在错误消息中:
知道我做错了什么吗?compile 语句中引用的文件不存在,所以这可能是问题的一部分,但它没有解释为什么 Theano 认为它们应该在那里。
enthought - 使用 EPD Canopy 链接到 python 库
摘要:我正在尝试安装theano python包,而theano安装在我的EPD Canopy安装中找不到“-lpython2.7”。
更多细节:最近我在 OS X 10.6.8 中安装了 Enthought EPD Canopy python 发行版(64 位学术版)。接下来我通过“easy_install pip”安装了 pip。
接下来我通过“sudo pip install theano”安装了 Theano。安装看起来不错,但随后 python -c "import theano" 失败。完整的输出在https://gist.github.com/anonymous/5548936,但似乎要点是:
使用以下命令行编译时出现问题:
================================
ld: 找不到 -lpython2.7 的库 collect2: ld 返回 1 个退出状态
我与theano google group 进行了一些讨论,我得到的主要信息是寻找我找不到的“libpython2.7.so”。我检查了/Users/rkeisler/Library/Enthought/Canopy_64bit/User/lib/。里面是 python2.7/os.py 和 python2.7/site-packages,但没有“libpython*”文件。
我还对 libpython* 文件进行了更彻底的检查。我能找到的唯一东西是:
最后,在 EPD Canopy 软件包列表中,我看到列出了“libpython”。但是,当我尝试使用 Canopy 包管理器安装 libpython 时,“libpython”没有出现。它不是一个可用的包。我不知道从这里去哪里。