Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

dbscanを用いたクラスタリングについて【統計解析】

最近、dbscanというクラスタリング手法が使われてるのを発表で見かけた

気になったので調べてみたメモ

参考記事

qiita.com

dbscanについてメモ

dbscanのパラメーターは

  • eps
    • epsが小さすぎるとき、多くのデータ点がノイズになり、クラスタの数が増える
    • epsが大きすぎるとき、全てのデータ点が一つのクラスタに分類される可能性がある
  • min_samples
    • 値が小さすぎるときは、過剰なクラスタが形成される可能性がある
    • 値が大きすぎるときは、クラスタ数が少なくなりすぎ、あるいは全てのデータ点がノイズになる可能性がある
    • min_samplesの値は、クラスタの「密度」を制御する。具体的には、min_samplesの値が高いほど「高密度」のクラスタが形成され、その結果、低密度のデータポイントはノイズとして扱われやすくなる。

これらのハイパーパラメーターをチューニングするときは、かなりの試行錯誤が必要です。様々なパラメーターの組み合わせを試すといったグリッドサーチなどの手法が一般的です。

ただし、DBSCANは不均一な密度のデータにはうまく対応できないので、それを考慮に入れる必要があります。言い換えれば、すべてのクラスタが同じ程度の密度を持っていない場合、εとmin_samplesの一つの値が全体で最適とは限らないということです。

余談

上の記事は「「ChatGPTとPythonで学ぶ」シリーズ Advent Calendar 2023」というカテゴリに入ってた
他の記事は以下から見れる模様

qiita.com

自分の研究テーマに使える手法があるかも・・・?

一度目は通してみるか・・・

ランキング参加中です

↓クリックしていただけると嬉しいです〜