Anaconda + Tensorflow + Visual Studio (Codeじゃないよ) を実現した、とても躓きながら

スポンサードリンク

こんにちは。ふぁんたです。



土日を使って、Visual Studio でTensorflow(機械学習ライブラリ)の環境を整えていました。



環境構築、VisualStudioをインストールしてからというもの、完全に不要でした。



C#がやりたい→VisualStudioでええやん

C++が書きたい→VisualStudioでええやん

pythonをちょっとやるか→VisualStudioで…

Unityでゲーム作る!→VisualStud…

VRのゲームを作ろうか→V…



それでも、pythonに他のパッケージを足す、ということはしたことがありませんでした。



それが、Tensorflowの本を書い、kaggleに手を出してみようとし、Kaggleで勝つための本(話題になってるやつ)を注文したところまできて、環境構築をしていないことに気づきました。



やってみました。2時間ぐらいありゃあできるだろうって。



2日かかりました。雑魚の極みです。



たくさーん、引っかかったので、のちの人たちの道標になればいいなと思いまして、やり方を残していこうと思います。




Anacondaのインストール


Anacondaは、pythonのライブラリを便利に使わせてくれる便利ツールです。



公式サイトの右上のDownloadボタンから、Anacondaをダウンロード、インストールします。

お使いのOSに合わせてインストーラーを選択してくださいね。



インストール中、チェックを入れるとNot Recommendedって赤文字で出てくる部分があるんですけど、おすすめしないらしいのでチェックは入れないままでいいです。


CUDA,cudnnのインストール


CUDA,cuDNNとも、TensorflowでDNN(ディープニューラルネットワーク)+GPU(グラフィックボード)するためのアイテムです。

CUDAcuDNNをインストールしましょう。



リンク貼ってるので、そこからダウンロードしてください。

cuDNNの方は、会員登録が必要になりますので注意してください。


VisualStudioのインストール


Visual Studioは、いろんなプログラミング言語で書いて実行できる、最強の開発環境です(個人の感想です)。

インストールにとっても時間がかかります。

Visual Studio インストールページ

お好きなバージョンをダウンロードしましょう。

紆余曲折を経て、2017を選んだんですけど、これはやっぱり最新のもののほうがいいのかな。



C++,C#など、書ける言語はたくさんあるんですが、その中から必ず

pythonを選んでください。この後必要になるので。



pythonと一緒にAnacondaがインストールできますが、Anacondaはもうインストールしているはずなので、チェックを外し、インストールしないようにしてください。


Anacondaの設定(最重要)


Anacondaをいじって、AnacondaにTensorflowを認識させてやりましょう。



まずは、新しいpython環境を作り、Tensorflowを中に入れます。







ここでポイント。



[環境構築]TensorFlow動かすと「ImportError: DLL load failed:~」が出る https://qiita.com/grinpeaceman/items/c55ab14d843828fa05ab #Qiita



これに沿ってやりましょう。



このコマンドを入れると新しい環境ができて、Tensorflowも使えるようになります。(再生の形のボタンを押してターミナルを開いて入れる)


Visual Studio側の設定


ここまできたら、AnacondaとVisual Studioをつなぎます。



右の方に、ソリューションエクスプローラーというのが出てくると思います。



この「python環境」なるものを右クリックし、Python環境を追加/削除を選びましょう。





AnacondaをいじってTensorflowを入れたときにつけた名前がリストの中にあるので、チェックを入れましょう。





ものによっては、データベースの更新が始まり、終わらないことがあります。

そうなった場合は失敗の可能性が高いので、更新を中断したりやり直したりしてください。

僕はここで1ヶ月ぐらい詰んでました。





pytorchとか、Tensorflowとか、scikit-learnとか、

学習するためのツールがたくさんあるんですけど、それらの違いとかについても調べてみたいと思います。

情報発信のための情報収集大事。まだまだぜんぜん知識が足りねー。

スポンサードリンク