よくわかるディープラーニングの仕組み

最近の人工知能について

2017年6月、最近の人工知能ブーム再来の火付け役となったディープラーニングの概要について知りたいと思い、「よくわかるディープラーニングの仕組み」という本を読みました。

私は開発研究所で画像系のソフトウェア開発を担当し、画像認識アルゴリズムなどを組み込み機器向けに最適化実装していました。

PowerPCによる画像認識の最適化実装

TI C64x DSPによる画像認識の最適化実装

画像認識アルゴリズムを検討していた技術者は、いろんなアルゴリズムを組み合わせて利用シーンに応じた評価画像を用いてアルゴリズムをチューニングしていました。

2014年ごろにディープラーニングが注目され、画像認識アルゴリズム開発者は従来技術を使いながら、ディープラーニング技術を評価しはじめました。大学院で研究してきた若手技術者などは、画像認識技術は従来手法からディープラーニング技術を採用することによって大きく進化したと言っていました。当時の私は、開発業務が忙しかったのでディープラーニング技術について気になりながらあまり勉強しませんでした。

定年退職した今は時間に余裕がありますので、ディープラーニングについて少し勉強しようと思いました。この本はKindle版で紙の本の長さに換算して約38ページとボリュームが短くすぐ読むことができることと、難解な数式で説明していないという点で選びました。

本書は、従来の数式ばかりの専門家向けディープラーニング解説書とは異なり、カラフルで分かりやすいイラストを多用し、数式は必要最小限にとどめ、専門家以外の人でもディープラーニングが理解できるようにしています。

よくわかるディープラーニングの仕組み

本の情報

  • よくわかるディープラーニングの仕組み
  • 谷田部卓 著
  • フォーマット: Kindle版
  • 紙の本の長さ: 38 ページ
  • 出版社: 谷田部卓; 1版 (2016/9/29)
  • 販売: Amazon Services International, Inc.

よくわかるディープラーニングの仕組み


 

よくわかるディープラーニングの仕組み

よくわかるディープラーニングの仕組み

 

目次

1章 ディープラーニングの登場
2章 ディープラーニングとは
3章 ディープラーニングの原理
4章 CNN
5章 RNN
6章 ニューラルネットワークの歴史
7章 ディープラーニングの開発環境
8章 ディープラーニング・ビジネスと今後

近年の人工知能(AI)ブームは、2012年のディープラーニング(深層学習)の出現から始まりました。ディープラーニングは、当初画像認識分野で脚光を浴びましたが、次第に汎用的な能力を秘めていることが判明してきています。このため自動車の自動運転を筆頭に、世界中の企業が競いながらディープラーニングの研究開発を行っています。今や人工知能の原理でもあるディープラーニングは、研究者だけが理解できればよいというものではありません。ディープラーニングの原理を理解すれば、その可能性や限界をも見極めることができるからです。
本書は、従来の数式ばかりの専門家向けディープラーニング解説書とは異なり、カラフルで分かりやすいイラストを多用し、数式は必要最小限にとどめ、専門家以外の人でもディープラーニングが理解できるようにしています。学生や文系ビジネスマンから、人工知能のプログラミングを始めたい人まで、ディープラーニングとは何か、そして何ができるのか、今後はどのような分野で活用できるのかが理解できると思います。
ディープラーニングの原型であるニューラルネットワークの原理から説き起こし、画像認識のCNN、時系列データを扱うRNN、自然言語処理分野で活用が始まったLSTMなど、最新技術までその仕組みをわかりやすく解説しています。本書を読むことで、ディープラーニングの原理から、その秘めた能力まで理解し、身に付くことができるはずです。

 

ディープラーニングとは

機械学習とディープラーニング

  • 機械学習 :教師データを学習モデルに大量入力して、結果を評価して期待する結果になるまで人がパラメータ(特徴量の抽出)をチューニングする
  • ディープラーニング:教師データを学習モデルに大量入力して、特徴量を自動抽出することによりチューニングが不要

 

