コンテンツへスキップ

証券マンとアナリスト、当てになりません/ついでにニューロンの話も

今日は株のお話。これ、別の所に書いたものですけど、こちらにも貼り付けておきますね。ちなみに、私の持株は、3585トムスエンタテイメントと7203トヨタ、この所ちょっと下がっていますけど、トムスは日本の誇るアニメ製作会社、トヨタはご存知、日本最大の自動車会社、利益1兆円とも予想される絶好調ぶり、大いに期待してます。


昨日の米国雇用統計、就業者の伸びは、予想を大幅に下回るネガティブサプライズ、で、金利の引き上げは当面なしとの見方が広がり、DJI、大きく上げているんですね。逆、だろうが!

トムスの決算、チェックは○でした。当然のことだけど。週初3日の下げは、ロイター記事でのミスリード。こんなもん、真に受けず、数字をきちんと読まなくちゃ。

さて、来週は、、、G7明けの急騰、準備完了です。円相場に惑わされず、企業利益を分析しましょう。スローストキャス、DJIもN225も、低いレベルでGC直前。トムスのストキャスも、低いレベルでGC。来週は皆がハッピーになれそうです。乞うご期待!!


G7、これ以上はないというくらいの、良い結果で終わりました。まあ、アメリカの双子の赤字に辟易しているヨーロッパと、自衛隊まで出した日本に惚れ込んだアメリカ、無理はないね。で、今週の東京市場、多分、大幅な上げになるでしょうね。私の予想、ずばり的中と言うことになりそうです。と言うわけで、今日の夜ご飯は、お赤飯となりました。ま、市場は開けてみなくちゃ判りませんけどね。


ま、株のほうは、順調。実際は、来週にならなければわかりませんけどね。という訳で、意識する機械、もう少し考えてみましょう。

まず、チップですけど、アルテラ社のサイクロンというチップで考えてみましょう。これ、以前雑誌の付録になったボードに付いていたもので、3,000ロジックエレメントのものが5百円程度で手に入りそうです。これ一つに16個のニューロンを組み込む場合、一つあたり200弱のエレメントが使えますから、ニューロン一つ、30円といったとこかな。

ニューロンシミュレータは受信側で考えます。つまり、あるニューロンのあるシナプスに、ある大きさの刺激を加えるという信号が、そのニューロンを格納したチップに入力されるわけですね。

チップ内部の一つの論理モジュールが、一つのニューロンを担当することと、一応しておきます。ニューロン識別信号で、該当する論理モジュールが選択され、シナプスを指定信号をRAMのアドレスに与えることで、係数を求めます。信号強度と係数の積は、それぞれ指数信号ですので、加算で実行されます。これをニューロンに印加された信号の合計値を16ビット符号付整数で持つレジスタに加算します。積は指数部のみですから、デコーダで加算する桁を決めればよい。

適当な時間ごとに、このニューロンの興奮状態を調べます。合計値をシグモイド関数というS字型の関数で変換し、出力信号を決めます。この信号の行き先(ニューロン番号とシナプス番号)はRAMに格納されており、これと信号の強さを送信するわけです。

さて、問題は、ニューロン番号のビット数が大きいことです。10億個のニューロンを識別するには、30ビットのアドレスが必要になります。シナプス8千個のうち、受信と送信は同じ数だけあるはずですから、30ビットのアドレスを4千個、15kBのメモリーが必要になります。また、4千個のシナプスを識別するために12ビット、計6kBのメモリーが必要です。

アドレスを節約するのが多次元接続方式で、こうすることで、配線も簡素化できます。

アドレス32ビットであらわされる40億個のニューロンを8次元接続することを考えます。接続は、いずれか1つの次元の位置だけが異なるニューロンだけと行われます。つまり、ニューロンを指定するアドレスとしては、8つの次元の一つを選択する3ビットと、そこに接続された16のニューロンのいずれかを選択する4ビットの合計7ビットで済むことになります。それぞれのニューロンの持つ4000個の受信シナプスも、8つの次元に500個づつ割り当てます。そうするとシナプスの指定は9ビット、ニューロン指定と合わせて16ビットで済みます。結局、ニューロン一つあたりのメモリーサイズは、送信用の16ビット×4千と、受信用の8ビット×4千、合計12Bということになり、16個のニューロンで192kB、
(受信用のRAMは、係数4ビットと受信信号4ビットを準備しておきます)500円のチップにも充分入りそうです(入らなければ、外付けのRAMを使いましょう)。

多次元接続すると、相互に接続できないニューロンが多数存在することになりますが、その間に別のニューロンをかませることによって、結果的に、接続できるわけですね。

ふ~む、500円のチップ一つで16個のニューロンを置き換えるとして、10億のニューロンからなる装置を作るには、300億ほど掛かりますね。一つのモジュールが16のニューロンの働きをを時分割で実行すると20億程度、256のニューロンなら1億少々、かなり現実的な話ではありますね。このチップ、5~10nsのクロックで動きますので、8000の乗算をして40~80μs、人間のニューロンの100倍以上の速度が得られるはずで、速度の点でも問題なさそうです。

もちろん、このほかに学習の機能を付け加える必要がありますが、これについては、これからおいおい考えていくことにしましょう。