Transcript 情報通信を支える論理
情報通信を支える論理 早稲田大学 理工学術院 基幹理工学部 情報理工学科 後藤滋樹 1 本日の内容 1. 情報の検索と論理記号 2. Googleのページランクと行列 3. イーサネットと多項式 いずれも実際の授業に基づいた内容です 2 情報の検索 • 最近の広告の仕方 テクトロニクス 検索 • 検索サイト、検索エンジン http://www.yahoo.co.jp/ http://www.google.co.jp/ 3 能率の良い検索 • キーワードを複数使う 情報理工学科 早稲田大学 情報理工学科 早稲田大学 AND 情報理工学科 • AND の他に OR がある 早稲田大学 OR 情報理工学科 • AND, OR の他にもある (Googleの例) ① ② ③ ④ すべてのキーワードを含む AND フレーズを含む (注: 語順を含めて一致) いずれかのキーワードを含む OR キーワードを含めない NOT 4 ベン図, 命題 X Y X AND Y 5 AND, OR, NOT は基本的な論理記号 • 論理回路(ろんりかいろ)は、ブール代数(論理演算) を行う回路、およびデジタル信号を記憶する回路。 (出典: フリー百科事典『ウィキペディア(Wikipedia)』) AND A・B OR A+B NOT A • 論理回路の設計をする技術者は、数学の論理演算 記号とは違う記号を用いて論理式を記述することが 多い。(同上) 6 半加算器の論理回路 • 2進数の加算の演算 http://takaosuda.hp.infoseek.co.jp/homepage/electronics/circuit/calc02.html X(入力1) Y(入力2) S (和) C (桁上がり) 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 7 検索結果の表示 順番を決める方法 ページランク 8 Googleのページランク W • 基本的な仕組は数学的 W 0 グラフの行列による表現 隣接行列(推移行列、遷移行列) S 0 C 0 固有値と固有ベクトル G 1 S学部 W大学 C学科 G研究室 S C G 1 0 0 0 1 0 0 0 1 1 1 0 1 頂点iから頂点 jに辺がある aij 0 頂点iから頂点 jに辺がない 行列の上と左のW, S, C, Gは注釈 であり行列に含まれない WEBページのリンクの関係 9 隣接行列を転置する • 隣接行列 A (aij ) を転置する リンクを「出す」側から「受ける」側へ S学部 C学科 A t W大学 G研究室 WEBページのリンクの関係 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 10 隣接行列から推移確率行列へ • 列(column)の総和が1または0になるように調整 ページの評価値をリンク先に渡す 1 S学部 1 1/3 W大学 1/3 C学科 1/3 1 G研究室 M 0 1 0 0 0 0 0 0 1 0 0 1 1 3 1 3 1 3 0 WEBページのリンクの関係 11 推移確率行列の固有値と固有ベクトル • 固有値λと固有ベクトルr M r r • 行列 M を掛ける(乗算)ということは、グラフの 辺に沿って(確率的に)推移するということである • 固有ベクトルの各要素は M を掛けても定数倍 しか変化しない。(安定している) 固有ベクトルの各要素がランクになる (ただし要素の和が1となるように正規化する) 12 固有ベクトルの具体例 • GNU Octaveを使って計算する。固有値λ=1が最大の 固有値であり、固有ベクトルは下の左のようになる。 0.11111 0.22222 0.33333 0.33333 0.20851 0.41703 0.62554 0.62554 • これを正規化したページランクは上の右である。 2/9 1 1 S学部 1/3 1/9 W大学 1/3 C学科 1/3 1/3 1 G研究室 ページランクを記入した図 1/3 13 Googleにおける工夫 • サイズの大きな 疎(sparse)行列の 固有ベクトルの計算 1 N N 4 • ユーザがランダムに ページを渡り歩くと仮定 S学部 W大学 1 4 1 4 1 4 1 4 1 1 1 1 4 4 4 4 1 1 1 1 4 4 4 4 1 4 1 4 1 4 1 4 C学科 G研究室 14 Googleにおけるページランク • 次の行列の固有ベクトルを求めて、要素の和が1に なるように正規化する。 4 0.85 M 0.15 1 N 4 0.0375 0.8875 0.0375 0.0375 S学部 W大学 0.0375 0.0375 0.8875 0.0375 0.0375 0.320833 0.0375 0.320833 0.0375 0.320833 0.8875 0.0375 C学科 0.12649 0.23401 0.32540 0.31409 G研究室 15 より深く調べるために • 本資料の例題は簡単にするために4つのサイトに閉じて いた。 現実のPageRankは早稲田大学(8/10)、理工学部(6/10)、 CS学科(5/10)、後藤研(4/10)。 • 次の資料が参考になる http://www.kusastro.kyoto-u.ac.jp/~baba/wais/pagerank.html 本資料は上記を参考にした。ただしOctaveのスクリプトは若干改良した。 • Googleの創始者による論文も入手できる。 Lawrence Page, Sergey Brin, Rajeev Motwani, Terry Winograd, 'The PageRank Citation Ranking: Bringing Order to the Web', 1998, http://www-db.stanford.edu/~backrub/pageranksub.ps Taher H. Haveliwala, 'Efficient Computation of PageRank', Stanford Technical Report, 1999, http://dbpubs.stanford.edu:8090/pub/1999-31 16 ネットワークの測定 オシロスコープ 電気信号を観測 アナライザ パケットを収集 通信 17 イーサネットの電気信号を観測 • 実験 デジタル・ストレージ・オシロスコープ テクトロニクス 18 デジタル信号として解釈する 19 イーサネットのフレーム • フレーム frame をパケット packet ともいう 6 DIX IEEE802.3 6 2 46~1500(可変長) 宛先のMACア ドレス 送信元のMAC アドレス タイプ データ 宛先のMACア ドレス 送信元のMAC アドレス フレーム の長さ LLC 6 6 2 3 2 FCS SNAP データ 5 38~1492(可変長) FCS 2 • 2種類の標準 standard がある • 先頭(ヘッダ)と末尾(トレーラ)にデータ以外 の情報がある 20 Ver.2 イーサネットによる通信の基礎 • FCS (Frame Check Sequence) 4オクテット 誤り検出のために使用。生成多項式は以下の通り。 G( x) x 32 x 26 x 23 x 22 x16 x12 x11 x x x x x x x 1 10 • • 8 7 5 4 2 受信側で同様のアルゴリズムによりCRC値を計算し、 フレームチェックシーケンスの値と異なった 場合には、終端装置でフレーム誤りとして破棄。 「ワイドLANサービスのインタフェース 第1 版」 西日本電信電話株式会社 p.43 より引用 21 桁数が少ない例題 CRC (Cyclic Redundancy Check) • 送信ビット列を多項式と見なしたものP(X)、生成 多項式G(X)、生成多項式の最高次数をnとした 時、 P(X)・Xn / G(X) の余りをCRC符号とする。 【例】 送信ビット列 11001000 (P(X)=X7+X6+X3) 生成多項式G(X)=X6+X2 必ず5次以下になる P(X)・X6 / G(X) = X7+X6+X2 余り X4 このとき、CRC符号は 010000 となる。 6ビットで表現可能 引用) http://www.netlaputa.ne.jp/~hijk/study/nw/glossary.htm 「ネットワーク・スペシャリスト・用語集」を一部修正して引用した。 22 実際の桁数 イーサネットの CRC の計算法 • CRC-32で33bitの定数ビット列から32bitのCRCを得る • ビット列– 100000100110000010001110110110111 • 生成多項式 (Generation Polynomial ) で書けば下記の通り G( x) x 32 x 26 x 23 x 22 x16 x12 x11 x10 x8 x 7 x 5 x 4 x 2 x 1 • 計算の手順 – 生成多項式を G(x) とする – 送信するデータに32ビットの0をパディングして多項式表現し たもの M(x) – CRC値は割算 R(x) = M(x)÷G(x) の剰余である – 送信するフレームは F(x) = M(x) + R(x) • 誤りの検出 – 正しい受信データでは、F(x)がG(x)で割り切れる 23 まとめ • 情報検索を論理的に効率化できる • 論理回路は電子回路で実現されている • 検索結果の順番はページランクによる • 情報通信は数学的に構成されている 24