【初心者向け】ニューラルネットワークの仕組みをわかりやすく解説

2022年11月6日

【沸騰アジア!】

親日国カンボジアであなたの会社の商品を販売してみませんか?

食品/飲料ヘルスケアコスメ商流と物流を管理人がサポートします。

Naga World in Phnom Penh (2022)

ニューラルネットワークは多次元の判断や自動化が得意

熱射病の季節は終わりましたが、日本人は年々熱射病に弱くなっているそうです。

倉庫では直射日光はないものの、温度と湿度が高くなりがちで熱射病のリスクは高いといえます。

かといって、広くて人口密度の低い倉庫をエアコンでキンキンに冷やすことは、電気代がかかりすぎて現実的ではありません。

熱射病にならないギリギリの環境をキープできればベストです。

 

そのためには熱射病になりやすい各種条件を知ることが必要です。

例えば温度湿度の条件の組み合わせで、熱射病のなり易さが決まってくるかもしれません。

15日間、温度と湿度を計測して、熱射病患者が出たかどうか統計を取った結果、下表のようになったとしましょう。

 

これだとよく分からないため、散布図にしてみましょう。

 

オレンジ色の点が熱射病患者の出た日、青色の点が出なかった日のデータです。

これなら、次のような直線できれいに分けられそうですね。

 

でも、もっとデータを採っていくと、本当は次の図の赤色の線になるかもしれませんし、青色の線になるかもしれません。

 

また、温度と湿度の他に、倉庫の中の風速も関係しているかもしれません。

(倉庫の中に大型のファンを置いて「」を作り出すことで清涼感を出すことがよく行われます)

そうすると、変数が温度湿度風速の3つになり、もはやこのように手作業で直線を引くことはできません。

 

つまり、人手では

  • 3変数以上を使っての分類
  • 自動化

ができないのです。

 

そこでニューラルネットワークの出番です。

データさえ得られれば、後は機械学習できますので自動化できます。

また原因となる変数(説明変数)が3個だろうと10個だろうと、熱射病になるならないの判定に使えます。

 

ニューラルネットワークの仕組み

回帰分析との類似点

ではニューラルネットワークとはどのような仕組みなのでしょうか?

脳の神経細胞であるニューロンを模倣した仕組みというと難しそうですが、重回帰分析に非常によく似ています。

重回帰分析が分からなくても、単回帰分析は聞いたことあると思います。

それも聞いたことないという人でも、考え方自体は知っているはずです。

 

例えば、倉庫で今日、出荷量が多いと予想されれば、作業員をいつもより多く手配しますね。

通常10人で100くらいの出荷量をこなせると分かっていれば、120の出荷量があると予想される日には12人を手配するというのは皆やっていることです。

これは頭の中で

可能な出荷量=10×人数

という回帰式を持っているからです。

この場合には人数が説明変数で、出荷量が目的変数といいます。

このように説明変数が一つしかない回帰式を単回帰式といいます。

 

そして説明変数が2つ以上ある回帰式を重回帰式といいます。

例えば、出荷量は単なる頭数だけではなく、フォークリフトの台数も関係してくる場合には

可能な出荷量=8×人数+2×フォークリフトの台数+10

となるかもしれません。

これは説明変数が2つですので、重回帰式です。

最後に+10が付いていますね。

これは、作業員がいなくてもドライバーだけで10くらいはできるといった場合には、このように定数が付きます。

これは

y=ax+b

という式における+bと同じです。

これはy切片といいましたが、ニューラルネットワークではバイアスといいます。

 

ニューラルネットワークはパーセプトロンで表す

ニューラルネットワークでは、この重回帰式を次のような図で表現します。

 

この図を式にすると、先ほどの

出荷量=8×人数+2×台数+10

の式になりますね。

 

このようにニューラルネットワークと重回帰式は非常によく似ているのです。

特にニューラルネットワークの中で最も簡単な「単純パーセプトロン」は重回帰そのものです。

これは、上の図で出てきた4つのニューロンの場合です。

これは1つのニューロンが、3つのニューロンから伝えられる情報を元に1つの判断を行うモデルです。

 

単純パーセプトロン

一つのニューロンだけで判断を下していることが特徴です。

パーセプトロンとはニューロンの仕組みを模したアルゴリズムのことです。

人工ニューロンといってもいいかもしれません。

単純パーセプトロンとは、入力はいくつあってもいいので、一つのニューロンだけで判断するモデルです。

入力層と出力層しかないモデルともいえます。

 

多層パーセプトロン

これに対して中間層もあるモデルを多層パーセプトロンといいます。

中間層を作ることによって、より複雑な判断ができるようになります。

 

こうなると重回帰ではできないことができるようになります。

例えば冒頭の例で、次のようなデータが得られたとします。

 

すると、もはや直線できれいに分けることはできませんね。

直線で表すことができる数値モデルを線形、曲線の式でしか表せないような数値モデルを非線形といいますが、重回帰では線形のモデルしか扱えません。

ニューラルネットワークの中でも単純パーセプトロンでは線形しか扱えませんが、中間層のある多層パーセプトロンでは非線形の数値モデルを作ることができます。

ここでニューラルネットワークの一つの飛躍があって、少し注目されるようになりました。

 

ディープラーニング

そして更に注目を集めることになったのが、ディープラーニングです。

これは、多層パーセプトロンの中でも中間層が2層以上あるニューラルネットワークのことです。

更に複雑な判断ができるようになることは知られていましたが、少し前まではうまく計算ができませんでした。

それが新しいアルゴリズムとコンピュータ処理能力の向上により可能になり、一気にブレークしました。

 

これら単純パーセプトロン多層パーセプトロンディープラーニングを包含した概念がニューラルネットワークです。

勿論、単純パーセプトロンが一番簡単ですので、まずはこれから見ていきます。

冒頭の例で出てきた温度湿度から熱射病になるかならないかの判断は、単純パーセプトロンでできます。

長くなりましたので、どのように解くかは次回にします。

単純パーセプトロンをExcelに実装して2値分類問題を解いてみた。

 

Udemyの関連講座

データ分析シリーズ① AI数学-文系でも理解できる!高校から始めるデータ分析、AIのための数学-

データ分析、機械学習に関わる数学に絞り、効率的に学習できるようカリキュラムを構成しました。文系でも理解できるよう丁寧な説明をしています。Pythonエンジニア育成推進協会認定スクールによる高品質な数学コースです。

 

本当にわかる、AI時代の数学【超初心者からの数学入門】

数学アレルギーでも大丈夫/やさしく丁寧な解説/コード無し キーワード:基礎/数学/行列/線形代数/ベクトル/微分/データサイエンス/AI/機械学習/ディープラーニング/データドリブン/人工知能

 

【キカガク流】人工知能・機械学習 脱ブラックボックス講座 – 初級編 –

1000人以上が受講している(株)キカガクの『脱ブラックボックスセミナー』が遂に登場!機械学習の参考書を「閉じてしまった人」への再入門に最適な講座です。微分・線形代数といった数学の基礎からPythonでの実装まで短時間で習得しましょう。