MATLAB,Python,Scilab,Julia比較 第4章 その5【形式ニューロン③】

MATLAB,Python,Scilab,Julia比較 第4章 その5【形式ニューロン③】 数値計算
MATLAB,Python,Scilab,Julia比較 第4章 その5【形式ニューロン③】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia4-backnumber/

はじめに

形式ニューロンについての解説。
分類問題のHelloWorldに相当する話。

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

【再掲】形式ニューロンへ至る道

太郎くん
太郎くん

まずは、形式ニューロンへ至る道を再掲。

  • ヘヴィサイド関数(済)
  • 形式ニューロン(済)
  • 分類問題のHelloWorld
  • 誤差関数
  • 決定境界直線
  • 決定境界直線の特定方法
  • 総当たり法による分類
フクさん
フクさん

分類問題のHelloWorldに相当する話。

HelloWorld

フクさん
フクさん

よくプログラムをする際に
標準出力方法を最初に学ぶことが多い。

太郎くん
太郎くん

「HelloWorld」とか出力するあれだね。

フクさん
フクさん

今回は、分類問題の於けるHelloWorld相当の話になる。
と言っても、「HelloWorld」という文字列を表示するわけでは無く、
最も基本的且つ最もシンプルな話。という意味合いだけど。

太郎くん
太郎くん

最初はシンプルに限るよね。
難しい話されてもわからんし。

分類問題のHelloWorld

フクさん
フクさん

分類問題の於けるHelloWorldは、
ANDゲートになる。

太郎くん
太郎くん

ANDゲートって、2入力あって、
両方が1なら1、どちらかが0だったら0になる。
ってやつだよね?

フクさん
フクさん

そうそう。
真理値表で表現するとこうなる。

ANDゲートの真理値表

\(x_1\)\(x_2\)\(y\)
000
010
100
111
太郎くん
太郎くん

まぁ、これはわかる。

2入力1出力の形式ニューロン

フクさん
フクさん

この際のANDゲートを、形式ニューロンで表現したい。
この場合の形式ニューロンは
2入力1出力の構成になる。
概念図で示すと以下になる。

2入力1出力の形式ニューロン、x1、x2、w1、w2、+b、y、H、実際の形式ニューロンは-bだがややこしいので+bに変えた
フクさん
フクさん

形式ニューロンのバイアスは、本来であれば\(-b\)で表現されるが、
話をシンプルにするために\(+b\)に表現しなおしている。

太郎くん
太郎くん

毎回、マイナスを意識するのもめんどうだもんね。

フクさん
フクさん

そして、これを数式で表現すると以下になる。

\(
y=H\Bigg(
\begin{bmatrix}
w_1&w_2&b
\end{bmatrix}
\begin{bmatrix}
x_1\\
x_2\\
1
\end{bmatrix}
\Bigg)
\)

太郎くん
太郎くん

前回の概念図、数式からすると、確かにこうなるね。

フクさん
フクさん

この構成をもって、適切な\(w_1,w_2,b\)を探すことが、分類問題を解く。
ということになる。

まとめ

フクさん
フクさん

まとめだよ。

  • 分類問題のHelloWorld総統はANDゲート。
  • ANDゲートを形式ニューロンで実現するための構成を説明。
    • 2入力1出力の構成になる。

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました