问题标签 [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.
rapids - RAPIDS cuML 库是否支持广义线性模型 (GLM)?
我认为 cuML 确实支持 GLM,因为线性和逻辑回归是 GLM 的类型,而 cuML 支持这些类型。最好确定!https://github.com/rapidsai/cuml
如果不支持,是否在路线图上?
python-3.x - Colab AttributeError 中的 RAPIDS:模块“cudf”没有属性“_lib”
在我尝试导入 cuml 库之前,我已经在 Colab 中安装了 RAPIDS,没有任何问题。幸运的是,我有 Tesla 4 作为 GPU。
这就是我安装 RAPIDS 的方式
当我尝试导入时:
我也放了这个:
这是我的问题,我正在尝试使用 RAPIDS 使用他的 T-SNE,它比 Scipy T-SNE 更快。
python - 有没有人看到带有 cuml RAPIDS 的错误 global_output_type ?
我是 RAPIDS 的新手,之前只是尝试使用 sklearn 复制逻辑回归模型,但现在使用 cuml,但 LogisticRegression() 调用不起作用。
我收到以下错误:
LinearRegression() 加载语句也得到相同的错误。考虑到 cudf(Pandas for CUDA) 加载良好,并且可以在 gpu 数据帧上运行,不知道为什么会发生这种情况。
python - cuML vs sklearn:随机森林分类器的不同精度
我正在使用通过获得的 rapidsai docker 容器
并通过
当我random_forest_mnmg_demo
通过 JupyterLab 运行时,我得到以下准确度
虽然笔记本上说
由于算法的随机性,您可能会看到精度略有不同
我不会称这种差异为“轻微”。
附带说明:我还测试并修改了另一个 RF 笔记本 ( random_forest_demo
),观察到的精度差异高达 0.95 和 0.75(针对不同的数据集大小和 RF 参数)。根据cuML
文档,cuML
节点拆分算法不同于sklearn
. 因此,我改变split_algo = 0
并尝试了各种n_bins
价值观——但没有成功。我还测试h2o
了 s RF 实现,并且random_forest_demo
大部分时间都给出了非常相似的结果。h2o
sklearn
SO上有一个类似的问题,但似乎这个问题与cuML
0.12版有关,应该在我正在使用的0.14版中修复。所以肯定有其他事情发生。
我已经比较了RF 的sklearn
和cuML
参数设置,我认为它们应该足够接近以产生相似的结果。我错过了一些配置设置吗?或者这可能与硬件有关?
nvidia-smi
输出(在主机上执行,GPU 是“GeForce GTX 1050 Ti with Max-Q Design”)
由给出的 Cuda 版本nvcc --version
gpu - 带有 GPU_HIST 的 XGBOOST GridSearchCV 同时使用 GPU 和 CPU
我正在使用此代码在 GPU 上训练 xgboost 模型
问题是同时使用 GPU (NVIDIA 1050) 和 CPU 内核。NVIDIA 系统监视器显示利用率为 85% 到 90%,Linux 系统监视器显示所有内核都在工作。
这里有两个问题
1 .当定义的tree_method为'gpu_hist'时,为什么xgb_cv同时使用两者
- 当模型使用“hist”而不是“gpu_hist”进行训练时,它只使用 CPU 内核在一半的时间内完成
谢谢
python - 如何使用 xgboost.dask 和 gpu 以分布式和批处理方式对非常大的数据集进行建模?
我想利用分布在许多节点上的多个 GPU 使用 3 个NC12s_v3 计算节点在 Azure 机器学习中的一个非常大的数据集上训练 XGBoost 模型。数据集大小在持久化到 Dask 时超过了 VRAM 和 RAM 大小,但可以舒适地放在磁盘上。但是,XGBoost 的 dask 模块似乎在训练时保留了所有数据(至少默认情况下)。
所有数据预处理都已处理(一种具有 np.bool 数据类型的热编码),并且可以假设我在其他地方拥有最有效的数据类型(例如,将 np.float64 更改为 np.float32 用于十进制特征,更改为 int8 用于序数数据等)。
目前,我正在尝试制作一个仅使用训练集的简单玩具模型。我的代码如下:
在包含 2 个 GPU 的单个节点上使用上述内容,我一次最多只能加载 32GB(VRAM 的限制)。
从我当前的代码中,我有几个问题:
有什么办法可以阻止 XGBoost 将所有数据持久保存到内存中,而不是分批处理分区?
有什么方法可以让 Dask 本地处理批处理而不是手动执行,例如增量学习?
在他们提到的文档中,您可以使用外部存储器模式及其分布式模式。假设我有 libsvm 文件,我将如何处理多个节点和多个 GPU?
如何更改上面的代码,以便可以使用多个节点?
额外问题:假设有一种方法可以使用 xgboost.dask 进行批处理,我如何将它与 RAPIDS 集成以仅在 GPU 上进行处理?
python - DBSCAN 中预先计算的距离矩阵
仔细阅读,我发现可以将预先计算的距离矩阵传递给SKLearn DBSCAN。不幸的是,我不知道如何通过它进行计算。
假设我有一个包含 100 个元素的一维数组,只有节点的名称。然后我有一个 100x100 的二维矩阵,每个元素之间的距离(以相同的顺序)。
我知道我必须这样称呼它:
db = DBSCAN(eps=2, min_samples=5, metric="precomputed")
对于 2 个节点和至少 5 个节点集群之间的距离。此外,使用“预计算”表示使用 2D 矩阵。但是如何传递计算信息?
如果使用 RAPIDS CUML DBScan函数(GPU 加速),同样的问题也可能适用。
gpu - 有没有办法在多 GPU 上运行 Rapids 时间序列模块(ARIMA、ESM)?
我有一个带有 2 个 Tesla P100 gpu 的节点。
当我运行 rapids.tsa.ARIMA(或 ESM)时,它只会使用其中一个 GPU。有没有办法利用多 GPU 来训练模型?就像在 rapids-dask-xgboost 中一样?
python - CUDF/Python 警告:“用户警告:未检测到 NVIDIA GPU”
我在 python 中使用 cudf 和 dask_cudf 模块运行代码时遇到了一些困难。我正在通过 Anaconda 在 Jupyter Labs 上工作。我已经能够正确安装我的 nvidia-gpu 驱动程序、cudf(通过 rapidsai)和 cuda。只有,当我在 python 中使用 import cudf 时 import cudf
,我得到一个错误读数:"home/lib/python3.7/site-packages/cudf/utils/gpu_utils.py:120: UserWarning: No NVIDIA GPU detected. Warnings.warn("No NVIDIA GPU detected")
我的环境:
- Linux:RHEL8
- 蟒蛇:3.7.7
- 库达:10.2
- 英伟达驱动程序:390.138
- CUDF/Dask_CUDF:0.13 通过 rapidsai
我正在尝试使用数十万到数百万个项目的数据加载和操作数据集,所以我真的需要 cudf/dask_cudf 实用程序来最大限度地利用我的时间。
当我nvidia-smi
在终端中运行时,一切看起来都很好,并且持久模式已打开。我在互联网上搜索了一个没有好主意的解决方案。任何帮助,将不胜感激。
python - 解释失败的 conda 安装的包请求冲突
尝试以下conda install
操作(源自NVIDIA RAPIDS 安装说明):
在 AWS EC2 实例(特别是 an m5.xlarge
)上,此操作失败,并带有以下(滑稽的长;我在此处提供了一个片段,单击此处获取完整版本的要点)输出解释包冲突:
我不知道如何解释这个输出。以以下声称的包冲突列表numba
为例,例如:
这似乎很容易满足:只需安装numba==0.49
. 日志似乎充满了这种可解决的不可解决的冲突。
有谁知道为什么conda
要提供这样的输出?