DNN(ディープニューラルネットワーク)とは?初心者向けに徹底解説 | AIZINE(エーアイジン)
AIとは何か

DNN(ディープニューラルネットワーク)とは?初心者向けに徹底解説

脳のイメージ

「AI(人工知能)の用語でDNNって出てくるけど何が何だかわからない!」と、DNNという用語をよく見かけるもののCNNやRNNなど似たような名前の用語も出てきて混乱しますよね。

DNNとはディープニューラルネットワークのことで今日のAI(人工知能)の研究における発展に欠かせないものとなっています。

しかしAI(人工知能)やディープラーニングといった言葉が先行しそれを語る上で欠かせないDNNなど重要な用語が忘れられがちなのも事実。

中村
中村

そこで今回はDNNに注目しこれがどのようなものであるか、なぜ使われているか、これからどうなっていくかお伝えしていきます。

それでは、まずはニューラルネットワークとは何かというところからお伝えしていきましょう。

そもそもニューラルネットワークとは?

脳の画像

ニューラルネットワーク(Neural Network)は機械学習の手法で使われるものの1つ。

人間の脳の仕組みからインスピレーションを得たもので、それをコンピュータ上で数式的に表現したものになります。

ここで表現しているのは脳にある神経細胞(ニューロン)とその繋がりです。言い換えれば神経回路網を人工ニューロンという形で表現したものになります。

これは入力層、出力層、隠れ層という3つの層からできており、層同士の間にあるニューロン達がどれくらい強い繋がりを持つかを示す重み「W」があるのがポイント。
人間の脳にあるニューロンは情報を電気信号を通して伝えており、どれくらい繋がりが強いかを示しているのが結合強度というもの。人工ニューロンではこれを「W」で表すのです。

DNNでも重要になるので覚えておきましょう。

DNN(ディープニューラルネットワーク)の概要

ニューロン

ニューラルネットワークについて触れたのでDNNについても見ていきましょう。

ディープニューラルネットワーク(DNN: Deep Neural Network)はニューラルネットワークにある層が多層、言い換えればディープなっている仕組みのこと。
従来の機械学習であれば入力層と出力層が1つずつで間に隠れ層が1つあるかないかというのが普通でした。

DNNでは非常に多くの隠れ層が組み合わさっており、情報の複雑さに対応する上で重要な役割を担っています。

ネットワークと重みづけ。DNNの仕組み

大量の情報

概要でも触れたようにDNNはニューラルネットワークが多層になっているもの。ではそのネットワークでの仕組みについて学習の流れからお伝えします。

学習のステップは以下の3つ。

  1. 順伝播
  2. 逆伝播
  3. 繰り返し

ここで重要なステップである順伝播と逆伝播を見ていきましょう。

順伝播

一番最初は入力とそれに対応する正解ラベルの組(教師データ)を使って予測計算を行なっていきます。

ここで予測値となるのは入力した値に各層で重みづけをし最終的に出てきた値。これを正解ラベルと比べて誤差を計算していくことになるのです。

順伝播と呼ばれるのは予測値が入力層から出力層へ順番に伝わるから。

このステップでは教師データについていくつか繰り返しその度に生じた誤差を足し合わせていくことになります。

逆伝播

順伝播が終わってから入る次のステップは足し合わされた誤差の値を小さくなるよう調整していくこと。

中村
中村

ここでは勾配降下法というものを用います。

詳しく見ていきましょう。

そもそもDNNでの学習が目的とするのは予測値と実際の値の差を誤差とし最小化させること。

それを実現させるには重みを使って勾配という誤差を微分した値を0に近づけられるような値を求めていかなくてはなりません。

そこで問題となるのは重みが多次元であること。なのでそこから勾配降下法で小さい値を見つけるのは至難の技。

そのためベストであるのは「大域的最適解」という誤差の値を最も小さくする解。そしてベターになるのが「局所最適解」。その周りでは誤差の値が小さいが最小値という当初の目標を達成できるわけではないという値のことを指します。

勾配降下法で小さな値が「大域的最適解」なのか「局所最適解」なのか判断することができないのでDNNでは後者であればある程度誤差を小さく抑えられるのでよしとしようという考え方が前提となります。

この勾配降下法を用いて出力層から入力層にかけ重みづけを更新していくので「誤差逆伝播法」と言います。

