Deep Insider の Tutor コーナー
>>  Deep Insider は本サイトからスピンオフした姉妹サイトです。よろしく! 
書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)

書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)

機械学習の定義と応用範囲、認知されるキッカケとなった出来事

2017年4月26日

機械学習はいまなぜ広く認知され注目されているのか。知っておきたい代表的な出来事を紹介。また、機械学習とは何かを定義し、その適用範囲を分類する。

高野 茂幸
  • このエントリーをはてなブックマークに追加

 書籍『Thinking Machines ― 機械学習とそのハードウェア実装』から全15本の記事を転載します。本稿はその1回目です。今回は、「第1章 イントロダクション、1.1 機械学習の認知、1.2 機械学習と応用範囲」を転載します。

書籍転載について

 本コーナーは、インプレスR&D[Next Publishing]発行の書籍『Thinking Machines ― 機械学習とそのハードウェア実装』の中から、特にBuild Insiderの読者に有用だと考えられる項目を編集部が選び、同社の許可を得て転載したものです。

 『Thinking Machines ― 機械学習とそのハードウェア実装』(Kindle電子書籍もしくはオンデマンドペーパーバック)の詳細や購入はAmazon.co.jpのページもしくは出版元のページをご覧ください。書籍全体の目次は連載INDEXページに掲載しています。

ご注意

本記事は、書籍の内容を改変することなく、そのまま転載したものです。このため用字用語の統一ルールなどはBuild Insiderのそれとは一致しません。あらかじめご了承ください。

第1章 イントロダクション

 第1章では機械学習がこれからどの様に利用されるかを、機械学習の認知、第4次産業革命、トランザクション処理の3つの視点から説明する。現在の機械学習がどの様な特徴を持ち、どの様な問題・課題に対して解決を行うために研究されているか、さらに現在どの様なサービスへの利用が始まっているかを機械学習の応用範囲という形で説明する。

 まず初めに機械学習が認知されるきっかけになった事例を取り上げる。IBMのWatsonと呼ばれるAIマシンがテレビのクイズ番組で優勝した出来事や、Googleの囲碁用深層学習システムAlphaGoが囲碁のプロに勝利した出来事、そして深層学習システムが爆発的に普及する切っ掛けになった研究であるImageNet Challengeを取り上げる。

 次に機械学習で実施される学習と推論の定義を紹介し、機械学習の適応例を紹介することで全体を俯瞰する。そして学習と性能について説明する。学習させる(訓練する)前に入力データを事前に加工する等、学習しやすくする工夫を施すのが一般的である。その次に学習の方法の一般論、学習方法の分類、そしてその性能評価・検証方法を紹介する。

 そして機械学習が産業界で最も利用されることが期待されている分野である、第4次産業革命(Industry4.0)を取り上げる。そのシステムのどこに機械学習が適用されるかを、2つの工場のモデルを例に紹介する。

 最後に手続き(トランザクション)処理との関係を紹介する。機械学習はデータ処理であり、トランザクション処理はそのデータ処理を滞りなく行うための手続きを行う処理であるため、直接的な関係はない。しかし、トランザクション処理に使用されるBlock Chainは今後至る所で使用される技術であり、機械学習との連携もあり得る。この事を考慮して本章でトランザクション処理も取り上げている。

