【Keras入門】ディープラーニングの使い方/サンプル集

Pythonモジュール「Keras」で深層学習(ディープラーニング)を行う方法について入門者向けに使い方を解説します。

【Keras】概要と特徴

Kerasとは、深層学習(ディープラーニング)を簡単に扱えるPythonモジュールです。
Pythonの深層学習モジュールである「TensorFlow」「CNTK」「Theano」の機能をより簡単に扱えるようにしたものがKerasです。
「TensorFlow」「CNTK」「Theano」のうちをどれを動かすかは選択できますが、選択するモジュールは別途インストールしておく必要があります。

主な特徴
1 ディープニューラルネットワーク(ディープラーニング)専用の機械学習モジュール。scikit-learnと似た感じで書けるので、他のライブラリと比べても簡単に利用可能
2 MITライセンスなので商用利用可能
3 情報が多く日本語ドキュメントも充実→公式日本語ドキュメント
4 バックエンドに機械学習モジュール「TensorFlow」「CNTK」「Theano」は動いており、どれを使うか選択可能
5 クロスプラットフォームで利用可能(iOS、Android、ブラウザ、Google Cloud、JVM、ラズベリーパイ、Pythonのウェブアプリなど
6 豊富な企業での採用実績(Netflix,Uber,Yelp,Instacart,Zocdoc,Squareなど)
7 複数GPUの並列処理が可能
8 開発サポートが充実(Googleを中心として、Microsoft、NVida、Amazonなどもサポート→詳細は公式ドキュメント「なぜKerasを使うか?」
公式 Keras日本語公式ドキュメント
【人気比較】Keras、PyTorch、Tensorflow、Caffe、Theano
Pythonで人気なディープラーニング(深層学習)系フレームワークKeras、PyTorch、Tensorflow、Caffe、Theanoの注目度を比較してみました。

動画解説

本ページの内容は以下動画でも解説しています。

【基礎編】Kerasの使い方

Kerasの基礎的な使い方について下記に整理しました。

種類 項目
インストール KerasをMac, Windows環境にインストールする方法を解説します。
XOR演算の学習 動作確認も兼ねてXOR演演算を学習してみます。
モデル構造の可視化 作成したモデルの構造を可視化します。
学習結果の保存・読み込み 学習したモデルを外部ファイルに保存したり、それをロードして利用する方法を解説します。
画像分類①(手描き数字) mnistデータセットとMLP(多層パーセプトロン)学習し、手書き文字画像を分類します。
学習過程の可視化 損失関数、評価関数の推移をグラフ化します。
画像分類②(手描き数字) mnistデータセットとCNN(畳み込みニューラルネットワーク)学習し、手書き文字画像を分類します。
画像分類③(CIFAR-10) CIFAR-10データセットとCNNで学習し、画像認識・分類を行います。
画像分類④(CNN) CNN(畳み込みニューラルネットワーク)で学習し、画像認識・分類を行います。
画像分類⑤(VGG16) VGG16データセットで学習し、画像認識・分類を行います。
画像分類⑥(転移学習、Fine-tuning) 転移学習、Fine-tuningを使って効率よく学習し、画像認識・分類を行います。
セグメンテーション
敵対的生成モデル
ARMA 統計モデル
ARIMA/SARIMA 統計モデル
RNN
LSTM
GRU
単語・文章のベクトル化 word2vec/doc2vecで単語や文章のベクトル化
単語の重要度推定 TFIDFで単語の重要度を推定します。
文章の感情推定 osetiで文章の感情を推定します。
文書自動生成 LSTMで文書を自動生成します。
Python 機械学習
西住工房

コメント

タイトルとURLをコピーしました