ニューラルネットワーク
機械学習と呼ばれるものには多くの手法があるが、そのひとつがニューラルネットワークを使った手法である。
ニューラルネットワークとは、人間の脳内にある神経細胞(ニューロン)とそのつながり、つまり神経回路網を人工ニューロンという数式的なモデルで表現したものである。
ニューラルネットワークは、入力層、出力層、隠れ層から構成され、層と層の間には、ニューロン同士のつながりの強さを示す重み「W」がある。
「人間の脳の中にあるニューロンは電気信号として情報伝達を行う。その際にシナプスの結合強度(つながりの強さ)によって、情報の伝わりやすさが変わってくる。この結合強度を、人工ニューロンでは重みWで表現する」
https://www.sbbit.jp/article/image/33345/l_bit201703022243471482.jpg
脳のシナプスと人工ニューラルネットワーク(NN)。ニューラルネットワークは神経回路網を数式的なモデル(アルゴリズム)として表現したもの
ニューラルネットワークの仕組みと構造
一つひとつの人工ニューロンは単純な仕組みだが、それを多数組み合わせる事で複雑な関数近似を行う事ができるのが、ニューラルネットワークの大きな特徴である。
「複雑な関数近似をしなければ分類や回帰ができない場合に、従来型の機械学習手法ではうまくいかないケースも多く、そういった問題に対して、ディープラーニング手法を使用するケースが増えています。
ディープラーニングの手法を用いた事で、従来に比べて飛躍的に認識精度が向上するケースもあり、現在世の中でディープラーニングはたいへん注目されています。最近ではレコメンデーションや自動運転の分野など、幅広い分野で利用されています」
ニューラルネットワークの隠れ層は多層にする事が可能だ。ディープラーニングとは、「隠れ層が多数存在する多層構造のニューラルネットワーク」のことを指す。
「入力層」「隠れ層」「出力層」で構成される3層のパーセプトロンを例に説明する。
「今回は、話をシンプルにする為に3層のものを例に説明するが、たとえば、ディープラーニングで画像分類を行う際は、層の数も多層にし、入力層のサイズは画素数に対応させるケースが多い。たとえば、28x28ピクセルのグレースケール画像では、28x28x1(RGBカラーの場合は3)の入力になる」
https://www.sbbit.jp/article/image/33345/l_bit201703022247425548.jpg
入力層・隠れ層・出力層で構成される三層のパーセプトロン。人工ニューロンやニューラルネットワークの一種で、ロジスティック回帰と等価なモデルだ
データが入力層のXに入ってくると、その値に重みW1をかけ、Yに結果を出力する。そして今度は、先ほど計算したYの値を入力として重みW2をかけ出力層のZに書き出す。重みW1およびW2の値によって出力結果は異なってくる。
「たとえば、z1が0.8という出力になったとします。しかし本当はz1の出力を0.5にしたい場合、一体どうすればよいでしょうか? その結果に近づけるために、重みのW1とW2を調整していけばよいのです」
https://www.sbbit.jp/article/image/33345/l_bit201703022248195499.jpg
正解の教師データに近づけるために、重みW1とW2を調整していく。これがディープラーニングの本質的な作業になる
URL:https://www.sbbit.jp/article/cont1/33345
タイトル名:ニューラルネットワークの基礎解説
Webサイト:ビジネス+IT
#テーマ5