Learningに関して勉強をしています。以前、パターン認識系の本を読んでいたのですが、実装をせずに理論だけ学んでいて、いまいち自分の中で理解が進まず挫折していました。――Pythonで学ぶディープラーニングの理論と実装」では、python3系を用いてパーセプトロンから丁寧に実装して理解をすすめることができて非常に面白いです。現在勉強中のパーセプトロンとニューラルネットワークについて、箇条書きですが簡単にまとめていきます。あり、それぞれの入力に対する重みと、バイアスbによって出力yが変わる。0の点で非連続な関数である。ニューラルネットワークパーセプトロンの考え方を応用したもので、入力層から来たデータが中間層を通過し、最後に出力層で求める出力を表現する。中間層に関しては、実装に応じて複数の層にまたがる場合がある。Function)*1できまる。シグモイド関数は最大が1,最小が0に収束していき、ステップ関数とは違って連続関数である。入力に対して最終的な出力を行う際の関数(Activation-Functionと呼ばれる)が異なることである。0において非連続なステップ関数で0か1の2値しか返さない。それに対してニューラルネットワークにおいては連続関数であるシグモイド関数を用いている。シグモイド関数は入力に対して連続的に出力が変化し、この特徴がニューラルネットワークにおいて重要な意味を持つ。0から1の間の範囲で表せること、そしてどちらも非線形関数であることが共通点。ニューラルネットワークにおいては、活性化関数に非線型関数を使う必要がある。活性化関数に、線形な関数を使った場合、中間層の無いネットワークで表現できてしまうので、層を深くすることの意味がなくなってしまう。中間層のないネットワークで表現できてしまうためである。従来のパーセプトロンは、入力に対して望みの出力を得るために、重みを設定する必要があり、非常に手間のかかる作業だった。ニューラルネットワークは、与えられたデータから自動で学習し、パラメータを自動的に設定できる。ある入力データから、(連続的な)数値の予測を行う上記2種類の問題では、それぞれ、ニューラルネットワークの出力層で用いる活性化関数が異なる。ソフトマックス関数が一般的に使われている。恒等関数とは、与えられた入力をそのまま出力するもので、出力に変化はない。ソフトマックス関数は、以下の数式で表すことができる。config.'月別アーカイブ参加グループプログラミングテクノロジーはてなブログをはじめよう!kaktsさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。