ディープラーニング(深層学習)のITreview Grid

 ディープラーニング(深層学習)とは、多層ニューラルネットワークのアルゴリズムによる機械学習技法の1つ。人間の脳神経回路モデルを多層構造化した仕組みで、十分な数量の学習データ(ビッグデータ)から人手を介さずに自動的にデータに含まれる潜在的な特徴を抽出することができる。マシンラーニングでは特徴を人間が定義するのに対して、ディープラーニングでは学習データから自動的に特徴を抽出することができる。現在は急速に実用化が進むAIの要素技術として用いられ、特に画像認識、音声認識、言語処理の分野に応用されている。


ディープラーニング(深層学習)の導入効果


特徴の抽出を自動化

 従来の機械学習(マシンラーニング)は、学習データに対し人間が特徴を定義する必要があり、複雑な特徴を表現できないという課題がある。一方、ディープラーニングでは学習データから自動的に特徴を抽出するアルゴリズムが組み込まれており、人手を介さずに詳細・複雑な特徴を抽出できる。

データから情報を抽出

 自動的に特徴を抽出できるディープラーニングは、例えば画像データに写っている形状や色からオブジェクトを認識し、そこから言語化されたキャプションを生成する。これにより、画像データへ自動的にタグ付けし、自然言語による画像検索を可能になる。

汎用ハードウェアでコスト削減

 大量のデータを高速に学習する必要がある機械学習では、スーパーコンピュータのようなHPC(ハイパフォーマンスコンピューティング)ソリューションが必要だった。しかしディープラーニングでは、行列演算処理が得意なGPU(グラフィックプロセッサユニット)など汎用的なハードウェアを利用して高速な処理が可能となっており、大幅なコスト削減効果が得られる。


ディープラーニング(深層学習)の対象ユーザー


導入検討ユーザー
 ・自社ビジネスの戦略立案、事業効率化に取り組むに当たり、人手によるデータ分析や経験値以外の新たな知見を求める経営層や事業部門長、エンジニアなど

利用ユーザー
 ・経営企画部門や各事業部門のエンジニア、データ分析担当者、データサイエンティストなど


ディープラーニング(深層学習)の機能一覧


特徴を認識・抽出する機能

機能 解説
画像処理・変換 画像から特徴を抽出しやすくするために画像のノイズやひずみを取り除き、輪郭を強調したり明るさや色を調整したりしてオブジェクトを抽出する
領域抽出・認識 画像の背景とオブジェクトを分離してオブジェクトの領域を抽出し、目的の特徴を認識する
音声認識 人間の声を認識してテキストに出力したり、音声の特徴から話者を特定・識別したりする
言語処理 人間が日常的に使う話し言葉、書き言葉(自然言語)を処理・認識する。画像から手書き文字を読み取ってテキストに変換する


学習・開発環境のサポート

機能 解説
各種フレームワークのサポート Apache MXNet、Caffe、TensorFlow、Theano、Torch、PyTorchなど、事前に構成済みの各種フレームワークをサポートする
GPUのサポート NVIDIA CUDAドライバ、cuDNNドライバなどGPUを利用した機械学習をサポートする
モデルの可視化 Apache MXNetモデルサーバやTensorFlow Serving、TensorBoardなどモデル可視化機能をサポートする
パッケージ管理とデプロイ Anacondaプラットフォームによる大規模データ処理、予測分析、科学計算に対応する


外部システムとの連携

機能 解説
API提供 外部システムから機械学習機能を利用できるAPIを提供する
複数のプログラミング言語サポート 統計解析向けのR言語、汎用プログラミング言語のPythonなどを使って機械学習用のプログラミング環境を提供する


ディープラーニング(深層学習)の選定ポイント


ツールごとの違い

 ディープラーニングは、大きく分けて以下のようなツールを用いて行う。

・パブリッククラウドが提供する学習済みのディープラーニングサービス
 APIを利用してクラウド上のサービスに接続する。すでに学習済みのサービスが利用できる他、学習を繰り返して特定の用途に応用できる。

・特定用途に利用するために一から育てるディープラーニング
 オンプレミスまたはクラウドにディープラーニングを実行する環境を用意する。学習を繰り返すことで、特定用途に特化したAIを構築できる。

 また、ディープラーニングを応用したサービスとして顔認識、チャットbotやレコメンデーションなどもある。

