Python、Kerasでディープラーニング①ニューラルネットの定義と活性化関数

 

今回からPythonで使える機械学習のフレームワークKerasを利用してのディープラーニングの実装を行います。

基本のコード

Kerasの基礎であるモデルに関する基本のコードについて

 

活性化関数

ニューラルネットワークのニューロンが発火した際、どのような値が伝播さえるかを決定するのが活性化関数です。ここでは2種類の活性化関数を紹介します。

シグモイド関数

もっとも基本的な発火方法が0もしくは1の値を返すのに対し、シグモイド関数は非線形の関数で-から+の値までを曲線で返します。これによりニューロンの曖昧な回答が可能となります。

ReLU関数

ReLU関数はある入力までを0で返しそれ以上になると線形で返します。

入力、重み、バイアス、活性化関数の関係図

 

一つのデータの各要素に重みがかけられた値とバイアスを足した値を活性化関数に入れ発火した値が次のニューロンに伝わる。

脳の神経伝達はこの繰り返しだという考え方が機械学習の基礎のようです。

Python の環境作り決定版(anacondaとPycharmを使います。)

1:anacondaのインストール

https://www.anaconda.com/download/

最新版をダウンロードしてインストールしてください。

検索窓でanaconda navigator がインストールされていることを確認し起動します。

 

criateでpythonのバージョンを選んで環境を作成し、その環境でコマンドプロンプトと起動させ、必要なモジュールのインストールとかができます。

便利んごね。

試しにcreateから名前を「test_env」としてpython3.6を指定し環境を作成しましょう。

作成中は右下のインジケーターが動いてるかと思われます。

インストールが終わるとその環境で右クリックしopen tarminalでコマンドプロンプトを起動させてみましょう。

左上にenvs(作った環境たちのディレクトリ)までのパスが表示されていると思います。

重要なのでコピー、デスクトップにリンクしておくと便利かもしれません。

2:Pycharmのインストール

https://www.jetbrains.com/pycharm/download/#section=windows

無料のcommunityエディションをダウンロードインストールしてください。

起動させたら右上Fileからnew Projectで新規プロジェクトを作成しましょう。

作成時にそのプロジェクトの名前と実行されるpython.exeファイルを指定します。

そこでProject InterpreterをSystem Interpreterを選択し歯車マークからAnacondaで作った環境のpython.exeを選択します。

ディレクトリはおそらく、

C:\Users\ユーザー名\Anaconda3\envs\”Anacondaでの環境名「test_env”\python.exe

です。

python.exeを指定するUIが絶妙に使いづらいですが頑張りましょう。

 

先ほどしらべたenvs内の作成した環境の中にpython.exeがあるのでそれをしていしてOKでプロジェクトを作成しましょう。

※pythonw.exeとかいろいろ別なファイルがあるので注意です。

プロジェクトを作成したら新しく.pyファイルを作成します。

名前は適当に。

 

3:HelloWorldの実行

こんな感じでしょうか。

右上に再生ボタン(実行ボタン)っぽいのがありますがまだ押せません。

上のRunからRunで実行したいpythonファイルを選択し実行してください。

下のコンソールにHello BYTEと表示されれば成功です。

 

Happy Python Life.

anaconda,cuda toolkit 8.0 でTensorflow 1.3.0 開発環境を整える。

最近はやりのディープラーニングで遊ぶためにNvidia GPU を使ったTensorFlowの開発環境を整えてみましょう。

 

用意するもの

anaconda python3.6

CUDA Toolkit 8.0 GA2

Nvidia cuDNN

 

Python anaconda

anaconda を使ってPython3.6をインストールします。

TensorFlow1.3.0はPython3.5までしか対応していませんが、のちに3.5の仮想環境を組みます。

とりあえず3.6のanaconda5をインストールしてください。

設定はデフォルトです。

 

CUDA Toolkit 8.0

現行のCuda Toolkit のバージョンは9.0ですがTensorFlow が対応していないのでNvidiaのarchive(CUDA Toolkit 8.0 GA2)からToolkit 8.0をインストールしてください。

設定はデフォルトです。

インストールだが終わったら

下記のフォルダの構造を確認してください。

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

画像のようになっていたらOKです。

Nvidia cuDNN

TensorFlowではNvidiaが提供するGPUtoolkitのライブラリ、cuDNNを使います。

Nvidia cuDNN

からDownloadをクリックしNvidia Developerへの登録を求められるので登録し

Download cuDNN v6.0 (April 27, 2017), for CUDA 8.0

をダウンロード、解凍してください。

そしてファイル構造が

のようになっているので各フォルダの中身を

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

の対応するフォルダにコピーしてください。

管理者権限が求められます。

なおlibにはさらにx64というフォルダにcudnn.libというファイルがあるのでそのファイルを

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64\

にコピーしてください。

TensorFlowのインストール

それではTensorFlowのインストールを行っていきます。

anaconda navigatorを立ち上げます。

Createから名前をtf130-gpu_python3_5(任意)としPythonのバージョンを3.5にしてCreateを押します。

環境構築が終わると三角マーク ▶ からopen terminalより

コマンドプロンプトが立ち上がるので

としtensorflow1.3.0をインストールします。

インストールまでしばらく待ちましょう。

なお上記のCUDAのインストールがうまくいっていない場合はここでエラーになるかと思います。

opencvのインストール

なにかと役に立つopencvもここでインストールしておきます。

openCVはPython3.6ではインストールできません。

Python3.5でインストールを行います。

より途中でy/nが出るのでyで進めます。

よりpython3.5.4を起動させ

 

が問題なくいけばインストール成功です。

おわりに

これにてtensorflowの開発環境は整いました。

しかし、エディターはどうするでしょうか。

インタープリターで対話形式で行うにはディープラーニングではつらいと思います。

次回ではPythonのコード補完を持ったPycharmのインストールを行います。