Tensorflow、Python、OpenCV などのバージョンの確認方法をまとめておきます。
個別に確認する方法、バージョン一覧で一括でチェックする方法のいずれもまとめておきます。
なお、以下の環境で動作確認をしています。
環境: Windows パソコン、Python 3.X (+ Anaconda)、OpenCV、Tensorflow インストール済み。
背景
物体認識などのサンプルコードを動かそうとしたとき、開発環境やソフトウェアのバージョンの組み合わせによっては、動くケースと動かないケースが生じています。
Pygame のように、最新版のソフトウェアを複数組み合わせると動かなくなることもよくあります。
また、機械学習の分野では、ソフトウェアのアップデートが早く、最新のソフトウェア環境では書籍の通りにやっても動かない、半年前は動いていたが現在の環境では動かない、といったことも頻発します。
バージョンアップのたび、また、パッケージごとに、ネット検索で最新バージョンと確認コマンドを探すのも煩雑です。
ということで、Python や機械学習関連を中心に、バージョンの確認方法に関するコマンドや手順をまとめ、公開しておくことにします。
方法1:個別にバージョンを確認する
コマンドプロンプト上で、以下のコマンドを入力することで確認できます。
わかりやすさのため、以下、戻り値の例も記載しておきます。
Tensorflow のバージョン確認方法
コマンドプロンプト上で以下を実行すると確認できます。
> python
>> import tensorflow as tf
>> tf.__version__
'1.14.0'
>> exit()
※ なお、ここで、”__” は、アンダーバー “_” が2つ分です。サイトの表示の都合上、このようになっています。
※ 上記のコマンドでうまく動かない場合は、コマンドライン上で “pip list” を実行してみてください。”tensorflow 2.11.0″ 等の表示が出ると思います。Tensorflow のバージョンによってはコマンドが定義されておらず、エラーが出るものがあるようです。
参考:Tensorflowのアップデート方法
なお、以下のコマンドで、Tensorflowのアップデートが可能です。
> pip install --upgrade tensorflow
OpenCV のバージョン確認方法
OpenCV の場合は、以下です。
> python
>> import cv2
>> cv2.__version__
'4.5.0'
>> exit()
Python のバージョン確認方法
> python --version
Python 3.7.9
方法2:バージョン一覧ですべてをチェックする
pip コマンドを使う場合
以下のコマンドを実行することで、インストールされているモジュールを一括でチェックできます。
> pip list
※ Keras を使っている場合は、上記のリストから Keras のバージョンも確認できます。Keras と Tensorflow は統合されていますので、Tensorflow をインストールすると Keras も入っていると思います。
※ 同様に、機械学習関連の scikit-learn についても、このコマンドで確認できると思います。
conda/Anaconda を使用している場合
もし、conda/Anaconda を使用している場合は、以下のコマンドを実行することで、一括で確認できます。
> conda list
表示例
anaconda custom py37_1
conda 4.9.2
numpy 1.16.4
opencv 4.5.0
pandas 1.1.3
pygame 2.0.0
python 3.7.9
tensorflow 1.14.0
tensorflow-gpu 1.14.0
※ tensorflow のみならず、numpy、pandas、conda、opencv など、登録されている関連パッケージのすべてを確認できます。
※ 私の環境(Windows、GPUつき)の一例(base)では、python 3.7.9、tensorflow 1.14.0、tensorflow-gpu 1.14.0 とした仮想環境を作っており、tensorflow を使った機械学習、物体認識のスクリプトが特に問題なく動いています。
リストから指定したプログラムを抽出する場合
上記のコマンドでは、インストールされているプログラムがすべて表示されてしまいます。
そこで、指定した文字列を含むプログラムについてバージョンを一括で調べたい場合は、たとえば、以下とします。”pip list” の部分は、”conda list” としても同様に動きます。
> pip list | findstr "conda numpy opencv pandas pygame python tensorflow"
“pip list” の出力をパイプ “|” でつなぎ、指定した文字列のいずれかが含まれる場合は抽出するようにしています。
確認したいプログラムがあらかじめわかっている場合は、上記のようなコマンドを決めておけば、出力形式を固定できます。
なお、上記のコマンドは、Windows の場合の例です。Linux であれば、「findstr “conda numpy…”」の部分は 「grep -e conda -e numpy … 」 とします。
まとめ
機械学習関連でよく使う Tensorflow、Python、OpenCV、その他のバージョンの確認方法をまとめました。
なお、conda で python 等のパッケージのバージョンを指定して仮想環境を作る手順についてもまとめています。もし興味のある場合は、以下の関連リンクなども参考にしてみてください。
関連リンク
・ よく使う conda コマンドのまとめ 【仮想環境一覧】
・ YOLOv5 のインストール手順 【Windows10 & Anaconda】
・ LAMP のバージョン確認コマンド 【Linux】
・ すでにインストールされているパッケージを確認する 【Linux】