導入形態

 ディープラーニングには、オンプレミス環境に導入するソフトウェアパッケージ製品(オープンソースも含む)と、クラウドサービスとして提供されているツールがある。オンプレミス環境のツールは、工場など生産現場の製造ラインにおける品質管理、生産装置の異常・故障の予知といったスタンドアロン、またはクローズドなネットワークでも利用できる。クラウドサービスは自前でツールを用意することなく、初期投資を抑えながら機械学習を始めることができる。

価格形態・契約形態

 ディープラーニングの価格は、製品・サービスによって異なる。オープンソースのフレームワークを導入する場合は無料で利用することも可能。オンプレミス環境に導入する製品の場合。利用するCPUのコア数、GPU数、サーバ台数の拡張、機能の追加などによってオプション料金が発生する場合がある。クラウドサービスの場合は、利用する機能や利用時間、学習させるデータ容量などによって異なる。


ディープラーニング(深層学習)のシステム要件、他システムとの連携方法


導入時に必要なもの

 オンプレミス環境に導入するソフトウェアパッケージ製品の場合は、ソフトウェアをインストールして実行するためのサーバ、大量の学習用データを格納するストレージが最低限必要となる。パブリッククラウドのディープラーニングサービスの場合はハードウェアを用意する必要はないが、学習用データは用意しなげればならない。

導入後の運用方法・サポートの有無

 導入後の運用は、ディープラーニングを利用する事業部門のユーザーが主体となって行う。一般的には経営企画部門や各事業部門のデータ分析担当者、またはデータサイエンティストなどが利用する。

 保守サポートは、オープンソースの場合は全て自前で行わなければならない。パッケージの場合は製品のライセンス価格とは別に費用が発生する。パブリッククラウドでは、そのサービスの保守サポート規定に従う。

他製品との連携方法

 例えば独自に構築した監視システムのようなアプリケーションから、パブリッククラウド上にあるディープラーニングサービスにWeb API経由で接続し、学習を実行したり実行結果を活用したりすることになる。

 統計解析ツールやデータ可視化ツール、BI(ビジネスインテリジェンス)などを組み合わせて利用することもある。

ディープラーニング(深層学習)のメニュー

ディープラーニング(深層学習)の基礎知識

 ディープラーニング(深層学習)とは、多層ニューラルネットワークのアルゴリズムによる機械学習技法の1つ。人間の脳神経回路モデルを多層構造化した仕組みで、十分な数量の学習データ(ビッグデータ)から人手を介さずに自動的にデータに含まれる潜在的な特徴を抽出することができる。マシンラーニングでは特徴を人間が定義するのに対して、ディープラーニングでは学習データから自動的に特徴を抽出することができる。現在は急速に実用化が進むAIの要素技術として用いられ、特に画像認識、音声認識、言語処理の分野に応用されている。


ディープラーニング(深層学習)の導入効果


特徴の抽出を自動化

 従来の機械学習(マシンラーニング)は、学習データに対し人間が特徴を定義する必要があり、複雑な特徴を表現できないという課題がある。一方、ディープラーニングでは学習データから自動的に特徴を抽出するアルゴリズムが組み込まれており、人手を介さずに詳細・複雑な特徴を抽出できる。

データから情報を抽出

 自動的に特徴を抽出できるディープラーニングは、例えば画像データに写っている形状や色からオブジェクトを認識し、そこから言語化されたキャプションを生成する。これにより、画像データへ自動的にタグ付けし、自然言語による画像検索を可能になる。

汎用ハードウェアでコスト削減

 大量のデータを高速に学習する必要がある機械学習では、スーパーコンピュータのようなHPC(ハイパフォーマンスコンピューティング)ソリューションが必要だった。しかしディープラーニングでは、行列演算処理が得意なGPU(グラフィックプロセッサユニット)など汎用的なハードウェアを利用して高速な処理が可能となっており、大幅なコスト削減効果が得られる。


ディープラーニング(深層学習)の対象ユーザー


導入検討ユーザー
 ・自社ビジネスの戦略立案、事業効率化に取り組むに当たり、人手によるデータ分析や経験値以外の新たな知見を求める経営層や事業部門長、エンジニアなど

利用ユーザー
 ・経営企画部門や各事業部門のエンジニア、データ分析担当者、データサイエンティストなど


