【Python】12 GPflow安装

概述

GPflow 是一个基于TensorFlow 在 Python 中构建高斯过程模型的包。高斯过程是一种监督学习模型。

高斯过程的一些优点是:

  • 不确定性是高斯过程的固有部分。高斯过程可以在不知道答案时告诉您。
  • 适用于小型数据集。如果您的数据有限,高斯过程可以从您的数据中获得最大收益。
  • 可以扩展到大型数据集。不可否认,尽管高斯过程可能需要大量计算,但有一些方法可以将其扩展到大型数据集。

安装步骤

严格按照GPflowTensorFlow官网说明的步骤安装。

创建虚拟环境

首先,安装Anaconda或Miniconda,添加环境变量,在Anaconda Prompt(Anaconda3)或Anaconda Prompt(Miniconda3)中创建虚拟环境

cmd 复制代码
conda create -n gpflow_env python=3.9

进入名为gpflow_env的虚拟环境

cmd 复制代码
conda activate gpflow_env

安装TensorFlow

NVIDIA显卡驱动

要安装TensorFlow并使用GPU功能,首先要确保计算机上安装有NVIDIA显卡,并且驱动版本大于450.80.02,可在命令行中输入以下命令查看

cmd 复制代码
nvidia-smi

若无此命令,则将C:\Program Files\NVIDIA Corporation\NVSMI路径,添加到环境变量中,命令输出结果为

Mon Nov 20 18:24:35 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 546.17                 Driver Version: 546.17       CUDA Version: 12.3     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                     TCC/WDDM  | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce MX150         WDDM  | 00000000:01:00.0 Off |                  N/A |
| N/A   35C    P0              N/A / ERR! |      0MiB /  2048MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+

驱动版本为546.17,满足要求。若不满足,需要去NVIDIA官网下载适合本机显卡的驱动程序安装。

CUDA和cuDNN

根据TensorFlow官网要求,要确保GPU功能可用,还需安装CUDA和cuDNN库,官网提供了经过验证的对应版本。

但由于本文安装的是TensorFlow v2.10,未在表中列出,因此尝试使用conda安装最新版本的CUDA和cuDNN库。

gpflow_env虚拟环境中,输入以下命令,安装了CUDA v12.0.0

cmd 复制代码
conda config --append channels conda-forge
conda install cudatoolkit

输入以下命令,安装cuDNN v12.0.0

cmd 复制代码
conda install cudnn

安装TensorFlow

使用conda安装TensorFlow库,安装了v2.10版本

cmd 复制代码
conda install tensorflow

确保TensorFlow的GPU可用

TensorFlow还可以使用GPU加速计算,因此在gpflow_env虚拟环境中使用下面命令,测试其GPU功能是否能使用。

python
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
print(tf.reduce_sum(tf.random.normal([1000, 1000])))

输出如下:

Num GPUs Available:  0
2023-11-20 18:16:21.583531: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-11-20 18:16:21.588117: I tensorflow/core/common_runtime/process_util.cc:146] Creating new thread pool with default inter op setting: 2. Tune using inter_op_parallelism_threads for best performance.
tf.Tensor(473.1806, shape=(), dtype=float32)

这表明TensorFlow未使用GPU,仅仅使用了CPU。也就是说,当前环境下,GPU不可用。

安装TensorFlow-GPU

使用pip安装tensorflow-gpu v2.10

cmd 复制代码
pip install tensorflow-gpu==2.10

安装TensorFlow Probability

按照GPflow官方文档的要求,需要安装TensorFlow Probability对应版本tensorflow-probability v0.18。但是在conda上,Windows环境下,最高只有v0.14版本的包。

cmd 复制代码
conda search tensorflow-probability

因此需要采用pip安装。

cmd 复制代码
pip install tensorflow-probability==0.18

安装GPflow

由于conda上的最新GPflow版本为 v2.5.2,版本较老,而最新的GPflow版本为v2.9.0,所以选择用pip安装最新版本gpflow v2.9.0。

cmd 复制代码
pip install gpflow

至此,GPflow安装完成。

测试

GPflow是以TensoFlow为基础的包,因此先测试TensorFlow是否正确安装,再测试GPflow。

测试TensorFlow

gpflow_env虚拟环境中,依次输入以下命令,不报错,即为成功安装。

cmd 复制代码
python
import tensorflow as tf

测试TensorFlow的GPU是否可用

安装完成后,在gpflow_env虚拟环境中使用下面命令,测试其GPU功能是否能使用。

python
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
print(tf.reduce_sum(tf.random.normal([1000, 1000])))

输出如下

Num GPUs Available:  1
2023-11-20 20:08:56.973624: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-11-20 20:08:57.731470: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1616] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 1430 MB memory:  -> device: 0, name: NVIDIA GeForce MX150, pci bus id: 0000:01:00.0, compute capability: 6.1
tf.Tensor(-89.27661, shape=(), dtype=float32)

GPU功能可以正常使用。

测试GPflow

gpflow_env虚拟环境中,依次输入以下命令,不报错,即为成功安装。

cmd 复制代码
python
import gpflow

参考资料

nvidia-smi显示不是内部或外部命令也不是可运行的程序
tensorflow官网
TensorFlow超极简安装------GPU版本的安装和测试
TensorFlow2 安装 官方推荐的环境配置 (GPU)、(Anaconda、CUDA、cuDNN)
从0安装tensorflow-gpu
使用 pip 安装 TensorFlow
GPflow 2.9.0 documentation
使用 GPU
【Python】11 Conda常用命令

相关推荐
娅娅梨24 分钟前
C++ 错题本--not found for architecture x86_64 问题
开发语言·c++
汤米粥30 分钟前
小皮PHP连接数据库提示could not find driver
开发语言·php
冰淇淋烤布蕾33 分钟前
EasyExcel使用
java·开发语言·excel
拾荒的小海螺39 分钟前
JAVA:探索 EasyExcel 的技术指南
java·开发语言
秀儿还能再秀1 小时前
机器学习——简单线性回归、逻辑回归
笔记·python·学习·机器学习
马剑威(威哥爱编程)1 小时前
哇喔!20种单例模式的实现与变异总结
java·开发语言·单例模式
白-胖-子1 小时前
【蓝桥等考C++真题】蓝桥杯等级考试C++组第13级L13真题原题(含答案)-统计数字
开发语言·c++·算法·蓝桥杯·等考·13级
好睡凯1 小时前
c++写一个死锁并且自己解锁
开发语言·c++·算法
java—大象1 小时前
基于java+springboot+layui的流浪动物交流信息平台设计实现
java·开发语言·spring boot·layui·课程设计
yyqzjw1 小时前
【qt】控件篇(Enable|geometry)
开发语言·qt