データセットを可視化・見える化する手法の選び方

講演会やセミナーなどでよくいただく質問の一つに、データの可視化手法・見える化する手法はどのように選べばよいですか、というのがあります。難しい質問です。というのも、回帰分析やクラス分類であればこちらの基本的な解析の流れにそって適切な手法を選ぶことができます。

データ解析の基本的な流れを整理します
いろいろなデータセットを解析する上で、データ解析の基本的な流れを整理しておきます。ここでは、回帰分析やクラス分類をするときにように、教師ありのデータセット、つまり目的変数 Y があるようなデータセットを解析することを想定しています。流れにお...

 

ただ、可視化手法はいわゆる教師なし学習であり、回帰分析やクラス分類における 「正解」 である目的変数 y がないため、可視化手法を選ぶための道標がありません。主成分分析 (Principal Component Analysis, PCA) であれば、主成分ごとの寄与率を計算でき、寄与率が高いほど元のデータセットを再現できているといえますが、他の可視化手法、特に非線形手法では寄与率を求めることが難しいため、寄与率が大きい手法を選ぶ、といったこともできません。

上の質問をいただいたときに、わたしがお答えしているのは、k3n error が小さくなる手法を選びましょう、ということです。

データの見える化・可視化をした結果を評価する指標を開発しました、ハイパーパラメータの設定もこれでOK (Python・MATLABプログラムあり)
応化先生と生田さんが論文 “k-nearest neighbor normalized error for visualization and reconstruction – A new measure for data visualiz...

 

k3n error により、実際のデータセットにおけるサンプル間の近接関係と、可視化した後のサンプル間の近接関係との間の整合性を評価ができます。つまり、k3n error の小さい可視化方法を選ぶことで、検討している可視化手法の中で、最も実際のサンプル間の近接関係と、可視化した後のサンプル間の近接関係とが近い手法を選択できます。

DCEKit に k3n error を計算する Python コードがあります。

DCEKit (Data Chemical Engineering toolKit) を PyPI にリリース!
これまで化学データ・化学工学データのデータ解析に役立つツールや金子研で開発された手法に関する Python コードを Github にて公開してきました。このたびは、これらのツール・手法 (の一部) に加えて、新たな機能を追加して、DCEK...

 

もちろん目的変数 y があるときには、k3n error に限らず、可視化した後のサンプルの分布と y の値の関係を考えて、可視化手法を選択することができます。たとえば、二次元マップを見ることで、y の値が近いサンプルが、マップ上で近い位置にあるとかないとかを議論できます。

ただ y、すなわち可視化手法を選ぶための道標がないときには、k3n error を道標として使用していただけたらと思います。もちろん k3n error は非線形の手法をはじめとして、どんな可視化手法にも対応可能です。そのため、すべての可視化手法で k3n error の値を比較して、最も小さい可視化手法を選ぶ、といったことができます。ぜひ、こちらのPython コードで検討していただければと思います。

DCEKit (Data Chemical Engineering toolKit) を PyPI にリリース!
これまで化学データ・化学工学データのデータ解析に役立つツールや金子研で開発された手法に関する Python コードを Github にて公開してきました。このたびは、これらのツール・手法 (の一部) に加えて、新たな機能を追加して、DCEK...

 

以上です。

質問やコメントなどありましたら、twitter, facebook, メールなどでご連絡いただけるとうれしいです。

タイトルとURLをコピーしました