问题标签 [paddle-paddle]

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.

0 投票
2 回答
589 浏览

c++ - 如何解决 Paddle v0.8.0b 上的“cudaSuccess = err (0 vs. 8)”错误?

我已经paddlepaddle使用来自https://github.com/baidu/Paddle/releases/download/V0.8.0b1/paddle-gpu-0.8.0b1-Linux.deb.deb的文件安装了

NVIDIA Accelerated Graphics Driver我在 4 GTX 1080 的机器上安装了 CUDA 8.0 和 cudnn v5.1 :

我已经设置了shell变量:

一切cuda都很好,因为我已经运行了所有NVIDIA_CUDA-8.0_Samples并且他们“通过”了所有测试。

里面的quick_startdemo代码Paddle/demo/quick_start也运行流畅,没有报错。

但是当我尝试image_classification从 Paddle github repo 运行演示时,我收到了一个invalid device function错误。有没有办法解决这个问题?

完整的追溯:

根据 git repo 的 issue #158 ,这个问题应该在 #170 中得到解决,并且支持 GTX 1080 和 CUDA 8.0,但是在访问 GPU 函数时仍然会抛出错误。(抱歉不能添加超过 2 个信誉低的链接)

有谁知道如何解决这个问题并安装它以便image_classification可以运行?


我也尝试过从源代码编译+安装,并且在quick_start演示运行顺利时抛出了同样的错误。

0 投票
1 回答
939 浏览

package - 如何在ubuntu 16.04上安装百度的PaddlePaddle?

我最近想在 ubuntu 16 上安装 PaddlePaddle,但是缺少一个依赖项,该软件包需要 libgflags2,我在 Ubuntu 的规范存储库上找不到这个库,我找到了 libgflags2v5,所以我对 paddle 的包依赖项进行了一些尝试并更改了“libgflags2”到“libgflags2v5”,安装成功,但是我用这个命令包崩溃了

桨火车--帮助

后来我了解到该软件包在 ubuntu 14.04 上运行良好,但不幸的是我无法降级到该版本,我必须使用版本 16,那么我该如何处理呢?

编辑:
当我运行这个命令

桨火车--帮助

我收到这个错误

I1014 10:38:32.837656 3658 Util.cpp:151] 命令行:/usr/bin/../opt/paddle/bin/paddle_trainer --help paddle_trainer: 警告:SetUsageMes​​sage()在抛出一个实例后
从未调用终止调用
std::bad_alloc'
what(): std::bad_alloc
* 在 1476434312(unix 时间)中止 如果您使用的是 GNU date,请尝试“date -d @1476434312”
PC:@0x7f8e7ed14418 gsignal
SIGABRT (@0x3e800000e4a) 由 PID 3658 (TID 0x7f8e80e68740) 从 PID 3658 接收;stack trace: *
@ 0x7f8e8075e3d0 (unknown)
@ 0x7f8e7ed14418 gsignal
@ 0x7f8e7ed1601a abort
@ 0x7f8e7f65684d __gnu_cxx::__verbose_terminate_handler()
@ 0x7f8e7f6546b6 (unknown)
@ 0x7f8e7f654701 std::terminate()
@ 0x7f8e7f654919 __cxa_throw
@ 0x7f8e7f654ebc operator new()
@ 0x7f8e7f94ee6d (unknown)
@ 0x7f8e7f94f619 (未知)
@ 0x7f8e7f94f830 (未知)
@ 0x7f8e7f95629a google::GetAllFlags()
@ 0x7f8e7f95d707 (未知)
@ 0x7f8e7f95dda2 google::ShowUsageWithFlagsRestrict()
@ 0x7f8e7f95e56f google::HandleCommandLineHelpFlags()
@ 0x7f8e7f9554db (unknown)
@ 0x74a8f5 paddle::ParseCommandLineFlags()
@ 0x748341 paddle::initMain()
@ 0x509a3b main
@ 0x7f8e7ecff830 __libc_start_main
@ 0x515455 (unknown)
@ 0x0 (未知)/usr/bin/paddle:第 81 行:3658
中止(核心转储)${DEBUGGER} $MYDIR/../opt/paddle/bin/paddle_trainer ${@:2}

0 投票
0 回答
181 浏览

python - 如何加载矩阵以更改 seqToseq 演示中的注意力层?- 桨

在尝试复制Incorporating Discrete Translation Lexicons into Neural MT中的第 3.1 节时paddle-paddle

我试图有一个静态矩阵,我需要将其加载到seqToseq训练管道中,例如:

seqToseq_net演示中,这个矩阵需要乘以gru_decoder_with_attention. 原始演示:

目标是通过将注意力层与静态矩阵相乘来影响注意力层:

我尝试过查看代码Paddle/python/trainer_config_helps浏览所有演示代码,并且我还询问了PaddlePaddle 的 gitter。但是我找不到如何加载不需要在训练过程中更新并与 Paddle 层之一交互的自定义​​静态矩阵。

如何加载矩阵以更改 seqToseq 演示中的注意力层?

在上面的例子中some_sort_of_layer应该是什么?some_sort_of_operation_layer

0 投票
0 回答
558 浏览

python - 如何在 Paddle 的 SeqToSeq 演示中向 RNN 编码器-解码器网络添加层?

paddle-paddle 我正在尝试在文本生成演示中向 RNN SeqToSeq 网络添加额外的编码器和解码器层,例如 GNMT 论文:https ://arxiv.org/pdf/1609.08144v2.pdf

在此处输入图像描述

