「シャノンの第一定理に関する経験談」
「シャノンの第一定理に関する経験談」
1) テーマ
多くの技術者に必要であり、今後役に立つ事柄、あるいは、IT関連の基礎知識として
「シャノンの第一定理が、具体的に経験上で役に立つ」
と言う話をしたいと思います
1-1)基本システムの考察(注1)に関するモデル作成として役に立つ
1-2)データとノイズに関する基礎事項として役に立つ
(ルーチンワーク的な開発業務の中では必要性を理解しにくいと思いますが、
オリジナリティの高い新製品の研究開発の立場で考えると、
研究の視点(注2)として大変有効だと思います
注1:例 システム開発に関するオブジェクト(アルゴリズム 等)の整合性・体系化
注2:例 機械振動・電気ノイズ・プログラムバグの原因解析 )
2) 基礎知識
理論と歴史の流れを説明します
* サイバネティクス(フィードバック)から情報の単位としてビットが基準になるまで
* 「シャノンの通信モデル」
(情報源) -> 送信機(符号化) -> 通信路(外乱・ノイズ含む) ->
受信機(複合化) -> (目的位置)
* 情報容量:H=log n(ハートレイ 1928年)
n:1つの系で区別される状態の数(単純化で2にする)
対数の底は、情報を測定する単位の選択とする(J.W.テューキー)
すなわち、ビットは2者択一の概念に基づくもので、2つから1つの選択では1ビット、
4つから1つでは2ビット
* シャノンによる情報量の(確率概念による)定義
事前確率がわかっているとき、1つの通報を記憶するのに必要で最小な情報容量が、
その情報のもつ情報量である(シャノン 1948年)
通報:情報源が発するもの
情報:通報に含まれる
(情報量:情報源が発する通報の集合量の確率統計的あつかいによる数学的な公式による量)
ポイント:信号の持つ意味の取り扱いをしない
3) 基礎知識の理解
「基礎知識を深めると重要な定理や法則が理解できる」展開を説明します
* 「シャノンの第一定理」
情報とテントロピーの関係(情報が増えるとエントロピーは減少する)
エントロピー:無記憶情報源のシンボル当たりの平均情報量(情報量*確率の総和)
無記憶情報源<->マルコフ情報源
(その情報以前の有限個(m)の情報に影響される情報源:m重マルコフ情報源)
情報と確率過程の関係->エルゴード的->確立の再定義->統計処理->・・
4) 理解から応用(創造)
経験と実例を説明します
4-1)論理は用意されていない ?である:データとノイズの関係の話
4-2)考えなければならない:どこから? 何を考えるか?
経路とノイズとデータの特定
(例 ロボットの動作、デジタル解析のデータ:デジタルアナライザー、
プログラム言語のコンパイラー、システムの取り扱い方法)
ロボットの動作データ(注1 機械・電気・ソフト)と動作測定によるデータの検討に関する
通信モデルの利用(通信モデルに対する第一定理の保証)
注1:機械(特性) 伸び・たわみ・疲労・・・
電気(信号) 電気的な性質・応答特性・・・
ソフト 制御のアルゴリズム・データ構造・チューニング処理・・・
4-3)論理モデルをつくる:現象との違いを考察する
解析事例(振動解析 プログラムのバグ解析 人間と言う要因の検討)
振動と言う現象(全体)と測定(ポイント)によるデータの論理的考察
時間的変化に対する、条件の設定と統計やシュミレーション等の解析方法の考察
4-4)論理モデルの限界と現象を考察する
調整事例(自動**データ作成、モータ制御:学習機能のプログラム検証)
**文字のデータと**装置の構造による制御データとソフトウェアの変換処理に関して、
*の回転や*の速度変化による文字データを制御構造データに
置き換えることを可能にする手順とモデルによる実例の紹介)
(X/Y/Z/回転/速度/加速度とパラメータを増やすと
トータルノイズが大きくなってしまう->第一定理)
4-5)その現象に対するオリジナルな論理を作成する
新規開発事例(材質、特性、一般理論の組み合わせと現象:総合力)
理論やデータでは突破できない(注:基礎知識の理解は必要である)
感触やイメージが必要である
注:プログラムはタイプして、モノには触れて感じて見るなど
**装置の場合、筆記用具の性質と機械構造の関係にたいする考察
自動車用ロボットの場合、部品の目的に対する様々な性質の考察
プログラム言語の場合、言語と異なる種類の言語の考察や、メタ設計による設計のコンセプトを検証する
ポンプの場合、ポンプの原理に関する基本的な論理考察
(ポンプは完成度が高い部品であると考えてしまいがちなので)
他 リアルタイム処理に対する工夫、画像処理の学習機能の応用、、、、
5) 設計思想への発展
オリジナルな理論を忠実に設計し、一つの製品(システム)にまとめあげることは、
その理論(人)による思想(identity)にまで広がっていきます
そして思想からモデル(システム)の修正や変更が行われ、繰り返す中で発展していくように思います
(極端な例として、「for文は嫌いだから使用しない」
これも思想と捕らえることが出来ます:形から入る方法もあるという例です)
このような観点でモノを見ると、良い製品、良い設計にふれることの大切さが理解できると思います
私は、これが設計する力だと思います
6) まとめ
* 応用できれば知識は技術力として役に立つ
* プログラム言語や環境の知識も応用できるところまで高めなければいけない
* そのためには、クリアすべき基礎知識がある
結局、好きな部分は基礎知識がわかるまで学習する必要がある
(あるいは、実際に製品に組み込みと、理解不足の部分が問題になり苦労して身につけることになる)
最終的には、
設計思想を形成し
深めていくことが本質だと思います
(そのために観察することと工夫することの重要性をまとめにします
数式や統計処理は有効ですが、
各処理のそれぞれの段階も技術的説明を行う必要があることの重要性を
考えてもらいたいと考えています)
0 件のコメント:
コメントを投稿