ゼロから学ぶスパイキングニューラルネットワーク Spiking Neural Networks from Scratch

B!

1. はじめに

近年,「人工知能」「AI」「ディープラーニング」といった言葉がより身近になってきました.

みなさんはこういった単語にどのような印象を持ちますか?

「将来AIに仕事を奪われる」や,「将来もっとAIのおかげで豊かになる」のように考える人も少なくないでしょう.

現在のAIは,そのほとんどが人工ニューラルネットワーク (ANN)と呼ばれる人工知能モデルで成り立っています.

このANNについて,読者のみなさんがどの程度知識を持っているかはわかりませんが,「神経回路をモデル化したもの」というざっくりとしたことは知っているかもしれません.

もちろん,今初めて知ったという方もいてOKです.

なんせ今の時代,AIの構築は誰でも気軽にできるので深い知識を持っていなくても良いのです.

現在扱われているANNは,先ほど話したように我々の脳内の神経回路(ニューラルネットワーク),もとい神経細胞(ニューロン)をモデル化したものなのですが,そのモデル化は完全ではありません.

そこで今,少しずつ研究されているのが新世代のANNです.

本サイトでは,その新世代のANNと呼ばれるスパイキングニューラルネットワークについて取り上げて解説していきます.

1-1. 筆者について

私は,執筆現在はとある国立大学大学院の修士課程に在籍している学生です.

書いている現在は在学中ですが,書き終えるころには修了しているかもしれません.

専門は,「知能情報学」「ニューラルネットワーク」「人工知能」「機械学習」あたりがキーワードです.

そして3年間,スパイキングニューラルネットワークをテーマに研究してきました.

研究内容も基礎研究寄りだったので,比較的この分野についての知識はあると自負しています.

とりあえず,それなりに信頼してください.

HiroshiARAKI

1-2. 本サイトの目的

つまるところ,本サイトは私の学んだことを,最後にただアウトプットしているだけです.

本サイトのコンセプトは,

  • この研究分野に興味を持ってもらうこと
  • SNNの知名度をあげる
  • SNN研究の導入となるような内容を提供する
  • 実装方法の一例も紹介する
  • 自己満

です.

そして注意点として,

  • 工学部出身の学生が書いている内容であること
  • 書籍や論文と違い査読者がいないこと
  • コーディングは最適なものとは限らないこと

です.

何を意味するかと言うと,不正確な情報は載せないつもりで書いていますが,もしかしたら誤字脱字, 認識の誤りがある部分が発生してしまう可能性があるということです.

また,工学目線での説明になっている部分があると思いますので,神経科学屋から見たら「この説明は雑すぎる!」と思うかもしれませんがその辺は許してください.

本サイトは,あくまで本研究分野の導入知識の一助として利用していただけると幸いです.

なお,山拓さんの作成しているゼロから作るSpiking Neural Networks とは名前が似ていますが別物です.

同じようなネーミングにしてごめんなさい.

1-3. 本サイトで学べること

早速本題に移りたいのですが,最初にこのサイトを通じて学べることをリストアップしておきます.

もしかしたら,みなさんの希望に添えない場合もありますが,大した量ではないので,とりあえず読み進めてください.笑

本サイトでは,

  • SNNの概要
  • 神経細胞の基礎知識
  • ニューロンのモデル化について (LIFは詳細に解説します)
  • 学習則 (STDP) について
  • 有名なSNNモデルの知識
  • これからのSNN

ということが学べます.

それでは早速本題に入っていきます!