無限不可能性ドライブ

『ニューラルネットワーク自作入門』に刺激されてExcelVBAでニューラルネットワークを作ってみたものの、やっぱり数学やらなきゃと思い少しずつやってきたのもあって、自分の知識の整理とかそういった感じです。

2019-10-29から1日間の記事一覧

【VBA編】ニューラルネットワーク(マクロの登録)

マクロの登録 各ボタンにマクロを登録します。 ボタン プロシージャ名 データ読み込み Click_データ読み込み 重みクリア Click_学習状況クリア 学習開始 Click_学習開始 テスト開始 Click_テスト開始 データ読み込み C2セル、C3セルをダブルクリックして、デ…

【VBA編】ニューラルネットワーク(mdlSupervisor)

スーパーバイザ メインの処理となるモジュールです。 '[mdlSupervisor - 標準モジュール] Option Explicit Option Base 1 Dim mcInLayer As classInputLayer Dim mcHLayer1 As classHiddenLayer Dim mcHLayer2 As classHiddenLayer Dim mcOutLayer As classO…

【VBA編】ニューラルネットワーク(classOutputLayer)

出力層クラス 出力層のユニットを管理するクラスです。 '[classOutputLayer - 出力層クラス] Option Explicit Option Base 1 Dim mUnitList() As classUnit 'ユニット格納用リスト Dim mUnitCount As Long '自レイヤーのユニット数 Dim mAct As Long '活性関…

【VBA編】ニューラルネットワーク(classHiddenLayer)

隠れ層 隠れ層のユニットを管理するクラスです。 '[classHiddenLayer - 隠れ層クラス] Option Explicit Option Base 1 Dim mUnitList() As classUnit 'ユニット格納用リスト Dim mUnitCount As Long '自レイヤーのユニット数 Dim mAct As Long '活性関数の種…

【VBA編】ニューラルネットワーク(classInputLayer)

入力層のユニット管理 入力層のユニットを管理するためのクラスです。 '[classInputLayer - 入力層のユニットを管理するためのクラス] Option Explicit Option Base 1 Dim mInUnitList() As classInputUnit 'ユニット格納用リスト Dim mInUnitCount As Long …

【VBA編】ニューラルネットワーク(classInputUnit, classUnit)

入力層のユニットクラス 入力層のみ実装が異なります。 '[classInputUnit - 入力層のユニットクラス] Option Explicit Dim mX As Double '入力データをセットする '[引数] <- inputData : Double / 入力データ Public Property Let X(ByRef aInputData As Do…

【VBA編】ニューラルネットワーク(ML)

演算用モジュール 活性化関数や損失関数を実装します。 '[ML - マシンラーニング演算用モジュール] Option Explicit Option Base 1 '活性化関数 ReLU '[引数] <- aU : Double / ユニットの u '[戻り値] -> actReLU : Double / ReLU適用後の値 Public Functio…

【VBA編】ニューラルネットワーク(ws_Main, G, mdlReadData)

ファイル指定処理 読み込むデータのCSVファイルを指定するコードです。 「ws_Main」シートに記述します。 '[ws_Main - シートオブジェクト] Option Explicit Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim filePa…

【VBA編】ニューラルネットワーク(メイン画面)

メイン画面 celaeno42.hatenablog.com メイン画面の数式 数式はこのように入っています。 C列の値はとりあえずこんな感じで。 モジュールとシート 必要な標準モジュール、クラスモジュールは以下の通りです。【標準モジュール】 オブジェクト名 用途 G 定数…

【VBA編】ニューラルネットワーク(全コード)

全コード掲載 なかなか更新の時間がとれず、ずいぶんと放置してきてしまい、未完に終わってしまうのも何なのでいくつかに記事を分けて全コードを載せていきます。 概要とデータ celaeno42.hatenablog.com メイン画面 celaeno42.hatenablog.com ws_Main, G, m…