iT邦幫忙

0

在Windows 11 使用autoKeras 並透過GPU加速 (內含不用另外下載檔案的tensorflow-gpu作法)

  • 分享至 

  • xImage
  •  

之所以寫這篇,是因為自己的linux系統是pop-os 22.04,tensorflow版本撞到翻(也有版本直接不支援這個OS...)

而也才發現Tensorflow的GPU用法 要對windows設限了,寫這篇提醒未來怎麼安裝~
依據:https://tensorflow.google.cn/install/source_windows?hl=en#gpu
https://ithelp.ithome.com.tw/upload/images/20231126/20156181INfFm8d5tS.png
所以只能安裝tensorflow-gpu 2.10.0嘍~(雖然 tensorflow忘記哪個版本開始 就會偵測是否有nvidia GPU可使用,但結果論 很多問題,所以還是乖乖使用最後支援的tensorflow-gpu 2.10.0吧~)

老樣子使用anaconda,一開始步驟都一樣,後面則將只使用tensorflow-gpu 與 要使用autoKeras分成兩塊~

建虛擬環境

conda create -n autokeras python=3.9 -y

進入虛擬環境

conda activate autokeras

查看有甚麼板本可用

conda search cudatoolkit 
conda search cudnn 

安裝cuda 與 cudnn

因為我使用的是 rtx4090,所以我直接找最新的版本使用就是了,不過下面的版本 應該適用30x0以上吧

conda install cudatoolkit=11.8.0 -y
conda install cudnn=8.9.2.26 -y

下面這行 是因為cudnn 不是下載檔案的,有些依賴項沒包好

conda install -yc conda-forge zlib-wapi

(一)如果只要使用tensorflow-gpu

pip install tensorflow-gpu==2.10.0

(二)使用autoKeras

pip install git+https://github.com/keras-team/keras-tuner.git
pip install autokeras==1.0.20

(因為目前autoKeras 會莫名的連同tensorflow、Keras等一起下載(官網說不會...),並且會直接安裝到很新的板本,不過Windows 已經像上面說的,被排擠了,只能使用到tensorflow-gpu==2.10.0,所以要卸載重裝,但放心 不會影響到autoKeras)

pip uninstall tensorflow -y
pip uninstall tensorflow-intel -y
pip install tensorflow-gpu==2.10.0

測試TF 是否有吃到GPU

python
import tensorflow as tf
tf.test.is_gpu_available()#如果最下方 是True 就可以了
exit()

測試AutoKeras

直接使用AutoKeras官方的影像分類範例 有名的mnist

import numpy as np
import tensorflow as tf
from tensorflow.keras.datasets import mnist
import autokeras as ak
(x_train, y_train), (x_test, y_test) = mnist.load_data()
print(x_train.shape)  # (60000, 28, 28)
print(y_train.shape)  # (60000,)
print(y_train[:3])  # array([7, 2, 1], dtype=uint8)

#Initialize the image classifier.
clf = ak.ImageClassifier(overwrite=True, max_trials=1)
#Feed the image classifier with training data.
clf.fit(x_train, y_train, epochs=10)

#Predict with the best model.
predicted_y = clf.predict(x_test)
print(predicted_y)

#Evaluate the best model with testing data.
print(clf.evaluate(x_test, y_test))

(晚點再export環境)


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言