カテゴリー別アーカイブ: Slashdot_Journal

MSP430 Launchpad の Rev. 1.4 と 1.5 の違い

espyの日記:Launchpad の密かなアップデート
このスラド日記に書いた内容だが、改めて。 追加情報もあり。

MSP430 Launchpad は、途中で 同梱チップが変っている。
同梱チップの新/旧と、その仕様概要は以下の通り。

msp430-Lpad-old-new

そして、基板の版数も Rev. 1.4 → Rev. 1.5 と変っている。

Rev.1.5に変ったのは2012年。 この基板の更新と、同梱チップの変更とは、同時に行われているそうだ。(TIの営業さんに尋ねて確認した)
またRev 1.5以降は、パッケージの箱の表面に貼られたシールに書かれており判別ができる。

特に気になるのは、エミュレータ部にある UART機能と、マイコンチップの TXD/RXD信号との対応。
LaunchPadは、USBケーブルで Windows PCと接続すると、デバイスマネジャのポートに「Application UART(COMx)」といったポートが現れる。これはその名の通りCOMポートであり、TeraTermなどを使えばターゲットマイコンとシリアル通信が可能だ。
だが、マイコン側では UART機能は、上の表の 4種類のチップのうち、MSP430G2553 にしか内蔵されていない。 ただ、Launchpadのソケット自体は 20pinなので、 Rev. 1.4以前の基板にも G2553を刺して使用できる。
ところが残念な事に、エミュレータのUART機能の TXDと、G2553を刺した場合の RXDとが対応しておらず、両者のTXDどうしがぶつかっているのだった。

Rev.1.5基板ではこの点が改良されている。そのまま使うと、TXD同志,RXD同志がぶつかってしまうのは同様なのだけれど、 エミュレータ部とターゲット部をブリッジしているジャンパピンのところで、普通は縦向きに差し込むジャンパを、TXD/RXDの所だけ横向きに刺すことで、TXD/RXD信号をクロスさせることができるようになっている。

Rev.1.4では、マイコン側でソフトウェアUART (BitBang方式とも呼ばれている)を使って、エミュレータ部とシリアル通信するサンプルプログラムなどもあるので、Rev.1.5では Rev.1.4と互換を保ちつつ、クロス接続もできるという仕掛けにしたようである。 この点はよく考えられている。

HTM, ヘブの法則から考えるパーソナルAI

ここしばらく書いている内容は最近知ったり考えたのではなく、以前から考えているがブログに書くなどはしてこなかったものである。それでも一部はスラド日記に書き留めていた。
2008年7月21日のスラド日記に書いたエントリからそのまま転載する。


ai:: Numenta, HTM, ヘブの法則 - これまでのあらすじ


神経細胞AとBの間にシナプスがあって、AとBがほぼ同時、あるいはA→Bの順で
約20ms以下の時間差で活動したとき、シナプスの結合は強化される。
(参考:進化しすぎた脳)
この、ヘブの法則が、脳が入力信号の繰り返しから、パタンを抽出して学習する原理の
根っこにあるアルゴリズムらしい。

目をCCDカメラのようなものだとして、2次元配列の濃淡情報がそのまま視覚野に入って
2次元配列状の神経ネットワークが待ち受けているとする。
ぼんやりした曇りの空ではなく、立っている樹木などを見たとき、二次元配列を
縦線が横切る。すると「A、Bほぼ同時の刺激」となる領域があるだろう。

脳細胞を調べると、縦線に反応する細胞、横線に反応する細胞など、簡単な図形要素に
反応する細胞が見つかったという結果がある。ヘブ則によって学習された、まず
第一段目の部分なのだろう。

単純な形の認知は、V1野、V2野…と階層を上るにつれて、より高度な認識となる。
(参考:考える脳…)
クリントン大統領の顔を見たときに反応する脳細胞があるらしい。一例だろう。
視覚だけでなく、聴覚や触覚すべて、簡単なパタンから複雑なパタンを認知する階層構造は
同じなのだろう。

階層的な構造を使って、記憶を元にした予測を行うのが知能の本質であると
仮説を立てたジェフホーキンスが、人工知能を作る方法として NumentaのサイトでHTM (Hierarchical Temporal Memory)を提唱している。
公開されているドキュメントを読んでいると、HTMはどうやらヘブ則を使って
学習する仕組みのようだ。
(HTMは時系列で変化しないような入力情報のアプリでも使えるが、時間変化する
入力の方がいいと述べている部分があった。)

ここからは私の考察。
脳のしくみを洞察してシステムを作ってみるアプローチは、AIを作る手順として
正攻法なんだと思う。 時々、IRCですごく人間っぽい応答をするボットを
見かけるし、チューリングテストとか中国語の部屋とかいろいろあるが、
脳の働きは「文字列をもらって文字列を返す」ような環境の中のものでは無いのだ。
身体性という言葉が出てきて以降、「身体がないと」と言う人も多いが、これも
ちょっと違うと思う。 例えばシステムに入力として光センサと時計だけがある。
朝になると明るくなり、夜になると暗くなる。これを24時間365日“観察”し続けて、
周期があるとか、周期が伸び縮みするとかのパタンを発見できれば、それは
知能的であると言えると思う。手足のロボットがあれば良いが必須でも無い。
(逆に、IRCボットももっと知能的になれると思う。Sさんはweekdayの夜にただいまと
発言する事が多い、などのパタンを学習・予測する等)

さて、Numentaの仮説から従来の手法を振り返ると、ルールベースとか、
形態素解析とか、三段論法とか、その他色々ある従来の方式は、明日から
役立つシステムとして稼働できるけれど、ヒトのように学んでいったりは
しないものであろう。 かといって、HTMのようなアプローチでは、まるで
生まれたての赤ん坊のようで、日本語で相手をしてくれるようになるまで
果たして何年かかるのか分からない。
そこで、両者のハイブリッドなものが作れないだろうかと思っている。従来型の
形態素解析もやりつつ、HTM的な学習や予測もするような。

今考えているのはこんなところ。