大学教授のショップ [ホリエモンのメルマガで副業として1番 に紹介されました!] 大学教授のショップ [ホリエモンのメルマガで副業として1番 に紹介されました!]

R用 コピペだけで11の見える化・可視化手法を一気に実行して結果を比較する! プログラム・コード

データを準備するだけで、R言語で11の見える化・可視化手法を一気に実行して結果を比較できるプログラム・コードです。11の可視化手法はこちらです。
■主成分分析 (Principal Component Analysis, PCA):線形の可視化手法であり、データセットのばらつきが大きい方向に新たな軸を作ることで、少ない軸でより多くの情報を表現できる。
■カーネル主成分分析 (Kernel Principal Component analysis, KPCA):PCAとカーネル関数を組み合わせた非線形の可視化手法。本プログラムではガウシアンカーネルを使用。カーネルの行列(グラム行列)の分散が最大になるようにRBFカーネルのパラメータの値を選択。
■因子分析 (Factor Analysis, FA):各変数の線形結合で表されるデータセットの共通因子を抽出する手法。
■自己組織化写像 (Self-Organizing Map, SOM):ニューラルネットワークの一種。元のデータ空間において近いデータが、二次元マップ上においても近いように学習が行われる。マップの種類・トーラスパッピングかどうか・マップサイズ・学習回数・学習率を変更可能。
■Generative Topographic Mapping (GTM):SOMの問題点を解決する形で開発された方法。GTMによって得られた二次元マップ上において近いデータは、元のデータ空間においても近いことが保証されている。マップサイズ・RBFの数・ガウス関数の分散の値・λの値を自動的に最適化する機能付き。
■多次元尺度構成法 (Multi Dimensional Scaling, MDS):すべてのサンプル間で計算された距離の行列に基づいて、その距離関係がなるべく成り立つように二次元にサンプルを写像する手法。距離としてユークリッド距離を使用。
■Isometric Mapping (Isomap):MDSではすべてのサンプル間で距離を計算したが、Isomapでは近傍のN個のみのサンプル間のみの距離の計算とすることで、局所的な構造を可視化。N=5としてあるが変更も可能。
■Locally Linear Embedding (LLE):あるサンプルが、その近傍のN個のサンプルの線形結合で表現できるとか仮定し、その線形結合の重みが写像先でも一致するように二次元マップを作る。N=5としてあるが変更も可能。
■Radial Basis Function-based Spectral Embedding (RBFSE):サンプル間の隣接行列をスペクトル分解することで可視化する手法。隣接行列の作成にRadial Basis Function (RBF)を使用。カーネルの行列(グラム行列)の分散が最大になるようにRBFカーネルのパラメータの値を選択。
■Diffusion Map (DF):マップ上のランダムウォークに基づくdiffusion距離が近くなるように二次元平面に写像する手法。
■t-distributed Stochastic Neighbor Embedding (tSNE):非線形の可視化手法。見える化・可視化したいデータセットがあり、それを二次元マップ上で確認することが目的。Perplexityを10にしてあるが変更も可能。

以下のURLからzipファイルをダウンロードしてください。
http://univprofblog.html.xdomain.jp/code/visall_analysis_all_e_r_pass.zip
購入していただくと、zipファイルを解凍するためのパスワードが表示されます。

複数の可視化手法によるデータセットの見える化については下のURLのページをご覧ください。
http://univprof.com/archives/17-02-21-12639621.html

このプログラムはcsvファイルによってデータのやり取りをします。csvファイルのデータ形式およびサンプルデータについては下のURLのページをご覧ください。
https://note.mu/univprof/n/n694487325cb1

プログラムを実行するときのPython環境については下のURLのページをご覧ください。
https://note.mu/univprof/n/nb07629b23252

また下のURLのzipファイルもダウンロードして下さい。
http://univprofblog.html.xdomain.jp/code/R_scripts_functions.zip
解凍すると必要なスクリプトと関数があります(こちらは無料です)。解凍した後に、今回のプログラムのディレクトリ(フォルダ)と同じところにすべてのファイルを置いてください。

あとは購入されたプログラムを実行するだけです。

計算終了後、自動的に結果が画面に出てきて、最後に以下のcsvファイルが同じディレクトリ(フォルダ)に保存されます。
■ScoreAll.csv ・・・ それぞれの可視化手法における各サンプルの二次元座標

図の結果を見ても、サンプルがよく ばらけて いて見やすい結果もあれば、サンプルが固まっていて見にくい結果もあることがわかります。良い結果を出す手法も、悪い結果を出す手法も、データセットごとに異なるわけです。そこで、今回のプログラムのように、多くの見える化・可視化手法を実行して、結果を比較する必要があります。