问题标签 [rapids]

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 投票
1 回答
857 浏览

python - Python Nvidia 在使用 cuml 训练机器学习模型时出现内存错误

我将 python 3 与 nvidia Rapids 一起使用,以便使用 cuml 库和 GPU 加速机器学习训练。

我的脚本还使用 keras 和 GPU 训练(通过 tf),当我到达尝试使用 CUML 的阶段时,我得到了内存错误。我怀疑这是因为 TF 没有释放 GPU 内存(查看 nvidia-smi)我看到所有内存都已分配。

这是我用来训练 cuml 模型的代码

这是我得到的错误

[2] 调用 cuMemAlloc 导致 CUDA_ERROR_OUT_OF_MEMORY

encoded_data 和 y_train 是 numpy 数组,encoded_data 是 n*m 浮点数组,y_train 是 n*1 个作为标签的整数向量,在使用 sklearn 逻辑回归进行训练时,两者都可以正常工作。

我怎么能: 1.使用相同的 GPU(首选)而不丢失我训练的所有 tf​​ 模型(我有更多的内存,然后 tf 模型在实践中需要,但 tf 进程仍然占用所有内存) 2.使用我的用于 CUML 计算的第二个 GPU(我找不到选择哪个 GPU 来运行 RAPIDS CUML 模型训练的方法。

0 投票
3 回答
227 浏览

rapids - 替换 C 列中的值,其中 A 列中的值为 x

问题

在将空值替换为布尔值的过程中,我们在列中找到空值fireplace_count

如果fireplaceflagvalue 是Falsevaluefireplace_count null应该替换为0

为熊猫而写

0 投票
3 回答
906 浏览

rapids - 如何在 GPU DataFrame-cuDF 中应用 if 条件来过滤 DataFrame?

我想根据列值过滤 cuDF 数据框,然后根据指定的条件创建一个新列。基本上,我如何在 cuDF 中应用以下内容?

df.loc[df.column_name condition, 'new column name'] = 'value if condition is met'

0 投票
1 回答
472 浏览

python - 如何将 dask.dataframe 预缓存到所有工作人员和分区以减少通信需求

有时它很适合dask.dataframe.map_partitions用于合并等操作。在某些情况下,在 aleft_df和 a right_dfusing之间进行合并时map_partitions,我想在执行合并之前进行预缓存right_df,以减少网络开销/本地改组。有什么明确的方法可以做到这一点吗?感觉应该可以使用 , 或其他一些智能广播中的一个或client.scatter(the_df)组合client.run(func_to_cache_the_df)

left_df在对一个大得多的大的right_df(本质上是一个查找表)进行左连接的情况下,这一点尤为突出。感觉这right_df应该能够读入内存并持久化/分散到合并前的所有工作人员/分区,以减少对跨分区通信的需求,直到最后。我怎样才能分散right_df成功地做到这一点?

以下是使用 cuDF 和 Dask 进行这种不平衡合并的一个较小示例(但从概念上讲,这与 pandas 和 Dask 相同):

0 投票
2 回答
282 浏览

python - 相当于 cuDF 中的 pd.Series.str.slice() 和 pd.Series.apply()

我想将以下代码(在 pandas 中运行)转换为在 cuDF 中运行的代码。

来自被操作系列的样本数据.head()被插入到第 3 个代码单元格中的 OG 代码中——应该能够复制/粘贴运行。

熊猫中的原始代码

被操纵的数据

调整代码以从该示例数据开始

这是使用上面提供的数据而不是整个数据框时代码的外观。

根据尝试转换时遇到的错误,此问题属于系列级别,因此将下面的单元格转换为在 cuDF 中执行应该可以解决问题。

预期变化(输出)

df_train['census_tractnumber'].head()

df_train['block_number'].head()

0 投票
1 回答
1150 浏览

series - 如何使用 cudf.Series.applymap()?

有人可以提供一些如何applymap在 cuDF 系列上使用该方法的示例吗?

以下是从文档中复制的,这里是文档的链接。

0 投票
1 回答
66 浏览

pandas - 用什么代替 pandas.Series.filter?

熊猫-> cuDF

将一些为 pandas 编写的 python 转换为在 Rapids 上运行

熊猫

有人知道用什么代替pandas.Series.filter相同的结果cuDF吗?

0 投票
1 回答
75 浏览

rapids - 将 cuDF 数据框列转换为“真”/“假”值的 1 或 0

我正在使用 RAPIDS(0.9 版本)docker 容器。如何使用 RAPIDS cuDF 执行以下操作?

df['new_column'] = df['column_name'] > condition df[['new_column']] *= 1

0 投票
1 回答
1397 浏览

python - 在 Ubuntu 上安装 CUDA + RAPIDS - “没有可用的内核映像”

编辑:在下面的评论中解决。

我正在尝试开始使用 CUDA + RAPIDS。为此,我使用 Ubuntu 18.04 和 NVIDIA Tesla K80 在 Google Compute 上启动了一个 VM。以下是我为了安装软件而运行的命令:

然后我尝试使用 cudf 而不是 pandas 运行一点 Python,我收到以下错误:

我不确定我错过了什么,因为我已经阅读了许多指南,这些指南都说:“你只需要运行这些少数命令,你就可以开始了!” 列出相同的命令。最近,我发现我应该使用 nvcc 从源代码编译 CUDA 驱动程序,但是我在任何地方都找不到显示要使用哪些命令的指南(每个人都指向几百页长的 PDF由 NVIDIA 而不是实际提供有用的命令)。那么,我还需要做什么才能让 CUDA + RAPIDS 在使用 Tesla K80 的 Ubuntu 18.04 系统上运行?

谢谢!

0 投票
1 回答
295 浏览

gpu - 在没有 GPU 的情况下运行 RAPIDS 进行开发?

有没有办法在没有 GPU 的情况下运行 RAPIDS?我通常在没有 GPU 的小型本地机器上开发,然后将我的代码推送到功能强大的远程服务器以供实际使用。TensorFlow 之类的东西允许在 CPU 和 GPU 之间切换,具体取决于它们是否可用。可以用 RAPIDS 做同样的事情吗?即使速度很慢,能够在没有 GPU 的机器上进行测试也会非常有帮助。