初めに
こんにちは。将棋と筋トレが好きな、情報系大学生のゆうき(@engieerblog_Yu)です。
今回から、ニューラルネットワークの発展として、畳み込みニューラルネットワークについてまとめていきたいと思います。
畳み込みニューラルネットワーク(CNN)とは?
畳み込みニューラルネットワークとは、主に画像認識や音声認識に用いられるネットワークです。
畳み込みニューラルネットワークでは、ニューラルネットワークで使用されているレイヤに合わせてConvolutionレイヤとPoolingレイヤが加わります。
具体的に解説するために、まずは全結合層についてまとめていきます。
全結合層について
前回までで解説してきたニューラルネットワークにAffineレイヤがありましたが、全結合層とはAffineレイヤとReLUレイヤによって構成されます。
犬の画像を学習後の全結合層を使ったニューラルネットワークのモデルに通すと、画像が犬である確率を出力するようなものです。
しかし全結合層にはある問題点がありました。
入力データを一次元にしなければならないという点です。
例えば入力データが画像だとすると、近接した点同士は似た特徴を持っている可能性が高いです。
しかし画像データを一次元配列にしてしまうと、近接した点の情報(空間情報)が失われてしまいます。
全結合層を用いたニューラルネットワークでは、入力データが一次元でなければならないので、空間情報が失われてしまう
よって空間情報があるデータに、全結合層を使ったニューラルネットワークを使うのはあまり適していないということになります。
CNNの強み
全結合層を用いたニューラルネットワークに対して、畳み込みニューラルネットワーク(CNN)は、一次元でない入力データを受け付けることができます。
CNNは入力データの空間情報を保持したまま、モデル学習を行うことができます。
よって、空間情報を持っている画像や音声などの入力データに使われます。
CNNは空間情報を保持するので、画像認識や音声認識などのデータに強い
次に全結合層と比べて、CNNはどのような層で構成されているのかをまとめていきます。
CNNの構成
CNNはAffineレイヤの代わりに、Convolutionレイヤ(畳み込み層)が使われます。
また、ReLUレイヤに通した後にPoolingレイヤに通します。(使われない場合もある)
ConvolutionレイヤとPoolingレイヤを用いることで入力データが一次元でなくても、モデルを学習することができます。
まとめ
畳み込みニューラルネットワークとは、主に画像認識や音声認識に用いられるネットワーク
全結合層を用いたニューラルネットワークでは、入力データが一次元でなければならないので、空間情報が失われてしまう
CNNは空間情報を保持するので、画像認識や音声認識などのデータに強い
今回は畳み込みニューラルネットワーク(CNN)についてまとめました。
機械学習、ディープラーニングを学びたい方におすすめの入門書籍です。
ディープラーニングの理論が分かりやすくまとめられていて、力を身につけたい方におすすめです。
最後まで読んでいただきありがとうございました。
他にもいろんな記事があるにゃ。
コメント