2021年9月15日水曜日

疎行列の可視化

準備として、dynamic_bitsetをありがたく使用しました。c++ std::bitsetは、コンパイル時固定長でなければならず、面倒です。boostにもdynamic_bitsetはありますが、巨大なライブラリ郡をインストールするのも面倒なので、こちらを使うことにしました。

これで、疎行列部分のbitを対応させてbitmapにマッピングすると以下のような疎行列のbitmap(21MB)が生成されます。(instance19)

bitmapの生成には、こちらを使いました

一見、スパースのように見えないのですが、拡大すると、ちゃんとスパースに

なっています。

また、instance1は、下記です。画像のスケールが違うので、大きさの比較はできません。
しかし、instance1(7KB)の方が遥かに蜜(dense)行列であることは、イメージできます。
インスタンスが大きくなると、蜜度合いが薄くなる(疎度合いが大きくなる)ような傾向が感じられます。このように可視化すると改善の糸口が見えてきます。







0 件のコメント:

コメントを投稿