ディープラーニング(深層学習)の機能一覧


特徴を認識・抽出する機能

機能 解説
画像処理・変換 画像から特徴を抽出しやすくするために画像のノイズやひずみを取り除き、輪郭を強調したり明るさや色を調整したりしてオブジェクトを抽出する
領域抽出・認識 画像の背景とオブジェクトを分離してオブジェクトの領域を抽出し、目的の特徴を認識する
音声認識 人間の声を認識してテキストに出力したり、音声の特徴から話者を特定・識別したりする
言語処理 人間が日常的に使う話し言葉、書き言葉(自然言語)を処理・認識する。画像から手書き文字を読み取ってテキストに変換する


学習・開発環境のサポート

機能 解説
各種フレームワークのサポート Apache MXNet、Caffe、TensorFlow、Theano、Torch、PyTorchなど、事前に構成済みの各種フレームワークをサポートする
GPUのサポート NVIDIA CUDAドライバ、cuDNNドライバなどGPUを利用した機械学習をサポートする
モデルの可視化 Apache MXNetモデルサーバやTensorFlow Serving、TensorBoardなどモデル可視化機能をサポートする
パッケージ管理とデプロイ Anacondaプラットフォームによる大規模データ処理、予測分析、科学計算に対応する


外部システムとの連携

機能 解説
API提供 外部システムから機械学習機能を利用できるAPIを提供する
複数のプログラミング言語サポート 統計解析向けのR言語、汎用プログラミング言語のPythonなどを使って機械学習用のプログラミング環境を提供する


ディープラーニング(深層学習)の選定ポイント


ツールごとの違い

 ディープラーニングは、大きく分けて以下のようなツールを用いて行う。

・パブリッククラウドが提供する学習済みのディープラーニングサービス
 APIを利用してクラウド上のサービスに接続する。すでに学習済みのサービスが利用できる他、学習を繰り返して特定の用途に応用できる。

・特定用途に利用するために一から育てるディープラーニング
 オンプレミスまたはクラウドにディープラーニングを実行する環境を用意する。学習を繰り返すことで、特定用途に特化したAIを構築できる。

 また、ディープラーニングを応用したサービスとして顔認識、チャットbotやレコメンデーションなどもある。

導入形態

 ディープラーニングには、オンプレミス環境に導入するソフトウェアパッケージ製品(オープンソースも含む)と、クラウドサービスとして提供されているツールがある。オンプレミス環境のツールは、工場など生産現場の製造ラインにおける品質管理、生産装置の異常・故障の予知といったスタンドアロン、またはクローズドなネットワークでも利用できる。クラウドサービスは自前でツールを用意することなく、初期投資を抑えながら機械学習を始めることができる。

価格形態・契約形態

 ディープラーニングの価格は、製品・サービスによって異なる。オープンソースのフレームワークを導入する場合は無料で利用することも可能。オンプレミス環境に導入する製品の場合。利用するCPUのコア数、GPU数、サーバ台数の拡張、機能の追加などによってオプション料金が発生する場合がある。クラウドサービスの場合は、利用する機能や利用時間、学習させるデータ容量などによって異なる。


ディープラーニング(深層学習)のシステム要件、他システムとの連携方法


導入時に必要なもの

 オンプレミス環境に導入するソフトウェアパッケージ製品の場合は、ソフトウェアをインストールして実行するためのサーバ、大量の学習用データを格納するストレージが最低限必要となる。パブリッククラウドのディープラーニングサービスの場合はハードウェアを用意する必要はないが、学習用データは用意しなげればならない。

導入後の運用方法・サポートの有無

 導入後の運用は、ディープラーニングを利用する事業部門のユーザーが主体となって行う。一般的には経営企画部門や各事業部門のデータ分析担当者、またはデータサイエンティストなどが利用する。

 保守サポートは、オープンソースの場合は全て自前で行わなければならない。パッケージの場合は製品のライセンス価格とは別に費用が発生する。パブリッククラウドでは、そのサービスの保守サポート規定に従う。

他製品との連携方法

 例えば独自に構築した監視システムのようなアプリケーションから、パブリッククラウド上にあるディープラーニングサービスにWeb API経由で接続し、学習を実行したり実行結果を活用したりすることになる。

 統計解析ツールやデータ可視化ツール、BI(ビジネスインテリジェンス)などを組み合わせて利用することもある。