AI・機械学習・ディープラーニング

パーセプトロン

投稿日:

パーセプトロンとは?

パーセプトロン(perceptron)はアルゴリズムの1つである。
ローゼンブラットというアメリカの心理学者・計算機科学者が1957年に考案した。
ニューラルネットワークの起源となるアルゴリズムである。

複数の信号を入力として受け取り、一つの信号を出力する。
出力する信号は「流す(1) or 流さない(0)」の二値である。

これが最も単純なパーセプトロンである。
x1,x2が入力信号で、yが出力信号である。
x1にw1という重みを掛け、x2にw2という重みを掛け、それぞれの和がある値を超えた場合にy=1となり、ある値未満のときはy=0となる。
このときの「ある値」を「閾値」とよび、θ(シータ theta)で表す。

よって
y = 0 (x1*w1 + x2*w2 <= θ)
y = 1 (x1*w1 + x2*w2 > θ)
このようになる。

閾値をバイアス(b)として、このように変換できる。
y = 0 (b + x1*w1 + x2*w2 <= 0)
y = 1 (b + x1*w1 + x2*w2 > 0)

パーセプトロンの限界


x-y軸をもつ2次元グラフ上で、直線による領域(=線形領域)しか表現できない。


曲線領域(=非線形領域)を表現することができない。

多層パーセプトロン

パーセプトロンを連結する(=層を重ねる)ことにより、非線形を扱えるようになる。
1つのみからなるパーセプトロンを単純パーセプトロンと呼ぶ。
単純パーセプトロンを複数重ねたものを多層パーセプトロン(multi-layered perceptron)と呼ぶ。

-AI・機械学習・ディープラーニング

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

損失関数、ニューロンの数、層の深さは何か?

損失関数   ニューロンの数 ニューロンの役割 ここでいうニューロンは単純パーセプトロンのこと。つまり、x1w1+x2w2>bで表されるもの。 この式より、bより大きいものと小さいもの …

no image

Windows7で「ゼロから作るDeep Learning」を実装していく

IDE Pycharmがお勧め。 PycharmのFile>Default Settings>Project Interpreterで、 右上の緑の「+」ボタンから、「numpy」と「matplotl …

no image

AWSの機械学習サービス

 サービス 概要 補足 SaaS/PaaS Amazon SageMaker  機械学習環境。事前に容易されたモデル又は独自のモデル(TensorFlow,MXNetなど)を使って分散学習ができる。S …

no image

DeepMindの記事見て触発された

http://gigazine.net/news/20141203-deepmind-demis-hassabis/ Googleに買収されて有名になっていたDeepMindの創業者の記事を読んだ。 …

no image

numpy 配列の乗算

import numpy as np x = np.array([0,1]) w = np.array([0,5],[0.5]) print x*w >>>[0. 0.5] このよう …