聞けないバックプロパゲーションとは機械学習では神経細胞のネットワークを模倣したニューラルネットワークを用いて推論を行っていきますが、学習の過程で推論と正解値が異なる場合があります。そのまま続けた場合、学習の精度があまり良くない状態となってしまうので、出力結果を元にニューラルネットワーク全体の修正をその都度を行っていく仕組みがあります。その仕組みがバックプロパゲーションと呼ばれる方法です。(ごさぎゃくでんぱほう)と呼ばれ、1986年にデビッド・ラメルハートらによって命名されました。バックプロパゲーションの役割はコンピュータの回答が間違っていたり、期待とは離れている場合、誤差を出力側から逆方向に返し、各ニューロンの誤りを正す役割となります。具体的に図を用いて説明します。この図は2つのニューロンを持つ入力層と、3つのニューロンを持つ中間層、2つのニューロンを持つ出力層で構成されています。中間層と出力層それぞれに重みがあります。仮に、出力層からでた出力値が正解と異なっていた場合、バックプロパゲーションでは出力値と正解の誤差を元に中間層と出力層の間の重みの修正を行います。この修正値もとに入力層と中間層の間の重みの修正を行っていきます。このように誤差を元に前の前へとさかのぼっていき修正を行うのがバックプロパゲーションです。一つ例としてMNISTのケースを説明します。MNISTでは0~9を表している画像データと正解値の0~9の数値データの比較を行います。入力値が画像データで、出力値が0~9の確立値となります。仮に7を表している画像データを入力した場合、次のように出力値の確立がでる場合があります。0.0xxこの場合、正解値が7にも関わらず、出力値の確立は1が最も高くなってしまい不正解となります。不正解となった場合は、バックプロパゲーションを行い重みを修正していきまます。0.0xxこのように、ニューラルネットワーク全体の修正をその都度行い、学習の精度を高めていってくれるバックプロパゲーションですがいくつか注意点があります。それは4層以上のバックプロパゲーションはうまくいかないということです。一般に層が深くなればなるほど、バックプロパゲーションが下の方まで届かなくなるため、学習の精度が下っていくと言われています。そのため層を増やしすぎない適切な仕組みが必要とされます。機械学習、ディープラーニングではモデルの精度を高めることが非常に大切です。2016年3月にAIが注目を浴びる事件がありました。機械学習は、大きく分けて「教師あり学習」と「教師なし学習」に分けられます。「教師あり学習」とは「入力データ」と「正解データ」がセットになった訓練データです。この記事ではニューラルネットワークに必要な要素の一つ、活性化関数について説明します。その前に簡単にニューラルネットワークについておさらいをしたいと思います。複数ニューロンから構成される非常に複雑な構成をしています。...PREVボストン市の住宅価格を調べてみるNEXTランダムで2次元のデータを作成してみる新着記事一覧AIプログラミング2019/7/7Windows環境でAIによる画像編集が可能なFE-GANを試してみるAIプログラミング2019/02/19猫の動画を対象にディープラーニングの特徴量を可視化してみるAIプログラミング2019/02/11VGG16モデルを使用してオリジナル写真の画像認識を行ってみるAIプログラミング2019/02/03VGG16ネットワークの各レイヤの特徴を可視化するAIプログラミング2019/01/27Scikit-Learnの識別器をループで一気に適用させるプロフィールでんだろ。ほしかま大好き室内飼い猫10才。未知の世界の興味があり、飼い主の目を盗んで脱走をすることもしばしば。@Technology_AI飼い主も未知の世界の興味があり、京都や奈良などの寺院巡りを楽しみながら旅行に行く一方、AIでの画像変換を勉強しながらブログを書いています。