2017.12.21このサイトでは、ニューラルネットワークの基本原理や特徴(メリット・デメリット)、その計算方法についてまとめました。目次ニューラルネットワークとは単純パーセプトロン単純パーセプトロンの学習1勾配降下法ニューラルネットワークとは脳内には、ニューロン(神経細胞)が無数にあります。ニューロン同士はシナプスで繋がっています。入力される電気信号の電位がある閾値を超えると発火し、シナプスによって次のニューロンに電気信号を出力します。この動作を各ニューロンへ繰り返ししていくことで、脳は電気信号(情報)を伝達します。ニューラルネットワークでは、この「脳が電気信号(情報)を伝達する仕組み」を表現することを目指した数学モデルです。■ニューロン(左)、数学モデル(右)ニューロンモデルでは、細胞体を「ノード」、軸索を「エッジ」、シナプスを「活性化関数」で表現します。以下の式で計算します。ある閾値を超えていれば「1」、そうでなければ「0」を出力するように設計します。これは、電気信号がある電位を超えた時に急激に発火するニューロンの特性を表現したものです。活性化関数としてよく利用される関数は次の通りです。線形ランプ関数はある閾値です。閾値とした場合のニューロンモデルのことです。表すと次のようになります。閾値を和の形で表現しています。単純パーセプトロンは、ニューラルネットワークの基本単位となる重要な物です。重みと閾値を変化させることで、例えば「明日の天気予測」「顧客に最適な商品予測」などの様々なモデルを作成できます。結びついていないバイアスと呼ばれる値です。式(2)を見ても分かる通り、バイアスを加えることは、重みを一つ追加するのと同じです。分だけ上下することになり、偏らせることができます。実際のニューロンでは、入力信号の電位がある閾値を超えたときに、発火して信号を出力します。その閾値を変化させる機能を持ちます。0.5の場合は、閾値を-0.5に変化させることができます。単純パーセプトロンでは、教師データを与えて勾配降下法(最急降下法)により、重みを決定します。うち大きい方の値を出力する関数です。大きいほど出力値に誤りが多いことを表します。動かして更新していきます。更新の計算式は次のようになります。ずらす量(1より小さな値を設定。活性化関数(ステップ関数)も次のように定義します。初期パラメータ(学習率とエポック最大数)を設定します。初期値を適当に決めます。単純パーセプトロンに入力します。出力yと正解ラベルtを比較し、一致しなければ最急降下法で重みを更新します。手順3~5をエポック最大数分だけ繰り返します。ArticlesPython【Scikit-learn】サポートベクタマシン(SVM)で教師あり学習(分類器作成)この記事では、Pythonと機械学習ライブラリ「scikit-learn」を用いて、サポートベクタマシン(SVM)による教師あり学習を行う方法について紹介します。違いについて入門者向けにまとめました。Python【Python/Keras】ニューラルネットでAND・OR演算の学習Pythonの機械学習モジュール「Keras」でニューラルネットワークを実装し、AND・OR演算を学習する方法をソースコード付きでまとめました。Python【Scikit-learn】ニューラルネットワークでアヤメ分類(MLP)この記事では、Pythonと機械学習ライブラリ「scikit-learn」を用いて、ニューラルネットワーク(NN)でアヤメの分類を行う方法について解説します。Cascade(識別器・分類器)による顔検出のアルゴリズム・仕組み・計算方法についてまとめました。Python【Scikit-learn】ニューラルネットワーク学習モデルのファイル出力・保存この記事では、Pythonと機械学習ライブラリ「scikit-learn」を用いて、ニューラルネットワーク(NN)で学習したモデルをファイルに出力し、保存する方法とソースコードを解説します。Python【Python/Keras】VGG16で画像認識・分類Pythonの機械学習モジュール「Keras」でCNN(畳み込みニューラルネットワーク)を実装し、VGG16を利用して画像認識・分類する方法をソースコード付きでまとめました。KindleのIT書合同50%OFFキャンペーンについて紹介します。コンピュータ白黒写真や画像をカラー化するフリーソフト・アプリ白黒の写真・画像をカラー化できる無料のフリーソフト・アプリについて解説します。Python【Scikit-image】画像のHSV色空間への変換この記事では、PythonとScikit-image(Scikit-learn)を用いて、画像をHSV色空間に変換する方法とソースコードについて紹介します。け資料(pdf・サイト)まとめ機械学習を学ぶ入門者に最適な、無料の資料(PDF・WEBサイト)をまとめてみました。活用事例についてまとめました。Python【Python】機械学習ライブラリの比較まとめこの記事では、Pythonで機械学習を簡単に実装できるライブラリと、サンプルコードコードについて入門者向けに使い方を解説します。数量化1類の計算式や目的変数と説明変数についてまとめました。コメントをキャンセルメールアドレスが公開されることはありません。Cascadeによる顔検出の原理2017.07.242018.04.23【Scikit-learn】バージョンの確認2017.01.192017.10.12【ニューラルネット】多層パーセプトロン(MLP)の原理・計算式2017.12.222018.07.01【機械学習】ブースト(boost・AdaBoost)の原理・計算式2017.07.232018.04.23【Scikit-learn】ニューラルネットワーク(多層パーセプトロン・MLP)2017.01.192018.04.24【Python/pip】Kerasをインストール(Windows編)2018.04.222018.08.15【CNN】畳み込みニューラルネットワークの原理・仕組み2018.04.302018.05.03【Scikit-learn】Pythonにインストールする方法2016.12.032017.10.30【Python/Keras】ディープラーニング入門・使い方2018.04.222018.08.15タイトルとURLをコピーしました。