690 likes | 1.11k Views
大規模ネットワーク解析・可視化プログラム. Pajek. 北陸先端科学技術大学院大学 知識科学研究科林研究室 佐藤 恵介 S0650028 @ Jaist.ac.jp. Pajek の概要の説明 Pajek とは、どのようなプログラムであるかの概要を 説明する。. Pajek 利用の手順の説明 Pajek を利用するに当たっての手順を、それを追って 説明する。. 説明の手順. Pajek. 主に、 Windows 用のフリーソフトウエア http://vlado.fmf.unilj.si/pub/networks/pajek/
E N D
大規模ネットワーク解析・可視化プログラム Pajek 北陸先端科学技術大学院大学 知識科学研究科林研究室 佐藤 恵介 S0650028@Jaist.ac.jp
Pajekの概要の説明 Pajekとは、どのようなプログラムであるかの概要を 説明する。 Pajek利用の手順の説明 Pajekを利用するに当たっての手順を、それを追って 説明する。 説明の手順
Pajek • 主に、Windows用のフリーソフトウエア • http://vlado.fmf.unilj.si/pub/networks/pajek/ でダウンロードし使用することが出来る。
Pajek対象のネットワーク • 普通ネットワーク(有向、無向、有向無向混合) • マルチリレーションネットワーク • 2部グラフネットワーク • 動的ネットワーク
2部グラフ • 2部グラフのことを、Pajekでは「2-mode」と呼ぶ。
*.tim ネットワークA ネットワークB ネットワークC 動的ネットワーク • 動的ネットワークとは、時間によるトポロジーの変化を表したものである。 • *.timファイルによって表現される。
Step1 *.Netのデータをそろえる Step2 *.Net形式にする Step3 Pajekに*.Netを読み込む Step4 Pajekに処理をさせる Step5 Userの目的に一致するまで、処理をさせ、目的達成で完了 Pajek使用の手順
Step1 *.Netのデータをそろえる 本日は一連の流れを追う Step2 *.Net形式にする Step3 Pajekに*.Netを読み込む 処理についての詳細はマニュアル参照のこと Step4 Pajekに処理をさせる Step5 Userの目的に一致するまで、処理をさせ、目的達成で完了 本日の手順説明の対象
Step1 *.Netのデータをそろえる Step2 *.Net形式にする Step3 Pajekに*.Netを読み込む Step4 Pajekに処理をさせる Step5 Userの目的に一致するまで、処理をさせ、目的達成で完了 Step1
計算モデル (アルゴリズム) 数理モデル (数式) 仮想ネットワークデータ 実測調査 *.netファイル Pajek 各種処理 各種ファイル 統計処理 (R・SPSS) ネットワーク可視化 *.Netファイル
*.Netファイルのデータ • *.Netファイルのデータは、ネットワークトポロジー(グラフ)を表す基本的なデータのみでよい。 (eg.頂点、出と入のリンクなど) つまり、*.netファイルを作成することを意識しなくてもよく、基本的なデータの*.netに従った並べ替えで*.netは作成できる。 注:UCINETを介せば、隣接行列をインポートできる。
Step1 *.Netのデータをそろえる Step2 *.Net形式にする Step3 Pajekに*.Netを読み込む Step4 Pajekに処理をさせる Step5 Userの目的に一致するまで、処理をさせ、目的達成で完了 Step2
*Verteces 頂点数 頂点の宣言部分 ラインの宣言部分 *Arcs 有向線の宣言部分 *Edges 無向線の宣言部分 *.netファイルの構成(1)
EdgesとArcs • ラインには、Edges(無向線)とArcs(有向線)の2種類が存在する。
*.netファイルの構成(2)頂点宣言部分の構成 • はじめに、『*Vertices 頂点数』で、頂点の宣言をする。 注:宣言文は必ず空白で、TABではだめ。 • 基本的に『頂点番号 “ラベル” 3次元座標』の5列N行(Nは頂点数)の行列である。 (3次元でなく、2次元座標でもよい) • 基本情報の他に、頂点に形・色などの頂点の詳細情報を付与することも出来る。
*.netファイルの構成(4)ラインの宣言部分 • 基本的に 『出頂点番号 入頂点番号 ラインの値(重み)』の3列行列である。 • Arcs(有向線)とEdges(無向線)をそれぞれ別の宣言の箇所で行う。 宣言方法:*Arcsまたは*Edges • ラインの形・色などの詳細な設定を、ライン毎に付けることが出来る。
ネットワークの 基本的データ *.net形式にデータを並び替え *.net *.netファイルの作成 • ネットワークの基本的データを、*.netファイルの形式に従い並び替えればよい。
Step1 *.Netのデータをそろえる Step2 *.Net形式にする Step3 Pajekに*.Netを読み込む Step4 Pajekに処理をさせる Step5 Userの目的に一致するまで、処理をさせ、目的達成で完了 Step3
Pajekの4つのWindow(1) • Pajekには、主に4つのWindowによって成り立っている。 1、メインスクリーン:ファイルの読み書き・ コマンド入力 2、可視化:ネットワークを可視化する 3、Report:処理情報を表示 4、Edit:ファイル情報を表示
Pajekのメインスクリーン メインスクリーン・Networksボックスから*.netを読み込む。
Step1 *.Netのデータをそろえる Step2 *.Net形式にする Step3 Pajekに*.Netを読み込む Step4 Pajekに処理をさせる Step5 Userの目的に一致するまで、処理をさせ、目的達成で完了 Step4
Step4-1 メインスクリーンと各種ファイル Step4-2 各種ファイルの意味 Step4を細分化して説明する。 Step4-3 Pajekの処理の種類 Step4-4 Pajekの処理の例 Step4の細分化
Step4-1 メインスクリーンと各種ファイル Step4-2 各種ファイルの意味 Step4を細分化して説明する。 Step4-3 Pajekの処理の種類 Step4-4 Pajekの処理の例 Step4-1
メインスクリーンの構造 • メインスクリーンには、6つのボックスが存在する。 Networks、Partitions、Vectors、Permutations、Clsters、Hierarchy それぞれに、対応するファイルが読み書きされる。 • メインスクリーン上に、Pajekの処理を行うためのメニューが存在する。
メニュー 6つの ボックス ボックスとメニュー
*.net *.clu *.vec *.per *.cls *.hie 各ボックスと読み込まれるファイル
Step4-1 メインスクリーンと各種ファイル Step4-2 各種ファイルの意味 Step4を細分化して説明する。 Step4-3 Pajekの処理の種類 Step4-4 Pajekの処理の例 Step4-2
*.net ネットワークデータのファイル 可視化 ネットワークが可視化される。 *.netの意味
*.clu *.net *.netの各頂点にクラス番号を与える。 可視化 クラス番号毎に色分けして可視化される。 *.cluの意味
*Vertices 327 1 3 3 1 3 1 1 2 3 3 1 3 1 1 2 3 3 上から頂点番号1のクラス番号1、頂点番号2のクラス番号3・・・という構成である。頂点番号はデータから省略されている。 図:clsファイルの構成 *.cluファイルの構造
*.vec *.net *.netの各頂点にVectorの量を与える。 可視化 頂点がVectorの量に従い拡大される *.vec
頂点 Vector量大 Vector量と頂点の大きさ
*Vertices 327 0.00000000000000000 0.02436998584237848 0.03633789523360075 0.00000000000000000 0.01225106182161397 0.00000000000000000 0.00000000000000000 0.04215195847097688 0.06586125530910807 0.07703633789523361 0.00000000000000000 0.01225106182161397 0.00000000000000000 0.00000000000000000 上から頂点1のVector量、頂点2のVector量・・・という構成になっている。頂点番号はデータから省略されている。 図:*.vecファイルの構成 *.vecファイルの構造
*.per *.netの各頂点の並び替えを行う。 *.net 図:*.perファイルの役割 *.perの意味
“Tanaka” 3 4 “kikuchi” 4 6 再配置 1→2 2→3 3→1 “yamada” 4 5 1 “Tanaka” 3 4 2 3 “kikuchi” 4 6 1 “yamada” 4 5 2 3 座標を反映すると ラインはまったくいじらないが、頂点のすべての情報を入れ替える(座標情報も) “kikuchi” 4 6 “Tanaka” 3 4 2 1 つまり、処理としては頂点の再配置であるが、やっていることはラインの張替えである(Rewire) “yamada” 4 5 3 Permutation
*Vertices 327 102 35 308 285 225 15 12 59 188 306 66 85 240 327 上から頂点番号1の再配置頂点、頂点2の再配置頂点である。つまり、1→102、2→35・・・となる。張替え元の頂点番号はデータから省略されている。 図:*.perのファイル構造 *.perのファイル構造
*.cls *.net *.netの各頂点の部分集合 図:*.clsの役割 *.clsの意味
ネットワーク 抽出 ネットワークの部分集合 *.cls *.clsの生成
*Vertices 327 1 2 3 4 5 6 7 8 9 10 このファイルの場合、頂点数(327)は、1~10までの頂点がクラスターを形成しているといえる。もちろん、連続の頂点番号でなくても、クラスターを形成することが出来る。 図:*clsのファイル構造 *.clsファイルの構造