在代码点(https://github.com/baidu/Paddle/blob/master/demo/seqToseq/seqToseq_net.py#L100),我添加了一个附加层:

而且因为第二层编码器的输出不再是一个序列,我不得不在https://github.com/baidu/Paddle/blob/master/demo/seqToseq/seqToseq_net.py#L131is_sequence取消设置标志,即:

我尝试过的完整代码位于https://gist.github.com/alvations/c86c82d935ac6ef37c472d19232ebbb6

如何在 Paddle 的 SeqToSeq 演示中向 RNN 编码器-解码器网络添加层?

还有一个相关的问题,如果我要在编码器处添加一个层,是否必须在解码器端也添加一个层?

还有一点就是顺序问题。经过多层RNN之后,序列就不存在了,可以吗?还是我错误地堆叠图层?


已编辑

我已经尝试过这样的事情,它训练并保存模型,我能够解码(即生成)新的翻译,但不知何故,分数比使用单层双向 GRU 低得多。

大部分代码与 Paddle 中的演示代码相同,但我已经添加了这些。

在编码器:

在解码器上:

我仍然不确定我是否正确堆叠图层。

0 投票
0 回答
98 浏览

python - 为什么 Paddle 在将 dense_vector_sequence 输入到 SeqToseq 模型时会抛出错误?

我正在尝试使用paddle-paddlehttps://github.com/baidu/Paddle)来训练(编码器-解码器)序列到序列模型以进行 POS 标记。

但是,我不会使用单词索引的一次性嵌入作为输入,而是使用我使用创建的虚构单词向量numpy。我已将单词向量添加到函数中的settings变量中:hook()dataprovider.py

在遍历句子及其 POS 标签时,我在https://github.com/alvations/rowrow/blob/master/dataprovider.py#L66上生成了这些虚构的向量而不是单词索引

在序列到序列模型中,由于输入(aka data_layer())不是 one-hot 嵌入,因此我不会使用嵌入层来包裹 one-hot 向量。但相反,我将使用全连接层将向量输入压缩到编码器大小,即https://github.com/alvations/rowrow/blob/master/seqToseq_net.py#L49

通常,嵌入层是这样的:

神经网络计算图似乎是正确的,因为它在运行train.sh.

但是在获取下一批时会引发错误:

我试过在 Paddle 的gitter.im上询问,但没有任何回应。

有人知道吗:

  • 错误是什么意思?
  • 如何将密集向量序列输入 Paddle 中的 seqToseq 模型?
  • 为什么 Paddle 在将 dense_vector_sequence 输入到 SeqToseq 模型时会抛出此错误?
0 投票
2 回答
1200 浏览

tensorflow - 比较 TensorFlow 和 PaddlePaddle 的深度学习框架

我想研究深度学习的研究,但是不知道在TensorFlow和PaddlePaddle之间我应该选择哪个框架。谁能对比一下这两个框架?哪一个更好?尤其是CPU的运行效率

0 投票
1 回答
485 浏览

gpu - How to deploy a PaddlePaddle Docker container with GPU support?

There're slight discrepancies in the documentation Docker deployment for PaddlePaddle as compared to the documentation to manually install PaddlePaddle from source.

The documentation from the Docker deployment states after pulling the container from Docker Hub:

the environment variables should be set and included in the docker run, i.e.:

The export commands seem to be looking for libcuda* and libnvidia* in /usr/lib64/ but in the documentation from source compilation, the location of lib64/ should be in /usr/local/cuda/lib64.

Regardless, the location of lib64/ can be found with:

Additionally, the export command is looking for libnvidia* which doesn't seem exist anywhere in /usr/local/cuda/, except for libnvidia-ml.so:

I suppose the correct files the CUDA_SO is looking for are

  • /usr/local/cuda/lib64/libcudart.so.8.0
  • /usr/local/cuda/lib64/libcudart.so.7.5

But is that right? What is the environmental variable(s) for CUDA_SO to deploy PaddlePaddle with GPU support?

Even after setting the libcudart* variable, the docker container doesn't seem to find the GPU driver, i.e.:

How to deploy a PaddlePaddle Docker container with GPU support?


Also, in Chinese: https://github.com/PaddlePaddle/Paddle/issues/1764

0 投票
0 回答
1376 浏览

python - 无法在 Redhat 7 或 ubuntu 中安装 swig 和 swig 解码器

我已经通过以下方法安装了 swig 和 swig 解码器包:

痛饮:百胜安装痛饮

Swig 解码器:

克隆https://github.com/PaddlePaddle/DeepSpeech/

cd 进入解码器/swig/ 并运行 ./setup.sh

问题:当我在 python 中导入 swig 解码器库时,它显示以下错误:

0 投票
1 回答
93 浏览

paddle-paddle - 以下错误的原因是什么?

NotImplementedError:重载函数“IVector_create”的参数数量或类型错误。

可能的 C/C++ 原型有:

0 投票
1 回答
1055 浏览

javascript - 通过 Javascript 进行的乒乓游戏:玩家划桨保持在画布区域内

我正在教孩子们在 p5 编辑器中通过 Javascript 设计和编码 Pong 游戏的基本和最简单的方法。我只是对设计的初始阶段有疑问。

代码如下:

第一个rect函数是针对AI控制的电脑桨。第二个 rect 函数用于球。第三个 rect 函数用于玩家桨。

我正在使用 mouseY 进行垂直移动,但桨从尺寸为 400*400 的画布中向画布的下部移动。

在不使用任何函数的情况下,通过简单地加/减此代码中涉及的各种数字坐标,如何防止玩家桨移出画布?