深層学習 TensorFlow Windows版 GPU インストール」の環境をを Windows10 から Windows11 にしてソフトウエア環境を新しくしました。

TensorFlow 2.11 以降ではネイティブ Windows環境にはインストールできないらしいので、WSL2 (Windows Subsystem for Linux 2) に TensorFlow GPU をインストールすることにしました。
WSL は Winodws から Linux系OS を利用できるツールです。
WSL のインストールや利用には、Linux の基本的な知識が必要とされますが、Linux 用のバイオ系ツールを WSL 上の Linux にインストールすれば Winodws から利用することもできます。

参考:TensowrFlow公式のWinodwsインストールページ
https://www.tensorflow.org/install/pip?hl=ja#windows-native
「TensorFlow 2.10 、ネイティブWindowsでGPUをサポートした最後のTensorFlowリリースでした。
TensorFlow 2.11以降では、 WSL2にTensorFlowをインストールするか、 tensorflowまたはtensorflow-cpuをインストールし、」

WSL2 に Ubuntu をインストールすれば、Python, TensorFLow 関連は「深層学習 Ubuntu 24.04 に Tensorflow GPU をインストール」と同じ方法でインストールできると思います。
Ubuntu に慣れてない人にはやりにくいかもしれませんが、WSL と Ubuntu をインストールすれば他のバイオ系Linux ソフトウェアも利用できる可能性があるので便利だと思います。

<<< ハードウェア >>>
ハード:マウスコンピューター LM-iH700B2N
CPU: Intel® Core™ i3-8100 CPU @ 3.60GHz × 4
メモリ: 12 GByte
本体電源: 500W
グラフィックボード:NVIDIA GEFORCE GTX1070 メモリ 8GB
ストレージ:SSD 256GB
OS:Windows 11 Home 25H2

(1) WSL2のインストール

参考:TensowrFlow公式のWinodwsWSL2インストールページ
https://www.tensorflow.org/install/pip?hl=ja#windows-wsl2

古いハードウェアなのでシステム要件を確認しましたが特に問題はなさそうです。

参考:WSL を使用して Windows に Linux をインストールする方法
https://learn.microsoft.com/ja-jp/windows/wsl/install

管理者モードで PowerShell を開き、インストールコマンドを実行

> wsl --install

実行結果------------------
PS C:\WINDOWS\system32> wsl --install
ダウンロード中: Linux 用 Windows サブシステム 2.6.1
インストール中: Linux 用 Windows サブシステム 2.6.1
Linux 用 Windows サブシステム 2.6.1 はインストールされました。
Windows オプション コンポーネントをインストールしています: VirtualMachinePlatform
展開イメージのサービスと管理ツール
バージョン: 10.0.26100.5074
(中略)
操作は正常に完了しました。
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
--------------------------

再起動

確認

> wsl --status

ここで、下記のメッセージが出ました。

「既定のバージョン: 2
WSL1 は、現在のマシン構成ではサポートされていません。
WSL1 を使用するには、”Linux 用 Windows サブシステム” オプション コンポーネントを有効にしてください。
WSL2 は、現在のマシン構成ではサポートされていません。
“仮想マシン プラットフォーム” オプション コンポーネントを有効にし、さらに、BIOS で仮想化を有効にしてください。
“仮想マシン プラットフォーム” を有効にするには、次のコマンドを実行します: wsl.exe –install –no-distribution
詳細については、https://aka.ms/enablevirtualization をご覧ください」

下記のページを参考にして Linux用Windows サブシステムを有効化
https://note.com/hiro20180901/n/nc798a07485e2#1d58ac65-490b-49e3-bd67-da5341e43f7b

[システム]>[オプション機能]>[Windowsのその他の機能]

win11install001

Linux用Windowsサブシステムをチェック

PowerShell管理者権限でコマンド実行

> wsl.exe --install --no-distribution

再起動

確認

> wsl --status

実行結果------------------
既定のバージョン: 2
--------------------------

正常にインストールされていると思います。

