CRAN Task View:Cluster Analysis & Finite Mixture Modelsについて、機械翻訳を交えて日本語化し掲載しております。
目次
概要
Maintainer: | Bettina Grün |
Contact: | Bettina.Gruen at R-project.org |
Version: | 2024-08-20 |
URL: | https://CRAN.R-project.org/view=Cluster |
Source: | https://github.com/cran-task-views/Cluster/ |
Contributions: | このタスクビューに対する提案や改良は、GitHubのissueやpull request、またはメンテナのアドレスに電子メールで送ってください。詳しくはContributing guideをご覧ください。 |
Installation: | このタスクビューのパッケージは、ctvパッケージを使用して自動的にインストールすることができます。例えばctv::install.views(“Cluster”, coreOnly = TRUE)は全てのコアパッケージをインストールし、ctv::update.views(“Cluster”)はまだインストールされていない最新状態のパッケージを全てインストールします。詳しくはCRAN Task View Initiativeを参照してください。 |
このCRANタスクビューには、データ内のグループを見つけ出し、観測されていない断面異質性をモデル化するために使用できるパッケージのリストが含まれています。多くのパッケージは、以下に挙げるトピックのうちの複数の機能を提供します。セクションの見出しは、主に最終的な分類ではなく、クイックな出発点です。パッケージstatsとcluster(base Rに付属しているため、すべてのRインストールの一部です)を除き、各パッケージは1回だけリストされます。
このCRANのタスクビューにリストされているパッケージのほとんどは、GPLの下で配布されています。どのパッケージが配布されているかを調べるには、各パッケージのDESCRIPTIONファイルを見てください。
このCRANタスクビューの最初のバージョンは、Friedrich Leischによって書かれました。
階層的クラスタリング
- パッケージstatsからの関数hclust()およびclusterからのagnes()は、凝集型階層クラスタリングの主要な関数であり、関数diana()は、階層型クラスタリングの分割に使用できます。hclust()の迅速な代替案は、fastclusterとflashClustによって提供されています。
- statsと関連する方法から機能dendrogram()は、クラスタ・デンドログラムのための改良された視覚化のために使用することができます。
- dendextendは、簡単に可視化するための機能(着色ラベルや枝等)、操作(回転、剪定など)およびデンドログラム(有意性のための順列テストとブートストラップのツリー相関測定および最適分岐ローテーションのためのヒューリスティックtangelgramsの比較を示します。
- dynamicTreeCutは、階層的クラスタリングデンドログラム中のクラスタを検出するためのメソッドが含まれています。
- genieclustは、リンケージ基準を備えた高速階層クラスタリングアルゴリズムを実装しています。これは、単一のリンケージ方法をGini不等式メジャーと組み合わせて、より大きなデータセットを使用できるように計算効率を維持しながらリンケージ方法をロバスト化するバリアントです。
- hclust1dは、C++で実装されたO(nlog(n))アルゴリズムに基づく、連結関数の包括的な選択に対する一変量凝集型階層クラスタリングを提供します。
- idendr0は、階層的クラスタリングの樹形図とクラスタ化されたデータを対話的に探索できます。データはビルトインヒートマップでビジュアル化(および対話)することができますが、GGobiの動的インタラクティブグラフィックス(rggobiによって提供されます)またはbase Rプロットでも表示できます。
- mdendroは、凝集型階層クラスタリングの代替実装を提供します。このパッケージは、類似性行列をネイティブに扱い、データに結びつきがある場合に生じる非一意性の問題を解決する変数群デンドログラムを計算し、最終的なデンドログラムのための5つの記述子、すなわち、次をを計算します。
- cophenetic correlation coefficient
- space distortion ratio
- agglomerative coefficient
- chaining coefficient
- tree balance
- protoclustは、系統樹の各内側ノードとプロトタイプの要素を関連付け階層的クラスタリングのフォームを実装しています。パッケージのplot()関数を使用して、1つのプロトタイプで標識されているので、解釈が容易である樹状図を生成することができる。
- pvclustは、階層的クラスタ分析の不確実性を評価するためのパッケージです。約公平なp値だけでなく、ブートストラップp値を提供します。
パーティショニング・クラスタリング
- statsのkmeans()は、ユークリッド距離に関してパーティションを計算するためのいくつかのアルゴリズムが用意されています。
- clusterのpam()は、medoids周りショニングを実装しており、任意の距離で作業することができます。clara()は、より大きなデータセットにおけるpam()のラッパーです。シルエットプロットスパニング楕円は可視化のために使用することができます。
- apclusterは、FreyとDueckのアフィニティ伝播のクラスタリングを実装しています。パッケージ内のアルゴリズムは、FreyとDueckが発行するMATLABコードに似ています。
- ClusterRは、k平均、ミニバッチk平均、kメドイド、親和性伝播クラスタリング、およびGaussian混合モデルを実装して、プロット、検証、予測(新しいデータ)、および最適なクラスタ数の推定を可能にします。このパッケージはRcppArmadilloを利用して、関数のうち計算負荷の高い部分を高速化しています。
- clusterSimは、与えられたデータセットに最適なクラスタリング手順を検索することができます。
- clustMixTypeは、混在型データのためのk-meansのHuangのkプロトタイプ拡張を実装します。
- evclustは、credalパーティション、すなわち、クラスタへのオブジェクトのメンバシップを表すデンプスター・シェーファーの質量関数のセット を生成し、様々なクラスタリングアルゴリズムを実装しています。
- flexclustは、任意の距離を測定し、ハード競合学習、ニューラルガスとQTクラスタリングのためのK-重心のクラスタ化アルゴリズムを提供します。近傍のグラフやパーティションのイメージプロットは、可視化のための利用可能です。この機能の一部はまた、cclustによって提供されます。
- kernlabは、kkmeansとのspeccによるスペクトラルクラスタリングによるk平均アルゴリズムの重み付きカーネルのバージョンが用意されています。
- kmlは、縦(共同)データ用に特別にk-meansクラスタリングを提供します。
- QuCluは、分位数によってクラスタを表現します。潜在的に歪んだクラスタ単位の分布を持つ高次元クラスタリングを提供します。
- skmeansは、球形k平均クラスタリング、コサイン類似性を有する、すなわちk平均クラスタリングを可能にします。それは、高次元のデータセットをクラスタリングするためCLUTOのvclusterプログラムへの遺伝的および簡単な固定小数点アルゴリズムとインタフェースを含むいくつかの方法を備えています。
- Spectrumは、シングルビューデータまたはマルチビューデータの自己調整スペクトルクラスタリング手法を実装し、eigengapまたはマルチモダリティギャップヒューリスティックを使用してクラスタ数を決定します。 この方法は、Kの自動選択により、広範囲のガウスおよび非ガウス構造をクラスタ化するのに十分な柔軟性を備えています。
- tclustは、トリミングk-meansクラスタリングが可能です。このパッケージを使用するに加えて、他の共分散構造はまた、クラスタに対して指定することができます。
モデルベースのクラスタリング
ML推定
- 観測ラベルの一部に確実にある確率で与えられている半または部分的に監視付きの問題については、bgmmは、EMアルゴリズムとガウス分布の混合について信念をベースとソフトラベル混合モデリングを提供します。
- EMClusterは、半教師付き学習の状況と同様に教師なしで、非構造化分散の有限混合ガウス分布のモデルベースのクラスタリングためのEMアルゴリズムといくつかの効率的な初期化メソッドを提供します。
- funFEMは、時系列やより一般的な機能データのクラスタリングを可能にするfunFEMアルゴリズムを実装することで、モデルベースの機能データ解析を提供します。これは、ユニークで識別可能な関数部分空間におけるデータのクラスタリングを可能にする、識別可能な関数混合モデルに基づいています。このモデルは、簡潔であるため、長い時系列を扱うことができるという利点があります。
- GLDEXは、一般化ラムダ分布の混合に適合し、グループ化された条件付きのデータパッケージのためmixdistを使用することができます。
- GMCMは、教師なしクラスタリングおよびメタ分析のためのガウス混合コピュラモデルに適合します。
- HDclassifは、それが、データが元の空間よりも低い次元に住んでいるとする高次元データにガウス混合モデルに合うように、hddc()を提供しています。
- teigenは、ビューのクラスタリングや分類の点から(固有分解された共分散構造を持つ)多変量t分布の混合モデルにフィットすることができます。
- mclustは、EMアルゴリズムを使用してガウス分布の混合物に適合します。これは、ボリュームと、最大尤度に基づいて共分散行列と凝集型階層クラスタリングの形状を微調整することができます。これは、クラスタリング、密度推定、および判別分析のために、階層的クラスタリング、EMとベイズ情報量基準(BIC)を使用して、総合的な戦略を提供しています。
- MetabolAnalyzeは、EMアルゴリズムと確率的主成分分析の混合物に適合します。
- グループ化された条件付きデータパッケージの場合は、mixdistを使用できます。
- mixRは、EMアルゴリズムと、必要に応じてNewton-RaphsonアルゴリズムやBisection法を用いて、Normal、Weibull、Gamma、Lognormalなどの系列の生データやビン詰めデータに対する有限混合モデルの最尤推定を行います。このパッケージは、モデル選択のための情報基準やブートストラップ尤度比検定も提供しており、モデルフィッティングプロセスはRcppパッケージを用いて高速化されています。
- mixtoolsは、パラメトリックおよびノンパラメトリック(多変量)の混合物のためのEMアルゴリズムとのフィッティングを提供します。パラメトリック混合物はmultinomialsの混合物、多変量法線、反復測定と法線、ポアソン回帰と(ランダム効果を持つ)ガウス回帰が含まれています。ノンパラメトリックの混合物は、対称性が識別可能性と条件付き独立した仮定した多変量ノンパラメトリックの混合のために課されている単変量セミパラメトリック場合があります。またメトロポリス-ヘイスティングスアルゴリズムのガウス回帰のフィットの混合物が提供されています。
- EMアルゴリズムによりスキュー正規分布の単および多変量目盛混合物のフィッティング有限混合は、mixsmsnによって提供されています。
- MoEClustは、EMアルゴリズムを使用して、推定を極力減らす有限多変量ガウス混合エキスパートモデルに適合します。共変量は、混合割合および/または成分密度に影響を与え、mclustからの14の制約付き共分散パラメータ化がすべて実装されます。
- movMFは、EMアルゴリズムでミーゼス・フィッシャー分布の有限の混合に適合します。
- otrimleは、どのクラスタにも適合しない外れ値やノイズを許容するロバストクラスタ分析を実行します。データは、ガウス分布と、ユークリッド空間全体をカバーする不適切な一様分布であるノイズ成分の混合によってモデル化されます。
- prabclusは、距離からMDSを計算し、およびMDSポイントに最尤ガウスの混合物のクラスタリングを適用することにより、プレゼンス不在行列オブジェクトをクラスタ化します。
- psychomixは、(条件付きML経由)二分ラッシュモデルとブラッドリー・テリーモデルの混合物を推定します。
- rebmixは、条件付き独立ノーマル、対数正規形、ワイブル、ガンマ、バイノミアル、ポアソン、ディラックまたはフォンミーゼス成分密度と無制限分散共分散行列との多変量正規成分密度の混合にフィットするREBMIXアルゴリズムを実装します。
- RMixtCompは、異種データや部分欠損データに対して混合モデルを用いたクラスタリングを行います。混合モデルはSEMアルゴリズムを用いてフィットされ、パッケージには実データ、カテゴリデータ、カウントデータ、ファンクショナルデータ、ランキングデータの8つのモデルが含まれます。
- stepmixrは、Pythonパッケージ「StepMix」のインターフェイスで、連続データやカテゴリカルデータのモデルベースのクラスタリングや一般化混合モデリング(潜在クラス/プロファイル分析)を可能にします。さらに、stepmixrは、潜在クラスを共変量(予測変数)に回帰するため、および/または潜在クラスから結果を予測するための、複数のステップワイズ期待値最大化アルゴリズム(例えば、1-step、2-step、3-step Bolck-Croon-Hagenaars (BCH)、および最尤法(ML))を提供します。完全情報最尤法(FIML)によって欠損値を扱い、ノンパラメトリックなブートストラップによって半教師ありおよび教師なし設定での推論を可能にします。本パッケージは、Pythonの「StepMix」パッケージのインターフェイスとしてreticulateを使用します。「Stepmix」は、reticulateが使用するPythonのバージョンにインストールする必要があります。これはstepmixrの中で行うか、pipコマンド(pip install stepmix)を使って行います。
ベイズ推定
- 多変量ガウス分布の有限混合物のベイズ推定は、bayesmを使用して可能です。パッケージには、このような混合サンプリングだけでなく、ギブスサンプリングを使用してモデルを推定するための機能を提供します。MCMCチェーンを分析するための追加機能は、観測値をクラスタリングするため、限界密度を決定するためとUNI-二変数限界密度をプロットするために、MCMCが描く上での瞬間を平均化するための利用可能です。
- bayesmixは、JAGSを使用してベイズ推定を提供しています。
- bmixtureは、単変量のガンマ分布と正規分布の有限混合のベイズ推定を提供します。
- GSMは、混合ガンマ分布に適合します。
- mixAKは、おそらく打ち切りデータの正規の混合物を分析するためのMCMC法を含む統計的手法の混合が含まれています。
- NPflowは、多変量正規分布、スキュー正規分布、またはスキューt分布のディリクレプロセス混合に適合します。 このパッケージは、フローサイトメトリーデータの前処理アプリケーション向けに開発されました。
- IMIFAは、Infinite Factor Analyzerと、高次元のデータをクラスタリングするための関連するモデルの柔軟なスイートの無限の混合に適合します。モデル選択基準に頼ることなく、クラスタの数および/またはクラスタ特有の潜在因子の数をパラメトリックに推測することができます。
- mcclustは、(ハード)クラスタリングなどのサンプルを処理するためのメソッドを実装しています。例えば、ベイズクラスタリング・モデルのMCMC出力。中でも後部類似度行列または再ラベル付けアルゴリズムに基づいているサンプルを表すために単一の最良のクラスタリングを見つける方法です。
- PReMiuMは、応答が共変量プロファイルに非パラメトリックにリンクされているディリクレ過程ベイズクラスタリングされているプロファイルの回帰のためのパッケージです。
- rjagsは、混合モデリング用のモジュールが含まれてぎざぎざMCMCライブラリへのインターフェイスを提供します。
他の推定方法
- AdMitは、そのカーネル関数を介して目標濃度を近似するためにスチューデント-T分布の適応型混合にフィットすることができます。
その他のクラスタ・アルゴリズム
- ADPclustは、2次元の決定プロットに基づいて、高次元データをクラスタ化することができます。各データに対するこの密度距離プロットは、より高い局所密度値を持つすべての観測までの最短距離に対する局所密度データポイントに対してプロットします。この非反復手順のクラスタ重心は、対話型または自動選択モードを使用して選択することができます。
- adproclusは、Additive Profile Clustering(ADPROCLUS)法と、同時次元削減を可能にする低次元ADPROCLUS法を提供し、オブジェクトごとの変数データ行列のオーバーラップ・クラスタリング・モデルを取得します。
- amapは、K-means法や凝集型階層クラスタリングの代替実装を提供します。
- biclustは、2次元データでbiclustersを見つけるためにいくつかのアルゴリズムが用意されています。
- cbaは、「rock」と「proximus」のようなビジネス・アナリティクスのためのクラスタリング技術を実装しています。
- clueは、両方の階層とパーティションクラスタメソッドのアンサンブルのメソッドを実装します。
- CoClustは、コピュラ関数に基づいており、クラスタ化アルゴリズムを実装し、そのためのマージン上の任意の仮定なしに生成処理の多変量依存構造によりグループ観測することができます。
- DatabionicSwarmは、自己組織化クラスタリングのためにDatabionic swarm(DBS)と呼ばれるスウォームシステムを実装しています。この方法は、データ空間内の距離および/または密度ベースの構造によって特徴付けられる天然クラスタなどの高次元データの構造に適応することができます。
- dbscanは、kdツリーを用いたアルゴリズムDBSCAN(ノイズを持つアプリケーションの密度ベースの空間クラスタリング)の高速reimplementaitonを提供しています。
- ファジィクラスタリングと袋詰めのクラスタリングは、e1071で提供されています。
- ファジィクラスタリングのためのさらなる、より広範なツールがfclustでご利用いただけます。
- compHclustは、マイクロアレイデータが「弱い」遺伝子から生じたデータに存在する構造を明らかにするために特に設計された無料の階層的クラスタリングを提供しています。
- FCPSは、一貫した入力と出力を備えた多くの従来のクラスタリングアルゴリズム、クラスタ数の推定のためのいくつかの統計的アプローチ、およびクラスタ化可能性のミラー密度プロット(MDプロット)を提供し、あらゆるアルゴリズムが可能であるはずのさまざまなクラスタリングの課題を提供します 実世界のデータに直面したときに処理します。
- hopachアルゴリズムは、階層的な方法とPAMの間のハイブリッドで、再帰的なデータセットを分割することにより、ツリーを構築します。
- グラフやネットワークのためのモデルベースのクラスタリング手法は、latentnetに実装されています。
- mlr3clusterは、機械学習ツールボックスパッケージmlr3を拡張し、機械学習のビルディングブロックに関する効率的なオブジェクト指向プログラミングを提供します。このパッケージには、様々なクラスタリング学習者(分割型、階層型、ファジィなど)を代表する24のクラスタリング学習、4つの性能測定の選択、クラスタリングを始めるための2つの組み込みタスクが含まれます。
- ORIClustのようなバイオインフォマティクス用に開発されたクラスタリングアルゴリズムを提供するパッケージがいくつかあります。
- pdfClusterは、カーネル密度推定を経由してクラスタ分析を実行するためのツールを提供します。クラスタは、しきい値を超えると推定密度が最大に接続されたコンポーネントに関連付けられます。また、接続されたコンポーネントに関連付けられたツリー構造が得られます。
- prcrは、最初の階層クラスタリングが実行されて、後続のk-meansクラスタリング手順の最初のパーティションを決定する2ステップクラスタ分析を実装します。
- ProjectionBasedClusteringは、距離と密度の両方の構造(DDS)によってクラスタが形成される高次元のデータセットに対して、投影ベースのクラスタリング(PBC)を実装します。
- randomLCAは、必要に応じて、ランダムな効果を含んで潜在クラスモデルのフィッティングを提供します。
- RPMMは、ベータ混合物とガウス混合の再帰的に分割された混合モデルに適合します。 これは、階層型クラスタリングに似ていますが有限混合モデルにも似ている、クラスの階層を返すモデルベースのクラスタリングアルゴリズムです。
- 自己組織化マップは、somで提供されています。
クラスタワイズ回帰
- crimCVは、共変量として時間を使用した縦断的データのゼロ膨張ポアソンモデルの有限混合に適合します。
- (時系列を含む)を混合し、カテゴリおよび連続データの潜マルコフモデルの多群の混合がdepmixまたはdepmixS4を使用して取り付けることができます。パラメータは、線形およびパラメータに対する非線形制約与えられた汎用の最適化ルーチンを使用して最適化されています。
- flexmixは、(一般化)線形モデルの混合物を含む回帰モデルの混合物のEM-推定のためのユーザ拡張可能なフレームワークを実装しています。
- fpcは、両方のモデルベースのクラスタリングと線形回帰のための固定小数点のメソッドが用意されています。非対称突起メソッドのコレクションは、クラスタリングの種々の態様をプロットするために使用することができます。
- lcmmは、最尤法を用いて成長混合モデルまたは異種の線形混合モデルとして知られている潜在クラス線形混合モデルに適合します。
- mixPHMは、EMアルゴリズムで比例ハザードモデルの混合に適合します。
追加機能
- 単変量正規分布の混合物が印刷され、nor1mixを用いてプロットすることができます。
- clusterGenerationは、クラスタまたはクラスタ分布のペアのための分離指数(データ、人口版)、およびクラスタを可視化する1次元および2次元投影プロットを計算し、ランダムなクラスタおよびランダム共分散/相関行列を生成するための関数が含まれています。
- 別の方法としてMixSimは、最大かつ/または平均重なり予め指定されたレベルのためのガウスコンポーネントの有限混合モデルを生成します。このモデルは、クラスタ・アルゴリズムの性能を研究するためのデータをシミュレートするために使用することができます。
- clusterCritは、様々なクラスタリング検証または品質基準とパーティション比較指標を計算します。
- clusterMIは、多重代入を用いて欠損値問題に対処することにより、不完全なオブザベーションをクラスタリングするツールを提供します。このパッケージは、異なるインピュテーション手法、6つのクラスタリング手法(距離ベースまたはモデルベース)、カスタム手法の使用、非負行列分解ベースの手法によるパーティション・プーリングをサポートします。
- クラスタ検証パッケージのclusterReproは、クラスタの再現性をテストします。clvは、いくつかの安定性の尺度を計算し、clusterとclValidの関数によって生成される出力のほとんどを使い人気の内部と外部のクラスタ検証方法の準備が含まれています。
- clustvarselは、モデルベースのクラスタリングのための変数選択を提供しています。
- factoextraは、ヒューリスティックおよびモデルベースのクラスタ分析を含む一般的な多変量データ分析の出力を抽出し、視覚化するための使いやすい関数を提供します。
- fpcのstats()は、2クラスタソリューションとの間の類似性を比較するための機能を提供しています。
- flexclustから関数を用いて適合k重心クラスタリング溶液の安定性は、ブートストラップ法を用いてbootFlexclust()を介して検証することができます。
- MOCCAは、クラスタ検証指数の多目的最適化に基づくクラスタの選択肢を分析するためのメソッドが用意されています。
- NbClustは、クラスタ構造を評価し、クラスタの適切な数の上で決定するのに役立つはずである30種類の指標を実装しています。
- seriationは、系列下と行列シェーディングを使用して非類似度行列を可視化するためのdissplot()を提供しています。これはまた、連続した順序で表示される同一クラスタに属するオブジェクトを制限することにより、クラスタの品質を検査することを可能にします。
- sigclustは、クラスタリング結果の有意性を試験するための統計的方法を提供します。
- treeClustは、各変数の回帰または分類木で、その葉のメンバーシップに基づいて、データポイント間の非類似度を計算します。
R言語 CRAN Task View:クラスタ分析&有限混合モデル
ピンバック:R言語 CRAN Task Views | トライフィールズ