手続き型プログラムでは、あらゆるケースを想定して設計する必要がありますが、機械学習では、その役割を教師データに負わせているのです。機械学習の特徴は、大量のデータ(ビッグデータ)の中から人が想定できなかったような結果まで導き出せることにあります。

ディープラーニング(深層学習)は機械学習から進化したもので、プログラムロジックもパラメータチューニングも不要らしいです。

従来の画像認識手法

代表的なBag-of-features手法は、評価画像(教師データ)の画像局所特徴量をベクトル化して、機械学習により識別器を作成します。画像認識は、対象画像の特徴ベクトルを抽出して識別器の特徴ベクトルとの距離を算出することにより行います。

ディープラーニングを用いた画像認識

CNN(Convolution Neural Network)ニューラルネットワークにより画像の特徴を抽出し、教師画像との差分量を学習モデルにフィードバックします。

ディープラーニングの原理

多層パーセプトロンで構成したニューラルネットワークで、入力データを伝達させて出力を得ます。
出力値と正解値の誤差を前段のエッジに戻して、誤差を減らす「誤差逆伝搬法(バックプロパケーション)」により学習効果が高くなります。

画像認識 CNN

CNN(Convolution Neural Network)は、入力層→畳み込み層→プーリング層→全結合層→出力層で構成します。CNNは、画像の特性(局所性、平行移動不変性)を活かしたニューラルネットワークです。

  • 畳み込み処理 : スライドさせながら画像全体を処理 → 画像のどこにあっても検出可能
  • プーリング処理 : 特徴マップの縮小処理 → 平行移動や回転に対して不変性を保つ

画像認識 RNN

RNN(Recurrent Neural Network)は、隠れ層の値を再び隠れ層に入力するネットワーク構造にしたもので、音声・動画・文章などの時系列データを扱うものです。

LSTM(Long Short-Term Memory)は、長期の時系列データを学習することができる強力な学習モデルで、自然言語処理分野で活用されてます。

ニューラルネットワークの歴史

  • 第1期 1940年代 : ニューロンモデルとパーセプトロン
  • 第2期 1980年代 : 誤差逆伝搬法、畳み込みニューラルネットワーク
  • 第3期 2010年代 : ディープラーニング(深層学習)

ディープラーニングの開発環境

Caffe

Berkeley大学(2013年)が公開している最も著名なツール

TensorFlow

Google(2015年)のフレームワークでOSS公開したツール

GPU

近年のハードウェアの進歩でディープラーニングが躍進しました。

画像処理に特化したプロセッサ GPU(Graphics Processing Unit)を汎用ベクトルプロセッサとして活用する統合環境 CUDA(Compute Unified Device Architecture) で、GPUの高い並列計算能力がディープラーニングに欠かせないハードウェアとなってきました。

ディープラーニング・ビジネスと今後

CNN(畳み込みニューラルネットワーク)系とRNN(再帰型ニューラルネットワーク)系で実用化が始まっています。

ディープラーニングの応用は、「パターン認識系」「自然言語処理系」です。

最後に

3度目のAIブームです。私は、第2次ブームの時にソフトウェア技術者になり、そのころは人工知能が脚光を浴びていました。人工知能を実現するICOTの第五世代コンピュータプロジェクトがスタートして、Prolog言語の解説書が書店に多数並んでいました。そのうちに、AIという言葉はあまり聞かなくなり冬の時代になりました。

そして、今の第3次ブームの到来です。今度は、前回とはちょっと違うぞという感じがしてました。
開発研究所で画像認識系の開発経験があったので、ディープラーニングはより身近に感じていました。

この本を読んで、難解な数式ではなく図のイメージで説明しているので、なんとなくディープラーニングの概要がわかったような気になりました。しかし、大事なことは何一つ理解できていないのかもしれません。

もう少し原理について解説している書籍を読んでみたいと思いました。