1.1 機械学習の認知

 この章では一般社会に広く機械学習が認知される切っ掛けとなった出来事を紹介する。本書ではAI(Artificial Intelligence、人工知能)と機械学習を区別している。AIはその定義が広義であり、曖昧であるため本書では扱わない。

  • IBM Watson Challenged to Jeopadry!
    “Jeopadry!”は米国のクイズ番組であり、2011年2月にIBMのAIシステムであるWatsonがそのクイズの挑戦者として参戦し、賞金100万ドルを獲得して話題となった【1】。Jeopadry!は質問の意図を理解した上で、他のクイズ参加者よりも早く答える必要があり、Watsonにはその為の自然言語処理能力が求められていた。質問の意図を理解した上で最終的に計算機が得意とする情報処理により回答するシステムとなっている。
    2014年時点での資料では、WatsonはLinux OSが稼働する90台の“IBM Power 750 Server”を搭載したラック10台による、合計2880個のプロセッサコアと合計16TBのメモリで構成されていた【2】。3.5GHz動作で8コア構成のPOWER7プロセッサを搭載する。
    IBMが目指しているCognitive Computing向けとして開発されたWatsonの応答システム構成は、Question and Topic Analysis、Question Decomposition、Hypothesis Generation、Hypothesis and Evidence Scoring、Synthesis、そしてFinal Confidence Merging and Rankingのパイプライン構成である。現在IBMはプログラマがWatsonシステムを利用可能な開発基盤を提供している【3】
  • Google AlphaGo Challenged to Go Professional
    2016年3月、GoogleのAI研究部門であるDeepMindの囲碁用の機械学習モデル“AlphaGo”が囲碁のプロと五番勝負を行い、4勝1負で勝利して話題となった【4】。AlphaGoシステムはPolicy Network と Value Networkと呼ぶ2つニューラルネットワークで構成されており、推論効率を上げるためにモンテカルロ木探索(MCTS; Monte Carlo Tree Search)を利用している【5】
    AlphaGoの学習システムは2ステージのパイプライン構成の学習モデルである。初めのステージは、教師あり学習により手を学習するSL policy とそれを早く決めるためのRollout policyで構成されたPolicy Networkで大まかに手早く勝利へ導く手の打ち方を学習するネットワークモデルである。次のステージで初めのステージの結果を反映したPolicy Networkの強化学習で打ち手の結果(勝利率)をValue Networkと呼ぶニューラルネットワークモデルで学習し、これらのネットワークモデルにより詳細な手の打ち方を訓練する。
    Policy Networkは囲碁のルールを学習する目的の教師あり学習による13層の深層学習モデルと、AlphaGoをインスタンスとして扱い、自分自身と対戦する事で最良の手を選択する為の学習目的の強化学習モデルからなる。ランダムにインスタンスを選択して強化学習する事で、特定の手とその流れへの過学習(後述)を防いでいる。MCTSは手とその流れを定義する木トポロジにおいて、どの手が最良なのかの判断として分岐先を決める。分岐先選択の他に学習に伴い手を学習するので、手の拡張と分岐選択のための手の評価機能も持つ。
    AlphaGoはTensorFlow API(後述=転載対象外)で実装されており、TensorFlowをオフローディング可能なTPU(Tensor Processing Unit)上で一部実行されている。
  • ImageNet Challenge
    学術的に機械学習の研究が再認識されたきっかけは、2012年の画像認識性能を競うImageNet Challenge【6】において、トロント大学のHinton教授陣の画像認識用ニューラルネットワーク、いわゆる畳み込みニューラルネットワーク(CNN; Convolutional Neural Network)の認識性能が他を凌駕していた事による【7】。このニューラルネットワークモデルはLeNet【8】を元に拡張したモデルであり、このモデルの認識率は85%を超えており他が70%台だったのに対して圧倒的な差をつけて勝利した。これ以降CNNを中心にニューラルネットワーク、特に深層学習の研究が盛んに研究されるようになった。

1.2 機械学習と応用範囲

1.2.1 機械学習の定義

 明示的にプログラムしなくても学習する能力を与えたコンピュータ上のシステムを機械学習という【9】。機械学習とは以下の2つの特徴を持つ処理系のことである。

  • 学習(Training)
    入力データに基づき利用側の目的とする事柄に対してその特徴、時系列や空間上のパターンを学習する。
  • 推論(Inference)
    学習結果に基づき入力データに対して利用側の目的とする事柄に関する推論を行う。未知の事柄について何らかの論理的規則により明らかにする事を推論と言う。

 ここで利用側とは人以外の機械や動植物、その複合的な集合も指しており、本書では「総体」と呼ぶことにする。

