散布図行列で多次元を俯瞰する

6.4.2

散布図行列で多次元を俯瞰する

最終更新 2020-02-12 読了時間 1 分
まとめ
  • 散布図行列で多次元データの全ペアの関係と分布を一覧する。
  • sns.pairplot でクラス別に色分けし、分離度や外れ値を同時に確認する。
  • 分類モデル構築前の探索的データ分析で特徴量の有用性を見極めるのに使う。

seaborn.pairplot を使うと、特徴量の組み合わせごとの散布図と対角の分布をまとめて描画できます。クラス別に色分けすると、分類の分離度も同時に把握できます。

import seaborn as sns
import matplotlib.pyplot as plt

iris = sns.load_dataset("iris")

g = sns.pairplot(
    iris,
    vars=["sepal_length", "sepal_width", "petal_length", "petal_width"],
    hue="species",
    plot_kws={"alpha": 0.8, "s": 50},
    diag_kind="hist",
    corner=True,
)
g.fig.suptitle("Iris データの散布図行列", y=1.02)

plt.show()

クラス別に色分けすると、分類の分離度も同時に把握できますの図

使いどころ #

  • 分類タスクでクラスタが綺麗に分かれているかを事前に確認する。
  • モデル化前に外れ値や非線形な関係がないかチェックする。
  • corner=True にすると上三角のダブりを省けるため、大きな特徴量数でも見やすい。