2つのステップを繰り返すことでネットワーク内の重みづけを更新し、誤差の縮小を目指していくことになります。

DNNが今活用される理由

パソコンで活用しているイメージ

DNNが活用されている理由はディープラーニングの発展と深いつながりがあります。

近年のAI(人工知能)に対する期待の高まりは第三次AIブームと言われており、そのきっかけとなったのがディープラーニング。注目を集めるようになったのは2012年に遡ります。

この年に「ImageNet Large Scale Visual Recognition Challenge(ILSVRC) 2012」という国際コンペティションがありました。

これはコンピューターに画像から物体を認識させその精度を競っていくというもの。このコンペでは東京大学やオックスフォード大学など名だたる研究機関が数多く参加していました。

この大会では1000万枚の画像データから機械学習を行い15万枚の画像を使ってテスト。そこでどれくらいエラーが出るかで競い合うのです。

当時は機械学習といっても長年の知識と経験が頼りとなっており1年かけてようやく1パーセントエラー率が下がるような世界。エラー率26%台で順位を競うことになるだろうと予想されていました。
しかし優勝したのは東京大学やオックスフォード大学ではなくカナダのトロント大学で、エラー率は17%弱とダントツの数字。しかもこの大学が参加したのは今回が初めてで衝撃が走りました。

この時使われていたのがディープラーニングです。新しい機械学習の手法として注目されるようになり様々な分野で研究や開発が進められています。

ディープラーニングで基本となるのはニューラルネットワークを応用し隠れ層を増やしたもの。なのでこれまでAI(人工知能)には厳しいと思われていたことの実現を目指す上でDNNが欠かせないものとなっているのです。

DNNの今後とは

さらに発展していくイメージ

ディープラーニングの発展とともに、DNNをベースに新たなニューラルネットワークへと改良が進んでいます。

これにより機械学習にできることや可能性がさらに広がっているのです。

中村
中村

そこで今回はCNNとRNNについて見ていきましょう。

CNN(Convolutional Neural Network)

CNN(畳み込みニューラルネットワーク)は画像データを扱う時に使われるものになります。

ディープラーニングで画像を扱う際に厄介になるのは次元の問題。ただ数値を扱うのと違い、画像データで扱う数値情報は縦と横の二次元になるからです。

もちろん従来の手法で扱うのも不可能ではないですが、そのまま二次元で入力する方が一次元に無理に当てはめて必要な情報を失うリスクを抱えるより合理的だということで様々な種類のモデルが存在しています。

RNN(Recurrent Neural Network)

RNN(リカレントニューラルネットワーク)は時系列データの扱いで用いられているものです。

株価の予測で考えてみましょう。CNNと同様これまでの手法で情報を入力し結果を出していくのは不可能ではありません。しかし、これまでのやり方だと「時間の順序」まで対応できないという問題点がありました。

そこでRNNが考案され、データの中から時系列をそのまま入力し関連性まで学習できるように。CNNと同じく様々なモデルが考えられるに至っています。

 

難しい概念がわかったイメージ

今回はDNN(ディープニューラルネットワーク)とは何か、どうして活用されていて今後どのように活かされていくかについてお伝えしました。

まずニューラルネットワークは人間の脳にある神経回路網を人工ニューロンという形で表現したもの。入力層、出力層、隠れ層という3つの層からできており、層同士の間にあるニューロン達がどれくらい強い繋がりを持つかを示すものを「重み」といいます。

DNNはニューラルネットワークから隠れ層を多くしたもの。

ディープラーニングが注目されたきっかけは2012年に行われた画像認識のコンペ。

ディープラーニングとDNNは切っても切れない関係にあり広く活用されるきっかけに、そして現在はCNNやRNNなどへ更なる改良が進められています。
中村
中村

これからもDNNが活用され生活がより便利になる技術が開発されるといいですよね。

【お知らせ】

当メディア(AIZINE)を運営しているAI(人工知能)/DX(デジタルトランスフォーメーション)開発会社お多福ラボでは「福をふりまく」をミッションに、スピード、提案内容、価格、全てにおいて期待を上回り、徹底的な顧客志向で小規模から大規模ソリューションまで幅広く対応しています。

御社の悩みを強みに変える仕組みづくりのお手伝いを致しますので、ぜひご相談ください。

お多福ラボコーポレートサイトへのバナー

トップへ戻る
タイトルとURLをコピーしました