パーセプトロンとは?
状態:-
閲覧数:1,421
投稿日:2018-04-20
更新日:2018-05-30
表記
英語
・Perceptron
1957年に考案されたアルゴリズム
アメリカの心理学者・計算機科学者「フランク ローゼンブラット(Frank Rosenblatt)」が1957年に考案
・ニューラルネットワーク(ディープラーニング)の起源となるアルゴリズム
1958年に論文を発表
複数の信号を入力として受け取り、ひとつの信号を出力する
ここで言う「信号」とは
・電流や川のような「流れ」をもつもの
パーセプトロンの信号
・「流す/流さない(1か0)」の二値の値
複数の二進数(0または1) x1,x2,… を入力にとり、ひとつの二進数(0または1)を出力する
単純パーセプトロン
二値分類
主に二値分類に使用される
メールのスパム判定
・スパムメール
・スパムメールではない
対象を含む画像か判定
・リンゴを含む画像
・リンゴを含まない画像
単語を含むか否か判定
・単語を含む文字列
・単語を含まない文字列
仕組み
入力信号xに重みwが乗算され、その総和が一定のしきい値を超えたら1を出力。それ以外は0を出力
入力
入力信号x
・x₁,x₂ … xₙ
・複数の二進数(0または1)
重み
重みw
・その特徴量が出力に与える影響の大きさ
・負数でも可
出力
出力信号y
・y
・ひとつの二進数(0または1)
処理の流れ
1.単純な掛け算
・特徴量「入力信号x」に、係数「重みw」を乗算
x₁×w₁
x₂×w₂
xₙ×wₙ
2.条件分岐後、「出力信号y」を出力
・「入力信号x」に「重みw」を乗算した総和が、一定の「しきい値」を超えたら1を出力
・それ以外は0を出力
※この処理を行う関数を「活性化関数」と言う
※1を出力した場合「ニューロンが発火する」と表現したりする
x₁×w₁ + x₂×w₂ + … xₙ×wₙ≧0
・活性化関数によって出力は「1」になるx₁×w₁ + x₂×w₂ + … xₙ×wₙ<0
・活性化関数によって出力は「0」になる数式
・単純パーセプトロンをJavaで作る
単純パーセプトロンの解説・実装
人工知能やディープラーニングの理解に欠かせないパーセプトロンとは何か?
ニューラルネットワークと深層学習
・パーセプトロン
jtet/Perceptron: Simple PHP implementation of a Perceptron
jtet/MultiLayerPerceptron: A Simple PHP implementation of a Multi Layer Perceptron Neural Network
Perceptron.php
Neural networks from scratch for Javascript linguists (Part1 — The Perceptron)
「目に見えるパーセプトロン」という資料を作ったので公開します
ニューラルネットワークをJavaScriptで実装。
A JavaScript Perceptron
・単純パーセプトロンからの機械学習入門
・やる夫で学ぶ機械学習 - パーセプトロン -