Python3(Anaconda3) on Jupyter Notebook on Windows 11(仮想環境)
Python3(Anaconda3) on PyCharm on Windows 11(仮想環境)
on GPUマシン 間違いない方法を丁寧にこと細かく
「TensorFlow-GPU」「NVIDIAドライバ」「CUDA」「cuDNN」バージョン
◆◆Kali Linux on VertualBox on Windows 11◆◆
◆◆Ubuntu on VertualBox on Windows 11◆◆
仮想環境と言えば上の2つです。が,Windowsマシンでは難しすぎます。上の2つを使いたいなら最初からLinuxマシンを使うべきと考えます。
Windows上のPython3を仮想環境で使いたいなら,「Anaconda3」が最適です。開発ツールは大規模開発でなければ「Jupyter Notebook」で十分です。大規模開発であれば「PyCharm」を使ってください。
【重要な注意】「PyCharm」を使わないで,「Jupyter Notebook」だけで「Python3」を動かすのであれば「Anaconda3」をインストールだけで十分です。学生はこれだけで十分です。
「PyCharm」を使う場合,「Anaconda3」のPython3と紐付ける方法と,「Anaconda3」とは別にWebからPython3をダウンロードする方法があります。本記事では前者を採用します。
いずれにしても仮想環境を構築するのは「Anaconda3」のインストールが終了してからです。その後に仮想環境においてモジュール(ライブラリ)をインストールします。
https://yamakatsusan.web.fc2.com/pythoninstallanaconda.html
『Python3(Anaconda3) on Jupyter Notebook/PyCharm on Windows 11(仮想環境)on CPUマシン』
◆◆「Jupyter Notebook」「PyCharm」の使い方の研究◆◆
本記事では扱っていませんが,ググるのであれば,「Jupyter Notebook debug」「PyCharm debug」とすればよいです。
◆◆「GPUドライバ」「TensorFlow」「CUDA」「cuDNN」などの選択◆◆
【重要な注意】NVIDIAのGPUを利用するのであれば,そのGPUドライバ,Python3,TensorFlow,LightGBMなどのバージョンの相性をよく検討することが必要になります。
私のPCの仕様は,
・OS:Windows11 HOME
・CPU:Intel Core i7-8700K
・GPU:NVIDIA GTX 1080
・RAM:64.0GB
実はこれは Mouse社のゲーミングPCであり,25万円でした。ビッグデータを扱うのでRAMは多い方がよいです。RAMが少ないと分割ロードするのでプログラムがかなり面倒くさくなります。
最近に家族が買ったツクモのBTOのゲーミングPCのGPUは4080ですが値段は45万円でした。1080との性能差は約2倍です。GPUなしつまりCPUと1080との性能差は当時で30倍程度でした。1080で1時間かかるのがCPUで丸1日かかります。今はCPUの性能が上がっていますがそれでも大きな差があります。
私のPCを家族に貸したところ勝手にGPUドライバのバージョンを上げてしまいました。これでディープラーニングをしばらく休みましたが,このおかげでpythonのバージョンを上げて対応することにしました(この記事のこと)。
1080でも4080でもインストール方法は変わらないはずです。
GPUドライバは既にインストールされているものを使うことにします。先に進んでどうしてもバージョンアップしたくなったらそのときに更新してください。
GPUが入っているPCには購入時GPUドライバがインストールされています。筆者はこれで苦労しました。当時のゲーム用のGPUドライバはTensorFlow用にはバージョンが新しすぎていたのでダウングレードするのですが,最適のバージョンの選択方法を見つけるのが困難でした。
これからGPUドライバのバージョンから「TensorFlow」「CUDA」「cuDNN」などを選択する方法を紹介します。一番間違いのない方法だと思います。
◆GPUドライバのバージョン◆
タスクバーにNVIDIAのアイコンがあるはずです。それを右クリックしてNVIDIAコントロールパネルを選ぶとNVIDIAコントロールパネルが表示されGPUドライバのバージョンが書かれています。
もう一つの方法は,ディスプレイの何もないところを右クリック→その他のオプションを確認→NVIDIAコントロールパネルを選びます。
さらに,メニューバーのヘルプ→システム情報→...詳細情報に詳細仕様が書かれています。
筆者のGPUドライバのバージョンは「516.94」です。
◆CUDAのバージョンの候補◆
次のWebからCUDAのバージョンの候補を選びます
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
ここではCUDAのバージョン「CUDA 11.7 Update 1」以下なら何でも良いということしか判りません。許容範囲内の最高を選ぶことにはなりませんので注意してください。
この表はたぶんゲーミングPC用です。後で判りますがCUDAのバージョンが高すぎます。
◆TensorFlowのバージョンの候補◆
次のWebからTensorFlowのバージョンの候補を選びます
https://www.tensorflow.org/install/source_windows#tested_build_configurations
「CUDA」のバージョンの許容範囲が11.7以下ということを覚えていますか。そうですこの表ですべてのバージョンが決まるのです。たまたま最上段ですが,
「TensorFlow-gpu」が2.10.0。「Python」は3.10にしましょう(せっかくだから新しい方)。「cuDNN」は8.1。「CUDA」は11.2。
もう少しでダウンロード・インストールができると思うのは早計でして,ダウンロードファイルを決めることとそれを探すこととインストールも単純ではないこともあってまだひと苦労します。
「Anaconda3」「PyCharm」のインストールはGPUなしCPUマシンと同じなので,その前に「cuDNN」「CUDA」のインストールの方法を紹介します。
◆◆「cuDNN」「CUDA」のインストールとダウンロードファイルの調査◆◆
「cuDNN」は表がありますが,「CUDA」には表がありません(調べた限り)。
Googleキーワード検索で例えば「windows11 tensorflow-gpu2.8.0 cuDNN8.1 CUDA11.2」とします。
「Google USA」も使いましょう。
「Google USA」
https://www.google.com/webhp?gl=us&hl=en&gws_rd=cr&pws=0
「Google USA」
https://www.google.com/?gl=us&hl=en&pws=0&gws_rd=cr
検索により多くのHPが見られます。その中でずばり「CUDA11.2」の記事が見つかるまでキーワードを替えて検索します。その記事のリンク先に例えば次のようなものがあります(ラッキーでした)。URLを参考にして検索しても良いかもしれません。
ダウンロードファイルは「cuda_11.2.0_460.89_win10.exe」。
「cuDNN8.1」についても同じようなことをしていると次のWebを見つけました。こちらは表になっているのであれこれ検索しなくてもよいです。
「cuDNN」と「CUDA」の相性がこと細かに決められていますので慎重に選びます。
「cuDNN8.1」
https://developer.nvidia.com/rdp/cudnn-archive
ダウンロードファイルは「cudnn-11.2-windows-x64-v8.1.1.33.zip」。
これはアーカイブです。解凍して次のディレクトリに入れてください。同じフォルダがいくつかありますが上書きしてください(移動またはコピペすれば上書きできます)。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2
次にPATHを通します。インストール作業において自動でPATHが通るのが普通ですが,たまにPATHが通っていないときはマニュアルで通します。アーカイブの場合はなおさらです。
タスクバーWindows検索窓→環境変数→上のメニューシステム環境変数の編集→システムのプロパティ→環境変数→システム環境変数・新規→下の図のようにタイプ(コピペ)→OK→システム環境変数で確認→OKで抜ける(システムのプロパティにはコントロールパネルからでも行くことができます)
これで「CUDA」と「cuDNN」のインストールが終わりました。GPUマシンのPython3のインストールで一番難しいのが終了です。
後は「anaconda3」をインストールして,その後はターミナル「Anaconda Prompt」を使って仮想環境を構築しその環境においてモジュール(ライブラリ)をインストールします。これらはGPUなしCPUマシンと同じ手続きですが,バージョンを指定してインストールするものがいくつかあります。
◆◆「Anaconda3」のダウンロード◆◆
「Anaconda3」ダウンロードページ
https://www.anaconda.com/download/(これではありません,ここは最新バージョンのみ)
ダウンロードファイル
Anaconda3-2023.09-0-Windows-x86_64.exe(バージョン3.11.5)(これではありません)
Google USAキーワード検索「anaconda3 python3.10 download」ですぐ見つかります。
https://www.softlay.com/downloads/anaconda
ダウンロードファイル
Anaconda3-2023.03-Windows-x86_64.exe(バージョン3.10.9)(これをインストール)
この後,モジュール(ライブラリ)のインストールまでGPUなしCPUマシンと同じです。
◆◆「PyCharm」のダウンロード◆◆
「PyCharm」ダウンロードページ
https://www.jetbrains.com/PyCharm/
ダウンロードファイル
PyCharm-community-2023.2.4.exe(とりあえず最新バージョン)
◆◆「Anaconda3」のインストール◆◆
ダウンロードしたファイルは,アカウントフォルダ直下のダウンロードフォルダ
C:\Users\Owner\Downloads\(Ownerはユーザーアカウント名に書き換えてください)
に入っています。
ダウンロードファイルのアイコンを右クリックして,プルダウンメニューの「管理者として実行」を左クリックすれば,インストールは始まります。
デフォルトでないところも少しあるので注意してください。
ログインしているアカウントだけにインストールします。
yamakは筆者のアカウント名です。実際はあなたのアカウント名になっているはず。
2番目の環境変数のPATHを通すのは必須です。後からいつでもマニュアルでできます。
Completedを確認してください。
この後の画面でFinishをクリックしてください。チェックを外さなくても「Anaconda Navigator」が起動するだけですので終了してください。
◆◆「PyCharm」のインストール◆◆
◆◆「Anaconda Prompt」上のcondaコマンド◆◆
「Anaconda3」の仮想環境は「Anaconda Prompt」でのcondaコマンドを使って構築します。使うcondaコマンドは次の通りです。
◆◆「Anaconda3」の仮想環境を構築◆◆
「Anaconda3」の仮想環境を構築すれば,仮想環境ごとに「Jupyter Notebook」がインストールされます。そしてそれに取り込まれるライブラリ(パッケージ)も仮想環境ごとにセーブされます。それらすべてのバージョンが保持されますので,そのまま外部に持ち出してもその動作が完璧に再現することができるのです。
「Anaconda3」の仮想環境を構築は「Anaconda Prompt」上のcondaコマンドの次の枠内の操作することによりできます。「Anaconda Prompt」の起動は,
タスクバーWindowsマーク > すべてのアプリ > Anaconda3(64bit) > Anaconda Prompt
「Anaconda Prompt」の操作は「>」(プロンプト)の後にコマンドをタイプします。普通はコピペします(例えば下の枠内から)。下の画面で「###」は「Anaconda Prompt」には無いもので後から書き足したコメントです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
### Anaconda仮想環境の一覧 (base) C:\Users\yamak>conda env list # conda environments: # base * C:\Users\yamak\anaconda3 ###本来は1つもないはず。仮想環境の構築と削除を繰り返した残骸かも。### 後の操作に何も問題はありません。 ### Anaconda3に仮想環境を作成,仮想環境の名称を仮に'project1'とする (base) C:\Users\yamak>conda create -n project1 python=3.10.9 jupyter Collecting package metadata (current_repodata.json): done Solving environment: done... (2023-12-12 tensorflow-gpuに合うバージョンに修正。キャプチャ図も3.11→3.10) ### Anaconda仮想環境の一覧して新しい仮想環境を確認 (base) C:\Users\yamak>conda env list # conda environments: # base * C:\Users\yamak\anaconda3 project1 C:\Users\yamak\anaconda3\envs\project1 ### environment_kernelsのインストール (base) C:\Users\yamak>pip install environment_kernels Collecting environment_kernels Using cached environment_kernels-1.2.0-py3-none-any.whl (31 kB) Installing collected packages: environment_kernels Successfully installed environment_kernels-1.2.0 ### Jupyter Notebookのconfig設定 (base) C:\Users\yamak>Jupyter Notebook --generate-config Writing default config to: C:\Users\yamak\.jupyter\jupyter_notebook_config.py ### C:\Users\yamak\.jupyter\jupyter_notebook_config.pyの先頭に ### NotePadで次の2行を書き足してください c.NotebookApp.kernel_spec_manager_class='environment_kernels.EnvironmentKernelSpecManager' c.EnvironmentKernelSpecManager.conda_env_dirs=['C:/Users/yamak/.conda/envs/'] ### 成功しない場合は「Jupyter Notebookのconfig設定」でググってください ### 作成した仮想環境に入る (base) C:\Users\yamak>conda activate project1 ### Anaconda仮想環境の一覧して作成した仮想環境に入れたのを確認 (project1) C:\Users\yamak>conda env list # conda environments: # base C:\Users\yamak\anaconda3 project1 * C:\Users\yamak\anaconda3\envs\project1 ### プロンプトの前に仮想環境の名称があることに留意 ### (base) のコマンドは最初の1回だけでよいかもしれません(確信はありません)
◆◆「Jupyter Notebook」の起動と仮想環境の構築◆◆
事前にプログラムファイルを入れておくワーキングフォルダを作成しておきます。「Anaconda3」と同じディレクトリが良いと思います。
C:\Users\yamak\pyexample
'yamak'は筆者のアカウント名ですのであなたのアカウント名にしてください。'pyexample'は任意です。仮想環境の名称でもかまいません。この中に「Jupyter Notebook」の.pynbファイルまたは「PyCharm」の.pyファイルを入れます。このフォルダの直下のディレクトリをツリーにしてもかまいません。
実は上の枠内の「Anaconda Prompt」の操作を実行するだけで「Jupyter Notebook」の仮想環境の構築は完了しています。仮想環境を複数構築したい場合は上の操作を繰り返します。ワーキングフォルダも仮想環境ごとに作成します。
【重要な注意】「Jupyter Notebook」「PyCharm」の仮想環境は,上に述べたように「Anaconda Prompt」で仮想環境の名称を設定します。
「Jupyter Notebook」の仮想環境では,ワーキングフォルダのディレクトリを指定することはありません。任意のディレクトリのワーキングフォルダに.ipynbファイルを置くことができます。「Jupyter Notebook」で.ipynbファイルを開いて,
メニューバーKernel→Change kernel→登録した仮想環境
という手順で事前に登録した仮想環境名称を選択できます。
「PyCharm」では,後で詳しくやりますが,「Create Project」で「Interpreter」のディレクトリを設定するときに,anacondaの仮想環境のディレクトリを指定します。この画面では,次の2つが選択できます。anaconda3を使うのなら後者を,外部からPythonを導入するのなら前者を選択します。本記事では後者のanaconda3を使っています。
New environment using
Previously configured interpreter
「Interpreter」に次のような選択肢が表示されそれを設定します(後で紹介します)。ここでproject1は「Anaconda Prompt」で事前に設定された仮想環境名称です。yamakは筆者のアカウント名です。あなたのものに替えてください。「\」はバックスラッシュです。
c:\Users\yamak\anaconda3\envs\project1\python.exe
「Jupyter Notebook」の起動は,
タスクバーWindowsマーク > すべてのアプリ > Anaconda3(64bit) > Jupyter Notebook
上のターミナルと下の「Jupyter Notebook」ブラウザがほぼ同時に立ち上がります。ブラウザは複数立ち上げることが可能であり,1つ目は自動で立ち上がり,2つ目以降はWindowsマークから立ち上げたブラウザのURL窓に上の囲ったURLをコピペすれば「Jupyter Notebook」ブラウザになります。
「Jupyter Notebook」ブラウザの下半分にディレクトリ(フォルダ)が表示されており,ユーザーアカウント直下のanaconda3と事前に準備した(適当な名称の)ワーキングフォルダがあります。上のターミナルはそのままで,ワーキングフォルダをクリックして直下のディレクトリを表示します。
事前に用意された「Jupyter Notebook」の.pynbファイルまたは「PyCharm」の.pyファイルがあります。新しいプロジェクトを始める場合にも最低限動作する「main.py」を名称を替えて用意した方がよいと思います。ちなみに「main.py」は「PyCharm」の新しいプロジェクトの立ち上げ時に自動的に作成したファイルです。
この6つのファイルはこのWebの左上の「ダウンロード」からダウンロードできます。「main」以外のスクリプトは「トップページに戻る」でこの記事のトップページを表示すれば解説記事があります。
とりあえず「main.py」をクリックします。プログラムの内容は解説しませんが正しく動作しているようです。
Kernelカーネルを事前に用意した仮想環境project1(conda_は自動付加)を選択します。
「Jupyter Notebook」は,プログラムが書かれているセルが複数ある場合もあります。またセルごとにrunさせる場合は変数の値が記憶されています。それらを初期状態に戻しかつ複数のセル全部をrunさせるには「Restart & Run All」をクリックします。
出力はコードセルの下に表示されています。このファイルをセーブすれば出力も残り,そのままソースコードとrun結果;出力が1つのファイルになります。このままレポートとして使えます。
◆◆ライブラリ(モジュール)の取り込み◆◆
このままではライブラリ(モジュール)が不足しています。ここからライブラリ(モジュール)のインストール方法を説明します。GPUなしCPUマシンとGPUマシンの共通の方法を先に紹介します。TensorFlow-GPUのインストールは巻末にまとめてあります。
仮想環境では仮想環境ごとにカーネルやライブラリ(モジュール)が保持されていて,それらのバージョン管理をしなくても動作確認済みのものをそのまま外部に持ち出すことができ再現性もあります。
プログラムの内容の解説はしませんが,ファイル「3Dplot.ipynb」「fourier_transform.ipynb」にimportされているライブラリは「Anaconda Prompt」で取り込みます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
### Anaconda仮想環境の一覧して新しい仮想環境を確認 (base) C:\Users\yamak>conda env list # conda environments: # base * C:\Users\yamak\anaconda3 project1 C:\Users\yamak\anaconda3\envs\project1 ### 作成した仮想環境に入る (base) C:\Users\yamak>conda activate project1 ### Anaconda仮想環境の一覧して作成した仮想環境に入れたのを確認 (project1) C:\Users\yamak>conda env list # conda environments: # base C:\Users\yamak\anaconda3 project1 * C:\Users\yamak\anaconda3\envs\project1 ### プロンプトの前に仮想環境の名称があることに留意 ### 仮想環境に入ったままimportされるライブラリ(パッケージ)を取り込む (project1) C:\Users\yamak>conda install numpy ... (project1) C:\Users\yamak>conda install matplotlib ... (project1) C:\Users\yamak>conda install scipy ... (project1) C:\Users\yamak>conda install mpl_toolkits ...
「Jupyter Notebook」で動作を確認してください。
【重要な注意】GPUなしCPUマシンの仮想環境とGPUマシンの仮想環境は独立させます。理由はCPUマシンとではライブラリ(モジュール)のバージョンが違うことが多いので,バージョン管理をする仮想環境の理想に反するからです。なによりTensorFlow-GPUが共存できません。
ターミナル「Anaconda Prompt」で操作するときは選んだ仮想環境の中で操作します。
例:(mlgpu) C:\Users\yamak>conda install numpy(mlgpuは選んだ仮想環境名の例)
◆◆「PyCharm」の起動と仮想環境の構築◆◆
インストールした後の最初の起動で出るメニューです。過去の遺産がなければこの選択になります。
これも最初の1回だけのメニューです。仮想環境を構築するために「New Project」を選びます。
画面の背景が黒色になる場合があります。白色にしたい場合は「Customize」で修正できます。
「New Project」を選んだ直後,最初に紐付ける「Python3」を選びます。
「New environment using」ではWebから新しい「Python3」をダウンロードします。本記事では採用しません。「Anaconda3」をインストールしないのであればそれもいいかもしれません。
「Previously configured interpreter」ではあなたパソコンの既存の「Python3」を使います。もちろん「Anaconda3」のことです。「Jupyter Notebook」も使えますのでこちらの方を強くお勧めします。
「Add interpreter」をクリック。
「Virtual Environment」を選び,「Existing」を選び,「Anaconda3」のディレクトリの「python.exe」を見つけます(ディレクトリの中に選んだ仮想環境名があるので注意)。見つからない場合は「Anaconda3」が壊れています。再インストールは簡単なはずです。
前の画面に戻ったら,「Location」で事前に用意したワーキングフォルダのディレクトリを見つけます。「Jupyter Notebook」と同じであっても違っていてもどちらでも良いです。使うファイルが違うので混乱することはないでしょう。
最初の何も設定していない画面では「Location」はフォルダ「PyCharmProjects」をユーザーアカウント直下に作成していました。何も設定しないと「PyCharm」で作成したソースファイル(スクリプトファイル)はデフォルトでここに格納されます。上で説明したように新しくワーキングフォルダを作るか否かは好みです。
最後に「Create」をクリック。
「Location」で指定したワーキングフォルダが立ち上がります。同時に「main.py」が作成されます。これは最もベーシックなPythonプログラムです。
「main.py」が作成されるのはいくつか前の画面で設定したからです。これにソースコードを書き足すこともできますし,予め作成したソースコードを表示することもできます。
【重要な注意】「Jupyter Notebook」や「PyCharm」で作成したソースコードファイル(スクリプトファイル)の文字コードは「UTF-8」BOMなしです。アプリによっては「UTF-8N」と表示されます。
他のテキストエディタで作成したファイルは「シフトJIS」の場合が多いので「UTF-8」BOMなしに予め変換しておいてください。
【重要な注意】リファクタリングの勧め:本来の意味と少しズレるのですが,プログラムのデバッグの方法の1つで,完全に動作することが判っているソースコードをデバッグしながら動作を確認して少しずつ完成させていくものです。
ソースコードをゼロから書き,数十行できたころいざデバッグしようとしてもどこから手をつけてよいか判らずお手上げになります。
リファクタリングでは,たとえば「main.py」のように,1つのメインと1つのdef関数から始めます。def関数は1つのprint文や1つのreturn文から始めて,そのdef関数が本来の仕様になるまで少しずつプログラムを書き足していくのです。書き足すたびに動作を確認します。
複雑なプログラムでも似たような仕様で動作確認が終わっているコードから始め,リファクタリングしていきます。こうすれば途中であまりなやむことなくストレスなくデバッグを完成することができます。そして何よりもスパゲッティプログラムにならないでしょう。
ファイル名をクリックすれば右ペインにソースコードが表示されます。
左上のメニュー記号をクリックすると最上のラインにメニューが表示されます。
どんなスクリプトでもプログラムを一気通貫でrunさせる操作は同じです。
Run → Run...でファイル名を選びます。1度でもrunさせたファイルは上の画面のようにファイル名が出てくるのでそれを選びます。
「main.py」はライブラリ(パッケージ)を使っていないので(import文がない),runは成功するでしょう。結果は下のペインに出力されています。
「PyCarm」もターミナルが使えます。下のペインの左下のターミナルマークをクリックします。「>」(プロンプト)の前はワーキングフォルダのディレクトリであり,その前に仮想環境の名称が表示されています。
このままcondaコマンドを使ってライブラリ(パッケージ)を取り込むことができます。具体的なコマンドは「Jupyter Notebook」の「Anaconda Prompt」と同じで上に紹介しました
ライブラリ(パッケージ)を取り込む方法は他にもあり,他のWebではグラフィカルなマウスで操作する方法が多いと思いますが,筆者としてはターミナルを使うことをお勧めします。
【重要な注意】「Anaconda Prompt」ターミナルと「PyCarm」ターミナルとは違うものです。「Anaconda3」「PyCarm」のそれぞれの仮想環境で使い分けてください。そして仮想環境の名称が表示されている「>」(プロンプト)にタイプ(コピペ)することが肝要です。
これで起動と仮想環境の構築の解説は終わりです。
◆◆「Jupyter Notebook」「PyCharm」の使い方の研究◆◆
本記事では扱っていませんが,ググるのであれば,「Jupyter Notebook debug」「PyCharm debug」とすればよいです。
◆◆TensorFlow-GPU関係のライブラリ(モジュール)の取り込み◆◆
GPUなしCPUマシンの場合と同じで「Anaconda Prompt」と使います。1つの仮想環境を構築したらそれはGPUマシン専用にすることをお勧めします。理由はCPUマシンとではライブラリ(モジュール)のバージョンが違うことが多いので,バージョン管理をする仮想環境の理想に反するからです。
仮想環境に入ってから操作します。
(mlgpu) C:\Users\yamak>conda install numpy(mlgpuは選んだ仮想環境名の例)
を次のように書きます。
$ conda install numpy('$'はプロンプトのつもり)
このあと「$ conda install」「$ pip install」が混じりますが本当にどちらがよいか迷っていますのでそのままにしています。
◆「lightgbm」はバージョンなしでもよい(installの後はおまじないです)◆
$ conda install -c conda-forge lightgbm
◆「tensorflow-gpu」はバージョン付き(だいぶ前にバージョンを選択しました)◆
$ pip install tensorflow-gpu==2.10.0
◆「keras」◆
「keras」は外部Kerasと内部Kerasがあります。内部Kerasは「tensorflow-gpu」に内蔵されていてインストールは不要です。これらは呼ぶ書式が異なり動作も少し違うようです。要は互換ではないので外部Kerasをインストールします。といっても相性が良いバージョンが判らないので内部Kerasと同じバージョンにします。
$ pip install keras==2.10.0
間違えていれば警告文が出て正しいバージョンを教えてくれます。そのときは
$ pip uninstall keras==2.10.0 または
$ pip uninstall keras
◆インポート名とインストール名が一致しないもの◆
$ conda install scikit-learn(import sklearnでエラー)
$ pip install --upgrade pip --user(1行目はおまじない)
pip install opencv-python(import cv2でエラー)
◆CUDAのバージョン◆
$ nvcc -V
◆cuDNNのバージョン◆
$ where cudnn64_*.dll
正しいディレクトリにcudnn64_8.dllがあればよい。もしなければcuDNNのインストールをやり直す。
◆その他のバージョン◆
$ conda list
◆GPUを認識しているかを確認する方法◆
$ pythonTrueで正常。これでFalseならすべてやり直しです。やっかいなのはどこが悪いのか混乱することです。
Python3を動作させてエラーが出たら警告文をそのままGoogle検索にコピペしてください。どんなエラーでも回答があります。
(2023-12-18追記)
【重要な注意】'h5py'について
モデルや重みなどを記録する.h5ファイルや.hdf5ファイルを読み書きする h5py モジュールがないという警告がたまに出ることがあります。
h5py モジュールをマニュアルでインストールして,それをインポートすれば問題が解決するということになりません。
この問題は tensorflow-gpu が壊れてしまったことに原因があります。 tensorflow-gpu を再インストールしてください。その前にアンインストールしますが,pip install でしたので pip uninstall してください。
h5py モジュールは tensorflow-gpu との相性があり,実は tensorflow-gpu をインストールすればそれに自動的に付いてきます。マニュアルで単独でインストールすることは止めましょう。
警告文をそのままWebで検索してももっともらしい解決策を提案されますが,そのほとんどが h5py モジュールのインストールとインポートですが的外れです。 tensorflow-gpu の再インストールで解決できます。
(2023-12-31追記)
◆◆.ipynbファイルを「Jupyter Notebook」で起動する◆◆
いくつか方法があるのですが,
◆①「Jupyter Notebook」を起動して.ipynbファイルのディレクトリをたどる◆
タスクバーwindowsマーク→すべてのアプリ→Anaconda3→Jupyter Notebook
ブラウザに「Jupyter Notebook」が立ち上がり,url窓は「http://localhost:8888/tree」となっています。
anaconda3がインストールされているユーザーアカウント直下のディレクトリ(フォルダ)が表示されているので,起動しようとしている.ipynbファイルがあるフォルダをディレクトリをたどってWクリックで開けていきます。
最後に,起動しようとしている.ipynbファイルをWクリックで開けます。
◆②「Jupyter Notebook」を起動して.ipynbファイルのディレクトリを貼り付ける◆
先に起動しようとしている.ipynbファイルのディレクトリをコピペします。.ipynbファイルを右クリックして,
プルダウンメニュー→プロパティ→場所:
それをコピーします。ドラッグして全体がハイライトできないときはShift+▶で広げてCtrl+Cでコピーします。筆者の例として,
"C:\Users\yamak\MyHome HP\hp_software_work\HP_Python\HP01_3Dプロット\01_3Dplot"
"yamak"は筆者のユーザーアカウントであり,Anaconda3のインストールフォルダなのでここまでは使わず,この後のディレクトリを使います。
①と同じ方法で「Jupyter Notebook」を立ち上げ,url窓の「http://localhost:8888/tree」の後に,例として,
"\MyHome HP\hp_software_work\HP_Python\HP01_3Dプロット\01_3Dplot"
をペーストします。実際には全部をペーストしてからいらないところを消すのが良いと思います。
この方法はディレクトリをコピペした.ipynbファイルしか起動できません。①の方法は近くのディレクトリの.ipynbファイルも起動できますのでそちらをお勧めします。
◆◆.pyファイルを「PyCharm」で起動する◆◆
「PyCharm」で仮想環境を構築するには,「Anaconda Prompt」で事前に仮想環境を構築しておいて,「PyCharm」でワークフォルダのある「Location」を選択します。
そうすれば「PyCharm」の左ペインに自動的に「Location」で選択したディレクトリが表示されます。そのディレクトリをたどれば起動しようとしている.pyファイルが表示されます。
それをWクリックで右ペインに表示します。左上隅の4本線のメニューアイコン→Runプルダウンメニュー→Run...→.pyファイルを選択
で起動します。2回目からはプルダウンに"Run.pyファイル"が出るのでそれをクリックすればよいです。
仮想環境の構築が事前に終了している場合は,左上隅の4本線のメニューアイコンの右側に「Location」の選択肢がプルダウンメニューにありますので選択(クリック)してください。
◆◆.pyファイルをターミナル「Anaconda Prompt」で起動する◆◆
.pyファイルはスクリプトともモジュールとも言います。「PyCharm」で起動する方が簡単なのですが,ターミナル「Anaconda Prompt」で起動する方法を説明します。
$ python 3Dplot.py($はプロンプトのつもり)
とするだけなのですが,プロンプトの前は.pyファイルのあるフォルダのディレクトリである必要があります。
(project1) C:\Users\yamak>cd MyHome HP(cd ; change directory)
というようにディレクトリをたどる方法もありますが,一発でできる方があります。
(project1) C:\Users\yamak>cd (スペースを忘れずに)
というようにプロンプトの後に”cd ”をタイプしてから,.pyファイルがあるフォルダのアイコンを「Anaconda Prompt」のどこでもよいからドラッグ&ドロップすると,
(project1) C:\Users\yamak>cd "C:\Users\yamak\MyHome HP\hp_software_work\HP_Python\HP01_3Dプロット\01_3Dplot"
となりますので,Enterすると,
(project1) C:\Users\yamak\MyHome HP\hp_software_work\HP_Python\HP01_3Dプロット\01_3Dplot>
となりますので,
$ python 3Dplot.py($はプロンプトのつもり)
とタイプすれば.pyファイルを起動できます。
さて,ディレクトリを遡さかのぼる方法は,
$ cd .. または $ cd ../
とします。また,行きたいフォルダのアイコンをドラッグ&ドロップしてもよいです。
以上