Kerasのサンプルコードを使うため、仮想環境にTensorflowをインストールしてみた。
conda create -n tf tensorflow
conda activate tf
Anaconda公式をみるとこれで仮想環境も作れるしTensorflowもインストールできるらしい。念の為CPUの方にした。
しかし、サンプルコードを実行しようとするとどうしても以下の「TextVectorization」の箇所でエラーが出てしまう。
from tensorflow.keras.layers import TextVectorization
色々調べると、TextVectorizationは文字列のID変換などをしてそのまま訓練できるように一気に前処理してくれるレイヤーで、Tensorflow2.1で追加された新しい機能らしい。今使っているTensorflowのバージョンが2.0なのでバージョンアップする必要がありそう。
ということで、一旦先ほど作成したTensorflow用の仮想環境を削除し、
conda create -n myenv
conda activate myenv
適当に名前をつけて新しい仮想環境を用意しアクティベートする。
conda install tensorflow==2.1.0
と2.1.0とあらかじめバージョンを指定してみた。すると、
PackagesNotFoundError: The following packages are not available from current channels:
- tensorflow==2.1.0
Current channels:
- https://repo.anaconda.com/pkgs/main/osx-64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/r/osx-64
- https://repo.anaconda.com/pkgs/r/noarch
To search for alternate channels that may provide the conda package you're
looking for, navigate to
https://anaconda.org
and use the search bar at the top of the page.
とエラーが出てしまって指定のバージョンをインストールできない。
conda search tensorflow
で入れられるTensorfowのバージョンを調べられるとのことで試してみると、
tensorflow 1.8.0 0 pkgs/main
tensorflow 1.9.0 eigen_py27hc3c435f_1 pkgs/main
tensorflow 1.9.0 eigen_py35h40edd97_1 pkgs/main
tensorflow 1.9.0 eigen_py36hf07811a_1 pkgs/main
tensorflow 1.9.0 mkl_py27h45ac830_1 pkgs/main
tensorflow 1.9.0 mkl_py35h34e052c_1 pkgs/main
tensorflow 1.9.0 mkl_py36h4fc8490_1 pkgs/main
tensorflow 1.10.0 eigen_py27hf93ee88_0 pkgs/main
tensorflow 1.10.0 eigen_py35h5ac2770_0 pkgs/main
tensorflow 1.10.0 eigen_py36h0906837_0 pkgs/main
tensorflow 1.11.0 eigen_py27h6ba8707_0 pkgs/main
tensorflow 1.11.0 eigen_py36hae858b4_0 pkgs/main
tensorflow 1.11.0 mkl_py27h6c571c4_0 pkgs/main
tensorflow 1.11.0 mkl_py36h44b7a51_0 pkgs/main
tensorflow 1.12.0 eigen_py27hdc0099c_0 pkgs/main
tensorflow 1.12.0 eigen_py36hce7705b_0 pkgs/main
tensorflow 1.12.0 mkl_py27h5e07bc0_0 pkgs/main
tensorflow 1.12.0 mkl_py36h2b2bbaf_0 pkgs/main
tensorflow 1.13.1 eigen_py27h96e6990_0 pkgs/main
tensorflow 1.13.1 eigen_py36h1469504_0 pkgs/main
tensorflow 1.13.1 eigen_py37hbabb2b2_0 pkgs/main
tensorflow 1.13.1 mkl_py27h5a22803_0 pkgs/main
tensorflow 1.13.1 mkl_py36haf07a9b_0 pkgs/main
tensorflow 1.13.1 mkl_py37h70c3834_0 pkgs/main
tensorflow 1.14.0 eigen_py27hcfe1f94_0 pkgs/main
tensorflow 1.14.0 eigen_py36hedc65ad_0 pkgs/main
tensorflow 1.14.0 eigen_py37h6c84cfc_0 pkgs/main
tensorflow 1.14.0 mkl_py27hcc9de3b_0 pkgs/main
tensorflow 1.14.0 mkl_py36h933f829_0 pkgs/main
tensorflow 1.14.0 mkl_py37h085be34_0 pkgs/main
tensorflow 1.15.0 eigen_py27hb2c3b19_0 pkgs/main
tensorflow 1.15.0 eigen_py36h186cbd8_0 pkgs/main
tensorflow 1.15.0 eigen_py37ha0414c4_0 pkgs/main
tensorflow 1.15.0 mkl_py27hb55555a_0 pkgs/main
tensorflow 1.15.0 mkl_py36h975b573_0 pkgs/main
tensorflow 1.15.0 mkl_py37hb249377_0 pkgs/main
tensorflow 2.0.0 eigen_py27h768aa06_0 pkgs/main
tensorflow 2.0.0 eigen_py36h7b0d64e_0 pkgs/main
tensorflow 2.0.0 eigen_py37h153756e_0 pkgs/main
tensorflow 2.0.0 mkl_py27hf64da92_0 pkgs/main
tensorflow 2.0.0 mkl_py36ha38f243_0 pkgs/main
tensorflow 2.0.0 mkl_py37hda344b4_0 pkgs/main
2.1以降がない。
そもそも2.0以前のバージョンでないと入れられない?
そこでたどり着いた記事がこれ。
How to install tensorflow 2.1 with conda?
最新バージョンのTensorflowをインストールするにはpipが推奨されているらしい。Anaconda環境でpipはなるべく使わない方がいいとよく見かけるけど、記事をみると大丈夫そう…
念の為pythonのバージョンをアップデートしてから、仮想環境上で
pip install tensorflow
をコマンド。
なんかうまくいったっぽい。
Anaconda Navigatorでも確認してみたら
2.4.0がインストールされてる!
「TextVectorization」のエラーも出なくなった。
コメント