Norbert Preining氏によるコラム、【最新の機械学習の代表、ニューラルネットワークとは】を公開

アクセリア株式会社の研究開発部社員であるNorbert Preining氏による、コラム連載を開始しました。 https://www.accelia.net/column/research/

第2回:最新の機械学習の代表、ニューラルネットワークとは

「ニューラルネットワークがまねした人間の脳」
 前回のコラムリンクで機械学習の原則について議論した後は、最新の機械学習の代表といえるニューラルネットワークを紹介します。

 ニューラルネットワークは人間の脳を模倣を試みたもので、70年代後半から80年代初めにかけて非常に人気がありましたが、コンピューティングパワー欠如のために、90年代後半に人気を失ってしまいました。
 ところが、最近の計算能力の向上、特にGPUのサポートがニューラルネットワークの人気を復活させ、今日では最も成功した機械学習ツールの1つとなりました。


「ニューロンの基本構造」
 人間の脳では、通常、ニューロンが特定のタスクをそれぞれ担当していますが、実験では別のタスクを実行するように訓練することができます(例:舌で見る、など)。
 したがって、ニューロンを模倣することで、機械学習プログラムが作られるのです。

単一のニューロンの基本構造は以下の通りです。

●一連の入力線
●入力線の重み(または重要度)の値
●単一の出力線
●重み付けされた入力に基づいて、信号が出力に
 送信されるかどうかを決定するアクティブ化関数


「ニューロンの簡単な例」
 それぞれの重み -30, +20, +20 の3つの入力線と、5より大きい値を選択するアクティブ化関数を持つニューロンの簡単な例から見てみましょう。

重み付けされた入力信号の合計が5より大きい場合は、信号が出力線に送られます。

 説明を簡単にするために、ここでは第1入力線を常に送信する(これはいわゆるバイアス入力と呼ばれる)-30という重みを付け、他の2本の入力線についてのみ説明します。
線xとyの両方が送信されている場合、総和 20+20-30=10 となり、5より大きいので、出力線に1が送信されます。しかし、入力線xまたはyのいずれかが送信しない場合、20-30=-10 のいずれかが得られ、情報は送信されません。数学的にはこれは数学論理学のゲートと記述できるので、ニューロンは「xかつy」を計算します。

 この単純な例では、適切な関数を計算するための重みを用意していますが、実際にこれらの重みは未知であり、ニューロン(ニューラルネットワーク)の学習によって学習されます。
乱数で重みを初期化した後、実際の学習計算は、トレーニングデータ全体に対して以下のステップを繰り返すことからなります。

●現在の重みで学習入力の出力値を計算する(フォーワードプロパゲーション)
●期待される出力と実際の出力との間の誤差を計算する
●この誤差を使用して重みを調整する(バックプロパゲーション)


・・・ここから先は、アクセリア株式会社で公開中のコラム本編でご覧ください。
本編では、挿絵を交えて詳しく説明しています。
リンク


【Norbert Preining氏のコラム】
・第1回:今さら聞けない、機械学習/ディープラーニングとは!?
リンク

本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]