【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常用命令

相关推荐
noravinsc1 小时前
django中用 InforSuite RDS 替代memcache
后端·python·django
好吃的肘子1 小时前
Elasticsearch架构原理
开发语言·算法·elasticsearch·架构·jenkins
胡耀超1 小时前
霍夫圆变换全面解析(OpenCV)
人工智能·python·opencv·算法·计算机视觉·数据挖掘·数据安全
doupoa1 小时前
Fabric 服务端插件开发简述与聊天事件监听转发
运维·python·fabric
nlog3n2 小时前
Go语言交替打印问题及多种实现方法
开发语言·算法·golang
kaixin_learn_qt_ing2 小时前
Golang
开发语言·后端·golang
ddd...e_bug2 小时前
Shell和Bash介绍
开发语言·bash
How_doyou_do2 小时前
备战菊厂笔试4
python·算法·leetcode
C4程序员2 小时前
Java百度身份证识别接口实现【配置即用】
java·开发语言
unityのkiven2 小时前
C++中的虚表和虚表指针的原理和示例
开发语言·c++