Deep Learning on AWSについて
そもそもDeep Learning(深層学習)とは?
Deep Learningとは、十分なデータ量があれば、人間の力なしに機械が自動的にデータから特徴を抽出してくれるディープニュールネットワーク(DNN)を用いた学習のことです。
AWS 深層学習 AMI
AWSでは、開発者のさまざまなニーズをサポートするために、AWS 深層学習 AMIという機械学習の専門家と研究者がクラウド上であらゆる規模の深層学習を加速させるためのインフラストラクチャとツールを提供するサービスです。
AWS 深層学習 AMIの種類は?
CONDA AMI
→オープンソースパッケージおよび環境管理ツールであるCondaを使用して作成されたディープラーニングフレームワーク用の個別のPython環境を備えたCondaベースのAMIです。
BaseAMI(基本AMI)
→独自にカスタマイズした深層学習モデルをデプロイするためのGPUドライバーとライブラリを備えたBaseAMIです。
料金は?
AWS 深層学習 AMIに対する追加料金は発生しません。アプリケーションの保存や実行に必要なAWSリソースに対してのみ料金が発生します。
Deep Learningと人工知能、機械学習の違い
3つのキーワードの関係は、大まかにいうと「人工知能>機械学習>Deep Learning」という構造になっています。良くある誤解ですが、Deep Learning自体がAIというわけではなく、人工知能の要素技術の1つという位置付けであり、どれも違う技術というわけではないのです。
1.人工知能(AI)
人工知能とは、人間にしかできなかったような高度に知的な作業や判断をコンピュータを中心とする人工的なシステムにより行えるようにしたものです。
AIは、大まかに2つに分類することができます。
「弱いAI」
→見かけ上、人間と同等のレベルの知能を持つが、その知能を使えるタスクが限られる
「強いAI」
→実際に人間と同等のレベルの知能・汎用性を持ち、多種のタスクをこなせる
2.機械学習(ML)
コンピュータにデータのパターンや構造を分析、解釈させ、人間が介在せずに学習、推論、判断できるようにしたものです。
MLには、具体的に機械学習にも以下のような学習の仕方に種類があります。
・教師あり学習
→正解(正しい出力)付きのデータを機械に学習させる方法
∟回帰:データを入力すると、出力として数値を返す方法(予測)
∟分類:データを入力すると、出力としてデータの属性や種類を返す方法(ラベリング)
・教師なし学習
→正解を必要とせず、膨大なデータから自動的に算出した特徴量から構造や傾向、法則などを導くことで機械に学習させる方法
∟クラスタリング:データを入力するとそのデータのグルーピング結果を返す方法
・強化学習
→自ら試行錯誤して最適な行動を見つける学習で、直近の目標を達成し、報酬を与えることで上達していく方法
3.Deep Learning (DL)
Deep Learningはアルゴリズムに種類があり、それぞれ得意分野が違うのでビジネスにDeep Learningを導入する際、どのアルゴリズムを使うのが適切なのか検討する必要があります。
以下のように3つ紹介します。
・DNN(Deep Neural Network,ディープニューラルネットワーク)
→ニューラルネットワーク(NN)というパターン認識をするように設計された、人間や動物の脳神経回路をモデルとしたアルゴリズムを多層構造化したもの。
・CNN(Convolutional Neural Network,畳み込みニューラルネットワーク)
→局所的な情報の抽象化及び位置普遍性をもたせた順伝播型ニューラルネットワークを利用したアルゴリズム。DNNを2次元データに対応させたもので、画像に対して高いパターン認識能力を示します。
・RNN(Recurrent Neural Network,再帰型ニューラルネットワーク)
→音声、動画データのような可変長のデータを扱えるようにするために中間層に再帰的な構造をもたせた双方向に信号が伝播するニューラルネットワークを利用したアルゴリズム。
まとめ
機械学習は、限定的かつ構造化されたデータが利用可能な場合に用いられることが多いです。一方、Deep Learningは、複雑な非構造データを用いる際に利用されることが多く、「音声認識」「画像認識」「自然言語処理」などの分野に適用されています。
最後に、Deep Learningはコンピュータが自律的に学習し、管理をほぼ必要とすることなくタスクを実行でき、科学と産業に驚異的な利点をもたらすため、このDeep Learningに注目する企業がますます増えています。従来の機械学習と異なり、Deep Learningでは、人工的に作成した「ニューラルネットワーク」によって人間の脳の学習と情報処理をシミュレートし、データから複雑な概念や関係を抽出できます。
このように、Deep Learningの特徴や人工知能・機械学習との違いを理解して、AWS 深層学習 AMIを活用してみてはいかがでしょうか。