1.2.2 機械学習の適用範囲

 機械学習の適用範囲は以下のように分類できる。

  • 検知(Detection)
    定常状態と異なる入力データが発生した際に異常と判断する(Anomaly Detection)。例えば、不良検出【10】やセキュリティ【11】などに利用される。ロボットや移動体の単体内部の異常検知に限らず、これらの個体群全体としての異常検知にも応用できる。さらに、総体の正常状態(人であれば健康状態)に対して病気を異常状態とすれば、医療(例えば癌検出【12】等)に利用可能である。
  • 予測(Prediction)
    過去の入力データのパターンから近未来の入力データのパターンを予測したり、空間上のデータ列に対して特定空間領域のパターンを予測する。例えば、気象予測【13】、株価予測【14】、代替投資【15】、交通や通信の渋滞予測【16】、電気・ガス・水道などのインフラ網状態管理、動画予測【17】、音声予測【18】、予知保全【19】などに利用される。その他、画像の欠損部分の補間や動画のフレーム間予測にも応用できる。また、人間や動植物の状態を入力データとすれば、健康状態の予測といった健康管理等への応用も可能である。
  • 立案(Planning)
    学習結果を経験として自律的に立案する。未来予測の結果等を基にもっともらしい行動計画を立て、自立したシステムを支援する。例えば、自動車【20】、バイク【21】、船舶【22】、ドローン等の移動体の自動運転、工場、プラント、移動体群等、多くの要素からなるシステムの自動制御、自立ロボットや自立ボットの作業や複数のロボットやボットの協調作業、レコメンド【23】(ファッションのレコメンドは既にサービスインしている【24】)等に利用される。
  • 生成(Generating)
    特定事象の入力データの特徴を学習し、その特徴に基づく特定事象を模倣・生成する。例えば、特定画家の絵画の特徴を学習してその画家の画風を持つ絵を生成する【25】。また自然画【26】や音楽【27】の生成の研究もある。
  • 認識(Recognition)
    以上の応用の基になるのが物事の認識であり、画像認識【7】、画像・動画像内の物体認識(オブジェクト・トラッキング【28】)、動画に対するキャプション付け(状況認識【29】)、音声認識【30】、読唇術【31】、さらに翻訳【32】や要約【33】といった自然言語処理等に応用されている。

 検知と予測は入力データが時間軸方向で連続しており、現在の入力データが過去の入力データの影響を受けている事を前提としている。認識は応用時に時系列データである必要はなく、入力データの要素間に時間的あるいは空間的に相関さえあれば良い。また、この認識能力を利用して動画像検索【34】、音楽検索【35】等に応用されている。このように各データに曖昧さを含む問題において機械学習の適用範囲は極めて広い。

 次回は、「第1章 イントロダクション、1.3 学習と性能」を転載します。

【参考文献】

※以下では、本稿の前後を合わせて5回分(第1回~第5回)のみ表示しています。
 連載の全タイトルを参照するには、[この記事の連載 INDEX]を参照してください。

書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)
1. 【現在、表示中】≫ 機械学習の定義と応用範囲、認知されるキッカケとなった出来事

機械学習はいまなぜ広く認知され注目されているのか。知っておきたい代表的な出来事を紹介。また、機械学習とは何かを定義し、その適用範囲を分類する。

書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)
2. 機械学習における学習方法と性能評価の基礎知識

機械学習の基礎知識として、学習用データセットの準備と加工、学習方法(勾配降下法/誤差逆伝播法)やその分類(教師あり学習/教師なし学習/強化学習)、性能評価と検証について概説する。

書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)
3. 第4次産業革命とは? 機械学習とブロックチェーンの役割

機械学習の新技術活用は第4次産業革命と呼ばれるが、その意味を説明。さらに、機械学習がデータ処理系であれば手続き処理系に相当するブロックチェーンについても概説する。

書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)
4. マイクロプロセッサからGPU/FPGAの利用へ ― 機械学習ハードウェア実装に関する時代変遷

計算機システムのハードウェア実装では、従来の主要要素であるマイクロプロセッサの性能向上が停滞してきたことから、GPUやFPGAが採用されるように時代が変遷してきた。その内容について概説する。

書籍転載:Thinking Machines ― 機械学習とそのハードウェア実装(1)
5. 機械学習ハードウェアの基礎知識: 特定用途向け集積回路「ASIC」

特定アプリケーションに特化した回路を集積する方法であるASICについて概説。アプリケーションを表現するアルゴリズムのソフトウェア実装とASIC実装を比較しながらASIC実装の特徴と制約を説明する。

サイトからのお知らせ

Twitterでつぶやこう!