🍉しいたげられたしいたけ

NO WAR! 戊争反察Ceasefire Now! 䞀刻も早い停戊を

Excelで手軜に詊す機械孊習1章の2OR回路、NAND回路、NOR回路

OR回路に関しおは、前蚘事のExcelシヌトにおいおセルB13D16に入っおいる真理倀衚デヌタのうち、D14ずD15を 1 に倉曎するだけである。真理倀衚デヌタや初期倀、それに埮小倀などの数倀デヌタは、いくらでも䞊曞きが可胜である。

f:id:watto:20190726022615p:plain

 

今回もcsvファむルのダンプを貌り付ける。前回のcsvずの盞違点は13行目ず14行目だけだから、ファむルを保存しおいただいた方はExcelで開いおデヌタを曞き換えおいただいた方が早いのだが。

远蚘

csvファむルのダンプぱントリヌ末尟に移動したした。サむドバヌにはみ出しお範囲遞択がしづらかったので。

远蚘おわり

 

前回ず同様の手䞭でマクロをボタンに登録するず、やはりだいたい60回くらいクリックした頃から、すなわち真理倀衚の「孊習」を15回くらい繰り返した頃から、x ず y が䞡方ずも 1 のずき「掚定倀」の倀が負、それ以倖の堎合には正になるはずである。もちろんこの回数は重み W0、W1、W2 の初期倀によっお倉化する。

 

ボタンのクリックを䜕癟回か繰り返しおいるず、「2乗和誀差」の倀はどんどん小さくなり、「参考倀゚リア」の「傟き」はおよそ - 1 に、「x 切片」ず「 y 切片」は共に 0.4 前埌の倀に近づくず思われる。

 

前回同様、「孊習」の抂念図をグラフに衚すず、こんなむメヌゞである。

f:id:watto:20190726024157p:plain

 

真理倀衚のデヌタを倉曎するこずによっお、OR回路のみならずNAND回路AND回路の吊定や 

f:id:watto:20190726033800p:plain

 

NOR回路OR回路の吊定も、孊習させるこずができる。

f:id:watto:20190726034111p:plain

 

すなわち次の䞍等匏においお

W0x + W1y + W2 > 0

重みW0ずW1が負であれば、䞡蟺に -1 を掛けるこずにより

- W0x - W1y - W2 < 0

ずいう䞍等匏が実珟可胜である。 

 

AND、OR、NAND、NOR それぞれの真理倀衚デヌタにおいお、重みW0、W1、W2の初期倀をいずれも0.5ずし、マクロボタンを100回クリックしたずき、すなわち「孊習」を25回繰り返したずころ、W0、W1、W2の倀は、次衚のようになった。

  W0  W1  W2 
AND 1.27433 1.20832  -2.17074
OR 1.74447 1.77601 -0.3671
NAND  -1.57819  -1.61533 0.2447
NOR  -1.09802  -1.03452 1.94745

 やり盎すたびに埮劙に倀が違うこずが気になったが、論理回路が構成できおいればいいずいうこずにしお、気にしないこずにする。

 

               

 

問題はXOR排他的論理和回路である。XORの真理倀衚は次のようになる。

 x  y  t
 0  0  0
 1  0  1
 0  1  1
 1  1  0

 

これを盎亀座暙䞊にプロットするず次のようになり、これたでず違っお䞀次䞍等匏による構成が䞍可胜であろうこずは、ただちに予想される。

f:id:watto:20190726090025p:plain

実際、䞊掲Excelシヌト䞊の真理倀衚デヌタを次のように倉曎するず、マクロボタンをどれだけクリックしおも「2乗和誀差」の倀は小さくならず、「掚定倀」に正しい結果は埗られない。すなわちXOR回路を「孊習」するこずはできない、ずいうこずだ。

f:id:watto:20190726090618p:plain

 

XOR回路を実珟するためには、もうひず工倫を付け足すこずが必芁である。

そしおその工倫を付け足したずき、機械孊習でできるこずが䞀気に拡がるのである。

 

远蚘

今回の゚ントリヌの最初にスクリヌンショットを瀺したOR回路を孊習させるExceシヌトのcsvダンプです。サむドバヌにはみ出しお範囲指定がしづらかったので移動したした。

重み,W0,W1,W2,,,,,,,
,1.283922956,1.310624771,-0.000851633,,,,,,,
入力,x,y,t,,,掚定倀,,シグモむド関数,,2乗和誀差
0,1,1,1,,,=B2*B4+C2*C4+D2,,=1/(1+EXP(-1*G4)),,=0.5*(I4-D4)^2
,,,,,,,,,,
,dW0,dW1,dW2,,数倀埮分䜜業゚リア,,,,,
結果,=B$4*$K9,=C$4*$K9,=(K8-K4)/G7,,h,0.0001,,,,
,,,,,掚定倀+h,=G4+G7,,=1/(1+EXP(-1*G8)),,=0.5*(I8-D4)^2
,W0-dW0,W1-dW1,W2-dW2,,,,,,数倀埮分,=(K8-K4)/G7
曎新倀,=B2-B7,=C2-C7,=D2-D7,,,,,,,
,,,,,参考倀゚リア,,,,,
index,x,y,t,,,,,,,
=A4+1,0,0,0,,傟き,=-C2/B2,x切片,=-D2/B2,y切片,=-D2/C2
,0,1,1,,,,,,,
,1,0,1,,,,,,,
,1,1,1,,,,,,,
"=MOD(A13,4)","=INDEX(B13:B16,$A$13,1)","=INDEX(C13:C16,$A$13,1)","=INDEX(D13:D16,$A$13,1)",,,,,,,

远蚘

すみたせん、2019幎8月3日付拙蚘事 より、以䞋をこの蚘事にも転茉したす。

すみたせん、ブラりザ画面からダンプ郚分をコピヌしおメモ垳に貌り付け、拡匵子を.csvに倉曎しお保存ずいうのを自分で詊すず、ダブルクリックで開いたずき文字化けが発生するずいう珟象が生じ、いろいろ調べたのですが改善されたせんでした。Windows10Chromeです。

そこで拡匵子.txtで保存し、Excelの「開く」より「すべおのファむル(*.*)」を指定しお読み蟌んだずころ、文字化けが起きたせんでした。ただし「テキストファむルりィザヌド 2 / 3」「区切り蚘号」の「□カンマ(C)」にチェックを入れる必芁がありたす。ご参考たで。

远蚘おわり

次回

www.watto.nagoya

スポンサヌリンク

Â