知っておきたい:AIの基本の【パーセプトロン】


はじめに

  • パーセプトロンとは(一般的な説明)
    • AIはコンピュータに人間の脳を再現したもの
    • 人間の脳を再現した一番小さな機能がパーセプトロン
    • だからパーセプトロンって言葉を覚えておく
  • ここで説明したいこと
    • 上記ではAIを理解するために必要なイメージは何もわかない
    • せっかくパーセプトロンについても役に立たない
    • パーセプトロンはスタート地点なので、せめてAIをイメージするところまで行きたい

イメージ作り

パーセプトロンのイメージ

パーセプトロンのイメージ
  • 「入力」して何かを行って「出力」する
    • 入力は数字
    • 出力も数字
    • 何かは計算(計算なら何でもよい)
    • もうひと言、「?」記号を使っているのは中身が分からなくてもいいと言う意味が込められている
  • 例えば
    • 中学で習った1次関数 y=2x
    • 入力x=1に対して、出力y=2
    • 絵の [?] に当てはまるものはは【かける2】
      • これは [?] が分かっている例
  • [?] が分からない例
    • 入力1に対して、出力2になる計算は?
    • y=2xも正解だがそれだけとは限らない
  • このイメージのポイント
    • 入力があって出力がある
    • 注目するのは入力と出力
    • [?] は色々あるがそれを人間が考えないで(探さないで)「?」にする

イメージを膨らませるヒント

  • AIの学習は
    • 入力に対し、期待の出力を得られるようにすること
    • AIが自ら適切な [?] を考える(探す)作業
  • データを使う
    • AIはデータを与えると学習が進む
    • より多くのパターン(入力と出力の組み合わせ)に合致する [?] を見つけ出す

AIが学習する動きを想像する

  • 例えば、
    • 入力1で期待する出力3なら、
    • 最適な [?]【かける3】
      • 誰でもわかる
  • AIは【かける3】に少しずつ近づく
    • AIの学習にはデータを使う
      • {x=1.3,y=3,9}、{x=2.1,y=6.3}みたいなデータを次々に投入する
    • AIは与えられた経験(データ)から”3”に近づくように努力する
      • 0.001→0.213→1.32→2.012→2.583→2.881→3.427→3.201→2.899→2.934→…
  • AIの考えている(やっている)ことは理解できなくて、
    • x=1 ⇒ [(1^2+14.32)/5-0.03] ⇒ y=3 のようなことをやっているのかも知れない
    • 無駄なことをやっているような気がするけど、ここで理解したいことは、
      • [?] は何でもよくて、結果さえ正しければOK
      • [?] に当てはまる答えは1つでもない
  • パーセプトロン単体の説明はここまで

パーセプトロンの発展形

ネットワーク

  • 知能を作る
    • 人間の脳を考えると、やっぱり1つや2つでは少ない
    • たくさんつないでネットワークにする
    • 多層パーセプトロン(MLP)
      • Multi・・いくつも
      • Layer・・層(を重ねた)
      • perceptron・・パーセプトロン
  • よいこと
    • 複雑な計算もこなせるようになった
  • よくないこと
    • たくさんつないでも複雑さに限界があった
    • どんなに複雑にしたと思ってもそれと等価な単純な形(ネットワーク)が見つかった

パーセプトロン+α

  • 複雑にするために
    • ニューロンに再度注目した
      • ニューロン=パーセプトロンのモデルになった人間の脳
    • ニューロンにはパーセプトロンにないもう一つ機能があった
  • ニューロンのもう一つの機能
    • いつも電気信号を送っているわけではない
    • ししおどし(日本の庭園にある)のように、ある一定の量がたまったら電気信号を送るようになっている
    • 閾値に達したら発火(次のニューロンに電気信号を伝える)する
  • コンピューターで再現する工夫
    • どこまで溜まったかメモリ(記憶)しておくのは難しい
    • 数値処理したい
      • ちょっと違うけど、水門みたいに出す量を調整する
      • 調整は数学の知識を使って実現する

まとめ

  • 仕組み
    • パーセプトロンは入力と出力を持っている
    • たくさんつないで脳のネットワークのようなものを作る
    • AIが内部でやっていることはよくわからないけど、それでいい
    • より複雑にする工夫も取り入れられた
  • 学習
    • データを使ってAIは学習し、ちょっとずつ正解に近づく
    • データを人間が用意し、AIは自分で学習(「?」を見つけ出す)する

関連記事紹介

  • 下記記事にAIと数学について説明した記事
    ※活性化関数の説明ではありません
    • AIの理解には応用数学の理解が必要と言われている
    • しかし、応用数学は簡単にマスターできるようなものでもない
      • 数学につまづいてAIの勉強が進まないことを避けたい
    • 道具としての数学を説明
    • 理論としての数学を説明
      • 結局、道具として使えればいいんじゃないかと言うことを書いています


Posted by futa