WLSの説明画面
win11install002

(2) Ubuntuのインストール

PowerShell で Ubuntu インストール

> wsl --install -d Ubuntu

実行結果------------------
ダウンロードしています: Ubuntu
インストールしています: Ubuntu
ディストリビューションが正常にインストールされました。'wsl.exe -d Ubuntu' を使用して起動できます
Ubuntu を起動しています...
Provisioning the new WSL instance Ubuntu
This might take a while...
Create a default Unix user account: (username)
New password:
Retype new password:
passwd: password updated successfully
To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.
--------------------------

インストールの最後でユーザー名とパスワード の設定が必要です。

PowerShell から wsl と Ubuntu を起動

> wsl -d Ubuntu

Ubuntuバージョンの確認

$ lsb_release -a

実行結果------------------
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.3 LTS
Release: 24.04
Codename: noble
--------------------------

デフォルトで Ubuntu 24.04.3 LTS になりました。

WSLを終了

> wsl --shutdown

スタートメニューでUbuntuが表示されていることを確認

win11install003

起動してみる
win11install010

正常に起動しました。

(3) NVIDIAドライバのインストール

NVIDIA ドライバは Windows 側にのみインストール
(WSL (Ubuntu) 側にはインストールしない)

NVIDIAドライバの手動検索ページ
https://www.nvidia.co.jp/Download/index.aspx?lang=jp

ドライバダウンロード
https://www.nvidia.com/ja-jp/drivers/details/257331/
NVIDIA Studio ドライバー 581.57 | Windows 11

ダウンロードされたファイル
581.57-desktop-win10-win11-64bit-international-nsd-dch-whql.exe
を実行してデフォルト設定でインストール
win11install004

インストール後 NVIDIA App を起動して確認
win11install005

(4) PyTorchのインストール

WLS の Ubuntu に PyTorch をインストール
基本的には「深層学習 Ubuntu 24.04 に Tensorflow GPU をインストール」「(4) Python, PyTorchインストール」と同じです。

WLS の Ubuntu を起動して実行

Python関連インストール

$ sudo apt update
$ sudo apt -y install python3-dev python3-pip python3-setuptools python3-venv

仮想環境作成

$ mkdir ~/pytorch
$ cd ~/pytorch
~/pytorch$ python3 -m venv .tf

仮想環境実行

~/pytorch$ source .tf/bin/activate
(.tf):~/pytorch$

仮想環境で

(.tf):~/pytorch$ pip install --upgrade pip

PyTorch 公式ページで確認してコマンドを実行
https://pytorch.org/get-started/locally/
win11install006

(.tf) :~/pytorch$ pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu126

実行結果------------------
Looking in indexes: https://download.pytorch.org/whl/cu126
Collecting torch
(中略)
Downloading https://download.pytorch.org/whl/numpy-2.3.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.6 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16.6/16.6 MB 3.8 MB/s 0:00:04
Downloading https://download.pytorch.org/whl/setuptools-70.2.0-py3-none-any.whl (930 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 930.8/930.8 kB 3.6 MB/s 0:00:00
Installing collected packages: nvidia-cusparselt-cu12, mpmath, typing-extensions, triton, sympy, setuptools, pillow, nvidia-nvtx-cu12, nvidia-nvshmem-cu12, nvidia-nvjitlink-cu12, nvidia-nccl-cu12, nvidia-curand-cu12, nvidia-cufile-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, numpy, networkx, MarkupSafe, fsspec, filelock, nvidia-cusparse-cu12, nvidia-cufft-cu12, nvidia-cudnn-cu12, jinja2, nvidia-cusolver-cu12, torch, torchvision
Successfully installed MarkupSafe-2.1.5 filelock-3.19.1 fsspec-2025.9.0 jinja2-3.1.6 mpmath-1.3.0 networkx-3.5 numpy-2.3.3 nvidia-cublas-cu12-12.6.4.1 nvidia-cuda-cupti-cu12-12.6.80 nvidia-cuda-nvrtc-cu12-12.6.77 nvidia-cuda-runtime-cu12-12.6.77 nvidia-cudnn-cu12-9.10.2.21 nvidia-cufft-cu12-11.3.0.4 nvidia-cufile-cu12-1.11.1.6 nvidia-curand-cu12-10.3.7.77 nvidia-cusolver-cu12-11.7.1.2 nvidia-cusparse-cu12-12.5.4.2 nvidia-cusparselt-cu12-0.7.1 nvidia-nccl-cu12-2.27.5 nvidia-nvjitlink-cu12-12.6.85 nvidia-nvshmem-cu12-3.3.20 nvidia-nvtx-cu12-12.6.77 pillow-11.3.0 setuptools-70.2.0 sympy-1.14.0 torch-2.9.0+cu126 torchvision-0.24.0+cu126 triton-3.5.0 typing-extensions-4.15.0
--------------------------

