问题标签 [lasagne]
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-2.7 - nolearn 0.5 与千层面 0.1 或 0.2 不兼容?
当我要导入时:
我总是收到这个错误
我的 Theano 版本是 0.7.0。
python - 在 Lasagne/Theano 中,我是否需要一个 4d numpy 数组来存储 4d Theano 张量?
我正在用千层面构建一个神经网络,并按照 github 上的示例进行操作。我很好奇如何准确地输入网络。在示例中,他们声明输入层是 4 维,实际上它是一个 theano tensor4。这是否意味着我必须给网络一个 4 维 numpy 数组?这甚至可能吗?您将如何从 4 d 列表向量构建一个?
python - 无法弄清楚我的 Lasagne LSTM 的问题
我很好奇是否有人有任何见解。即使您无法弄清楚问题,我该如何开始调试它。我必须说,我在theano方面并不强。
输入数据是形状为 (10,15,10) 的 numpy 张量
这里是。它在我刚刚将输入连接到密集层时运行。
这是错误。这有点笨拙。
deep-learning - 修改 Theano.tensor.nnet.softmax 中的执行函数
我刚刚开始使用 lasagne 和 Theano 在 Python 上进行一些机器学习。
我正在尝试修改 Theano 中的 softmax 类。我想更改激活函数(softmax)的计算方式。我不想将 e_x 除以 e_x.sum(axis=1),而是将 e_x 除以三个连续数字的总和。
例如,结果将如下所示:
等等...
问题是我不能完全掌握 theano 是如何进行计算的。
这是我的主要问题。只需更改 softmax 类中的 perform() 函数就足够了吗?
这是原始的 perform() 函数:
这是我修改后的 perform()
使用当前代码,当我在千层面中使用 predict 方法时出现“不可排序的类型:int()>str()”错误。
python-2.7 - 在 Ubuntu 14.04 Linux 中使用 CUDNN 运行 Python 千层面
我在一台带有 NVIDIA Corporation GF108 [GeForce GT 430] [10de:0de1] (rev a1) 显卡的 Linux 3.16.0-30-generic #40~14.04.1-Ubuntu x86_64 GNU/Linux 机器上。
我正在尝试在lasagne
启用 GPU 的情况下运行包,但是通过运行
import lasagne.layers.dnn
,我得到了 ImportError:
目前,我已经安装并成功编译了所有cuda_7.0.28_linux
示例以及cudnn-7.0-linux-x64-v3.0-rc
.
我得到这个输出:
我正在使用python 2.7
并习惯pip
从他们的文件中安装所有这些包,这些tar.gz
文件是从他们的存储库下载的。
machine-learning - 具有千层面精度的神经网络
我正在尝试使用 Lasagne 在某些图像上构建一个带有神经网络的二元分类器。训练和验证损失波动很大(并且不会稳定),验证准确度始终为0%
. 1
此外,网络总是像测试集一样预测目标。
我正在使用的网络基本上只是 Lasagne 示例的副本,用于此处找到的mnist数据集,但适用于我509 x 115
的图像,这些图像相当大(400
我想知道这是否是一个问题,以及网络是否可能需要更深/有更多神经元?
对于这种大小的图像,我需要更大的训练集吗?或者我应该看到一些对我的测试集的预测,尽管不准确?
theano - LSTMLayer 甚至在训练之前就产生了 NaN 值
我目前正在尝试用 Lasagne 构建一个 LSTM 网络来预测噪声序列的下一步。我首先训练了 2 个 LSTM 层的堆栈一段时间,但由于发散问题(最终产生 NaN 值),不得不使用非常小的学习率(1e-6)。结果有点令人失望,因为网络生成了平滑的、异相的输入版本。
然后我得出结论,我应该使用比默认设置更好的参数初始化。目标是从一个仅模拟身份的网络开始,因为对于强自相关信号,它应该是对下一步 (x(t) ~ x(t+1)) 的良好初步估计,并稍加一点噪音在它上面。
然后我使用这个 lstm 生成代码来生成以下网络:
问题是,即使没有任何训练,这个网络也会从第一个 LSTM 层产生垃圾值,有时甚至是一堆 NaN:
我不明白为什么,我检查了每个矩阵,它们的值很好,就像我希望它们一样。我什至尝试使用实际的 numpy 数组重新创建每个门激活和生成的隐藏激活,并且它们可以很好地再现输入。我在那里做错了什么??
python - Nolearn/Lasagne 神经网络未开始训练
我正在使用Theano 0.7
,nolearn 0.6adev
并lasagne 0.2.dev1
在 GPU 上训练神经网络(在IPython 3.2.1
笔记本中)。'reduc'
但是,由于第一层(
如果我注释掉第一层,训练将在几秒钟后开始。训练更复杂的网络也不是问题。知道是什么导致了这个问题吗?
编辑:奇怪的是,如果我删除conv4
and conv5
,培训也会在合理的时间内开始。
Edit2:更奇怪的是,如果我在 layer 中将过滤器的大小更改为 10 reduc
,那么训练会在合理的时间内开始。如果在那之后我停止单元格的执行,将此值更改为 1,然后重新执行单元格,则训练进行得很好......
最后我开始使用另一个框架,但如果有人感兴趣,这里是我在 lasagne 用户组上开始的线程的链接。
scikit-learn - 如何使用千层面计算 F1-micro 分数
我在网上找到了这段代码,想测试一下。它确实有效,结果包括训练损失、测试损失、验证分数和时间等。
但是我怎样才能得到 F1-micro 分数呢?另外,如果我在添加以下代码后尝试导入 scikit-learn 来计算 F1:
我收到了这个错误:
ValueError:无法处理多标签指示器和连续多输出的混合
如何基于上述代码实现 F1-micro 计算?
python - 带有 Lasange 的卷积网络 - 图像大小调整
我一直在用 Lasagne 训练一些神经网络和卷积网络,并使用 Python 进行大部分数据/图像预处理。但是,我想将其中的一些合并到我的千层面层中,以使我的代码更加灵活。
是否有可以调整输入图像大小的千层面层?