[2017年01月05日 ]
株式会社KSKアナリティクス
データアナリスト 足立 悠
前回はニューラルネットワーク・アルゴリズムの概要をご紹介しました。ニューラルネットワークとは、教師あり学習のアルゴリズムの一つです。そして、ディープラーニングはニューラルネットワークを進化させたアルゴリズムです。つまり、数値データを使った回帰・分類を行い予測できます。前回と同じく機械・設備の故障予測をテーマに考えると、学習モデルのイメージは次のようなものです。
ディープラーニングのモデル構造は、ニューラルネットワークのそれとほぼ同じです。ニューラルネットワークでの問題(中間層を深くすると学習が適切に行われない)は、ディープラーニングでは解消されています。そのため中間層を深くでき、精度の高いモデルを構築できることが特長です。 モデルの見方はニューラルネットワークと同じく、一番左列が入力層、中央列が中間層、一番右列が出力層です。順伝播と逆伝播を繰り返し学習します。ディープラーニングはこの学習に素晴らしいトリックが隠されています。
先ほど記載した「ニューラルネットワークでの問題(中間層を深くすると学習が適切に行われない)」は、「勾配消失問題」と呼ばれます。勾配は、学習時に重み(前回の記事を参照)の更新のため計算される量です。この問題は2006年にトロント大学のHinton博士によって解消され、ここからディープラーニングが始まりました。 勾配消失問題のカギは「事前学習」にあり、そのアルゴリズムに「自己符号化器(Autoencoder)」があります。自己符号化器は、入力データのみで学習する教師なし学習を行います。モデルのイメージは以下のとおりです。
入力層と出力層を同じノード数に設定し、出力値を入力値に近付けるよう(自分自身を再現できるよう)重みを更新しながら学習することが特徴です。事前学習を行い、ネットワークの中間層を順に作成していきます。
このように1層ずつ中間層を学習・作成していくことで、勾配消失問題を解消できるようになり、今日ディープラーニングは社会で大いに活躍しています。またこの手法は、Googleの猫認識のニュースで注目を集めました。
ここからは、ディープラーニングが従来の機械学習のアルゴリズムと異なり<賢い>点についてお伝えします。次の例を考えてみましょう。前から一人の人間が歩いてきます。その人が男性か女性かを見分けて(分類して)みましょう。ただし、データ(年齢・出身地・身長・体重・髪の長さ・スカート着用・咽喉の凹凸)のみで判断する場合、何に着目すべきでしょうか? ここで、見分けるために使える属性は「髪の長さ」「スカート着用」「咽喉の凹凸」です。従来の機械学習はこれら属性を「人」が抽出しますが、ディープラーニングは「マシン」が「自動的に」抽出します。
以上が、ディープラーニングのアルゴリズム概要と特長です。ディープラーニングは、以下のソフトで実装できます!ぜひお試しください。
・RapidMiner:プログラミング不要、GUI操作で誰でも簡単に分析できる。
・TensorFlow:Google社製。Python言語でディープラーニングを実装できる。
大手電機メーカーでエンジニア、事業会社でデータ分析者を経てKSKアナリティクスへ入社。機械学習・ディープラーニングを用いたレコメンデーション、異常検知を得意とする。また、分析セミナー講師や技術雑誌への記事執筆も行う。
スイス国内で2番目に利用者数の多いジュネーブ空港は、 「乗客が行列に並ぶ時間を半減」「業績を前年度の5倍以上にアップ」に成功している。 【改善方法】 ・施設内でBluetoothとWi-Fiセンサーを活用 ・乗客のリアルタイム計測/高度データ分析 ・空港スタッフ数の最適化 ・セキュリティチェックの可視化 ・Wi-Fiセンサーは空港内各所に設置 →行列に並んでいる人数/待ち時間...
Analytics News ACCESS RANKING