cuML机器学习GPU库

目录

一、开始安装

1、创建虚拟环境

2、激活该虚拟环境

3、安装cuML

4、安装ipykernel

5、在jupter上使用,所以需要配置一下新的内核

二、调试

1、原始机器学习库运行

2、cuml库运行


以下安装教程为基于Linux系统,cuda版本为11.3.109、驱动530.30.02

一、开始安装

1、创建虚拟环境
conda create -n rapids python=3.9
2、激活该虚拟环境
conda activate rapids
3、安装cuML

 安装官网:Installation Guide - RAPIDS Docs

cuML机器学习GPU库_第1张图片

pip install --default-time=300 --extra-index-url=https://pypi.nvidia.com cuml-cu11

到这里,我们就安装完成了。但是如果要使用jupter笔记本,我们继续安装。

4、安装ipykernel
 pip install ipykernel
5、在jupter上使用,所以需要配置一下新的内核
python -m ipykernel install --name rapids

如果安装错了运行如下命令删除内核

jupyter kernelspec remove rapids

安装后,刷新网页即可看见新的内核的jupter笔记本

cuML机器学习GPU库_第2张图片

至此,jupter笔记本的环境也安装好了。

二、调试

先安装基础的机器学习库

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple scikit-learn
1、原始机器学习库运行
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import accuracy_score
import numpy as np
import time

X = np.random.random((1000000,70))
y = np.random.randint(0,2,1000000)

# 分割数据为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 初始化KNN分类器。这里选择邻居数为3。
knn = KNeighborsClassifier(n_neighbors=20)

# 使用训练数据拟合模型
start_time = time.time()  # 记录开始时间
knn.fit(X_train, y_train)

# 进行预测
y_pred = knn.predict(X_test)
end_time = time.time()  # 记录结束时间
elapsed_time = end_time - start_time  # 计算程序运行时间,单位为秒
# 将秒数转换为小时、分钟和秒数
hours = int(elapsed_time // 3600)
minutes = int((elapsed_time % 3600) // 60)
seconds = int(elapsed_time % 60)
print(f"程序运行时间:{hours}小时 {minutes}分钟 {seconds}秒\n")

# 评估预测的准确性
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy:.2f}")

运行时间

2、cuml库运行

API查询链接: Welcome to cuML’s documentation! — cuml 23.08.00 documentation

点击右上角小放大镜,然后输入sklearn中KNN算法的API名称,即可有相关示例

cuML机器学习GPU库_第3张图片

from sklearn.model_selection import train_test_split
# from sklearn.neighbors import KNeighborsClassifier
from cuml.neighbors import KNeighborsClassifier

from sklearn.metrics import accuracy_score
import numpy as np
import time

X = np.random.random((1000000,70))
y = np.random.randint(0,2,1000000)

# 分割数据为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 初始化KNN分类器。这里选择邻居数为3。
knn = KNeighborsClassifier(n_neighbors=20)

# 使用训练数据拟合模型
start_time = time.time()  # 记录开始时间
knn.fit(X_train, y_train)

# 进行预测
y_pred = knn.predict(X_test)
end_time = time.time()  # 记录结束时间
elapsed_time = end_time - start_time  # 计算程序运行时间,单位为秒
# 将秒数转换为小时、分钟和秒数
hours = int(elapsed_time // 3600)
minutes = int((elapsed_time % 3600) // 60)
seconds = int(elapsed_time % 60)
print(f"程序运行时间:{hours}小时 {minutes}分钟 {seconds}秒\n")


# 评估预测的准确性
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy:.2f}")

运行时间

你可能感兴趣的:(技巧分享,人工智能)