「ブレインコミュニケーション - 脳と社会の通信手段 – 」の4章の内容についてのサポート用のページです。
- Last Update : 2011.7.08 Written by Okito Yamashita, ATR
2011/07/06 プログラムのバグ情報とそれに伴う本への影響ついての情報をアップしました (下記に記述)。
|
4章の図作成に使用したMATLABコード + α
以下のReadme.txtに必要環境や使用方法が書いてありますの で、”始めに必ず読んでください”。
~ ~ ~
“MATLAB初心者の人”は、とりあえず実行してみて、結果とコードの中身を比べることによって、本文の注釈にある関数がどのように使われるのかを味わってみてください。
“MATLABの知識はあるがブレインマシンインタフェースのプログラムを組んだことがない人”は、4.2章の説明を再現するコードを
実行してみると良いでしょう(判別アルゴリズムのインストールに少し手間が必要です)。全体の流れを学ぶのに良いと思います。
- Matlabコード (38KB)
- シミュレーションデータ (17KB)
- 4.2章で使われるチュートリアル用脳波実験データ (123MB)
以下はダウンロードサイズを小さくするために実験データ(123MB)の中身を分割したものです。 - Matlabコード2011/07/08修正差分(この差分ファイルに含まれる “修正個所.txt” の文章を必ず読んでください)
4章の図作成に使用したMATLABコードについてのバグ情報と本への影響について (2011・07・06)
公開しているプログラムにバグがありましたのでお詫び申し上げます。
これに伴い4.2節の図も多少の修正が必要です。ただ、”本文で伝えたいメッセージに関しては変更点はないこと”を報告致します。
* バグ箇所
bc_4_2_b_fig4_7.m の line30と bc_4_2_b_feature_computation1.mのlin35 にバグがありました。
それぞれ以下のように修正が必要です。
channelPlotted = [18 50 55]; –> channelPlotted = [18 48 55];
ixChannel = [18 50 55]; –> ixChannel = [18 48 55];
この2つ行では、チャネル名 CP3, Cz, CP4 に対応するチャネル番号を指定してます。
しかし、Cz に対応するチャネル番号は48であるところを私のミスで50 と指定してしまいました。
ちなみにチャネル番号 50に対応するチャネル名は C4 となっています。
* 本への影響について
本4.2節の図4.7の一部と表4.1の一部に修正が必要です。
図4.7のCzの下にある2つの図はC4に対応するパワースペクトルとなっています。修正後のプログラムの出力結果である以下の図が正しい結果となります(次に刷る時に修正予定)。
図4.7 修正後
表4.1の特徴量1に関する結果もCP3,C4,CP4の3チャネルの結果となっています。修正後は3つの手法ともにテストの成績が1パーセント強の改善 が見られました(本当は乱数のばらつきと比較してどれくらい有意かを述べないといけませんが、ここではそのような解析はしてません)。下に修正後の結果を 載せます。
修正後の表4.1の特徴量2に対する結果と本文表4.1の対応する結果の数値が異なることに気づかれるかと思います。今回のバグは特徴量2
に関しては全く影響与えないはずなのに奇妙に思われるかもしれません。この違いは、交差検定でブロック分けを行う時に乱数を用いていることに起因します。 乱数によるばらつきをなるべく抑えるために、10回の繰り返し交差検定による平均正答率によって評価を行っていますが、それでも1%くらいは評価値がばら つきますので、その影響が現われています。
4章の正誤表 (2011・07・08)
場所 | 正 | 誤 | 備考 |
ページ89 図4.7 | 右手試行 | 左手試行 | |
ページ89 図4.7 | 左手試行 | 右手試行 | |
ページ89 図4.7 | C4 | Cz | 正しいCzの図はこのホームページ上の図です |
ページ90 表4.1 | このホームページ上の図 | 特徴量1に関する正答率 | |