バージョン確認

(.tf) :~/pytorch$ python -V
Python 3.12.3

(.tf) :~/pytorch$ python
>>> import torch
>>> print( torch.__version__ )
2.9.0+cu126

Python 3.12.3, PyTorch 2.9.0, CUDA 12.6 がインストールされました。

(5) TensorFlow GPU のインストール

基本的に「深層学習 Ubuntu 24.04 に Tensorflow GPU をインストール」「(5) TensorFlow GPU のインストール」と同じです。

仮想環境で

(.tf) :~/pytorch$ pip install tensorflow[and-cuda]

実行結果------------------
Collecting tensorflow[and-cuda]
Downloading tensorflow-2.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.5 kB)
Collecting absl-py>=1.0.0 (from tensorflow[and-cuda])
Downloading absl_py-2.3.1-py3-none-any.whl.metadata (3.3 kB)
Collecting astunparse>=1.6.0 (from tensorflow[and-cuda])
Downloading astunparse-1.6.3-py2.py3-none-any.whl.metadata (4.4 kB)
Collecting flatbuffers>=24.3.25 (from tensorflow[and-cuda])
(中略)
Downloading markdown_it_py-4.0.0-py3-none-any.whl (87 kB)
Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Installing collected packages: namex, libclang, flatbuffers, wrapt, wheel, werkzeug, urllib3, termcolor, tensorboard-data-server, six, pygments, protobuf, packaging, optree, opt_einsum, nvidia-cuda-nvcc-cu12, ml_dtypes, mdurl, markdown, idna, h5py, grpcio, gast, charset_normalizer, certifi, absl-py, tensorboard, requests, markdown-it-py, google_pasta, astunparse, rich, keras, tensorflow
Successfully installed absl-py-2.3.1 astunparse-1.6.3 certifi-2025.10.5 charset_normalizer-3.4.4 flatbuffers-25.9.23 gast-0.6.0 google_pasta-0.2.0 grpcio-1.76.0 h5py-3.15.1 idna-3.11 keras-3.11.3 libclang-18.1.1 markdown-3.9 markdown-it-py-4.0.0 mdurl-0.1.2 ml_dtypes-0.5.3 namex-0.1.0 nvidia-cuda-nvcc-cu12-12.9.86 opt_einsum-3.4.0 optree-0.17.0 packaging-25.0 protobuf-6.33.0 pygments-2.19.2 requests-2.32.5 rich-14.2.0 six-1.17.0 tensorboard-2.20.0 tensorboard-data-server-0.7.2 tensorflow-2.20.0 termcolor-3.2.0 urllib3-2.5.0 werkzeug-3.1.3 wheel-0.45.1 wrapt-2.0.0
--------------------------

確認

(.tf) :~/pytorch$ python
>>> import tensorflow as tf
>>> print( tf.__version__ )
2.20.0

>>> print(tf.config.list_physical_devices('GPU'))
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]

>>> from tensorflow.python.client import device_lib
>>> device_lib.list_local_devices()
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 1147227423679645396
xla_global_id: -1
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 7041187840
locality {
bus_id: 1
links {
}
}
incarnation: 15079246966805253052
physical_device_desc: "device: 0, name: NVIDIA GeForce GTX 1070, pci bus id: 0000:01:00.0, compute capability: 6.1"
xla_global_id: 416903419
]

