デバイス間の推移確率が求められたので、次はこの推移確率から同値類とその同値類中の中心ノードを算出していきます。利用するファイルは以下のファイルです。transition_count_non0_rate.csv
このファイルを取り込んでいきます。
この推移確率行列から、デバイスを状態として、状態を同値類に分類していきます。同じ同値類であることは、相互到達可能であることを意味します。デバイス間で相互到達可能の集合がいくつあるかを調べていきます。次の関数を利用します。getEquivalence4(th, roop, p)関数
この関数は3つの引数(th, roop, p)を持ちますが、thは推移しているとみなすことができる閾値です。つまり、この値より推移確率が大きいとき、推移があると考えます。roopは何回で到達可能かを示す値です。pは推移確率行列です。戻り値はmodify_equivalence, class_number, reachableがあります。modify_equivalenceは同値類ごとにデバイスが分類されています。class_numberは同値類の数、reachableは状態間で推移が可能かどうかを{0,1}で表した接続行列です。
もう一つ関数を作っていきます。
getDegreeMax(equivalence, reachable)関数
これは、同値類の中で中心性のノードがどれかを計算しています。次数中心性で求めています。
今回の計算結果では、
同値類数が6964個、
最大クラス数 : 18090、
最大クラスを持つindex : 0
最大クラスの最大次数を持つノード番号 : 6947、
デバイス名 : Comp186884
となりました。ここまでの結果で同値類数、同値類の中の中心性デバイスの情報がわかるようになりました。
0 件のコメント:
コメントを投稿