TernsorFlowのバージョン 2.20.0で、GPUを認識しています。

(6) プログラムを実行して確認

前回と同じく「深層学習 Ubuntu 20.04 に Tensorflow GPU をインストール」keras_mnist_test.py で動作確認しました。

Ubuntu の home を Windows のクスプローラーから参照してファイルをコピー
エクスプローラーからは\\wsl.localhost\Ubuntu\home\で参照できます。

\\wsl.localhost\Ubuntu\home\(user)\pytorch

仮想環境で実行

(.tf) :~/pytorch$ python keras_mnist_test.py

実行結果------------------
2025-10-27 23:17:30.666181: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
D
(中略)
Epoch 19/20
540/540 ━━━━━━━━━━━━━━━━━━━━ 3s 3ms/step - accuracy: 0.9272 - loss: 0.2572 - val_accuracy: 0.9572 - val_loss: 0.1645
Epoch 20/20
540/540 ━━━━━━━━━━━━━━━━━━━━ 2s 3ms/step - accuracy: 0.9282 - loss: 0.2538 - val_accuracy: 0.9577 - val_loss: 0.1606
313/313 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step
[7 2 1 ... 4 5 6]
[7 2 1 ... 4 5 6]
0.9469
--------------------------

テストした範囲では互換問題もなく使えてます。

(7) JupyterNotebook のインストール

仮想環境にインストール

(.tf) :~/pytorch$ sudo -H apt install jupyter-notebook

コンフィグ設定

(.tf) :~/pytorch$ jupyter notebook --generate-config
(.tf) :~/pytorch$ jupyter notebook password

下記のページを参考にして仮想環境を認識させました。

参考:Jupyter NotebookをPython仮想環境で実行する
https://pythonmaniac.com/jupyter-notebook-on-virtual-environment/#index_id4

参考:Jupyter Notebook のカーネルに仮想環境をセットする方法
https://qiita.com/smiler5617/items/e0d9b3034d79457cc253


(.tf) :~/pytorch$ pip install ipykernel
(.tf) :~/pytorch$ ipython kernel install --user --name=tf_kernel

カーネル名は適当に tf_kernel としました。

jupyter notebookを 起動

(.tf) :~/pytorch$ jupyter notebook

Windowsからブラウザで Juypter Notebookにアクセス
http://localhost:8888/

[New]で仮想環境のカーネル(tf_kernel)を選択
スクリーンショット 2025-11-11 060328
keras_mnist_test.pyのプログラムを画面に張り付けて実行

実行結果——————
win11install007
————————–

テストした範囲では互換問題もなく使えてます。

(S.Onda 2025/11/11)

【参考】(外部サイト)
「pip を使用して TensorFlow をインストールする」
https://www.tensorflow.org/install/pip?hl=ja#windows-wsl2

「WSL を使用して Windows に Linux をインストールする方法」
https://learn.microsoft.com/ja-jp/windows/wsl/install

「PyTorch Get Started Start Locally」
https://pytorch.org/get-started/locally/

「Windows 11 に WSL2 Ubuntu をインストールして使ってみる【誰でもできるよ】」
https://note.com/hiro20180901/n/nc798a07485e2#1d58ac65-490b-49e3-bd67-da5341e43f7b

「金子邦彦研究室 WSL2 上の Ubuntu 24.04 で NVIDIA CUDA、PyTorch、TensorFlow(最新版)をセットアップする手順」
https://www.kkaneko.jp/tools/wsl/wsl_tensorflow2.html#S2-2

「Jupyter NotebookをPython仮想環境で実行する」
https://pythonmaniac.com/jupyter-notebook-on-virtual-environment/#index_id4

「Jupyter Notebook のカーネルに仮想環境をセットする方法」
https://qiita.com/smiler5617/items/e0d9b3034d79457cc253