計算幾何学および近似アルゴリズムにおいて、コアセットとは、入力点集合の小さな、場合によっては重み付けされた部分集合であり、指定された最適化問題の値を近似的に保持するものです。コアセット上で問題を解くと、そのコストがデータセット全体の最適解に確実に近い解が得られます。コアセットは、理論的な保証を維持しながら計算複雑性を低減するために、幾何最適化、クラスタ分析、データストリーム、大規模機械学習などで広く使用されています。 [ 1 ] [ 2 ]
多くの幾何学的最適化問題では、近似パラメータεと次元の関数によって制限されるサイズのコアセットが許容されますが、入力サイズには依存しません。このようなコアセットを線形時間またはほぼ線形時間で構築できる場合、多項式時間近似スキーム(PTAS)または効率的な近似アルゴリズムが得られます。
コアセットの概念は、1990年代後半から2000年代初頭にかけて、計算幾何学の分野で、高次元幾何学問題に対する近似手法の開発というより広範な取り組みの一環として登場しました。初期の研究では、コアセットはレンジ空間におけるε近似やεネット、VC次元理論と関連付けられました。その後の研究により、この枠組みはクラスタリング、ストリーミングモデル、分散コンピューティングへと拡張されました。時を経て、コアセットは大規模データ分析、特にクラスタリングや回帰問題において中心的なツールとなりました。これらの問題では、膨大なデータセットに対する厳密な計算は計算上不可能です。
P を有限個の点の集合とし、f(P, x) を P 上で定義された最適化問題に対する候補解 x のコストとします。例えば、k-means クラスタリングでは、x は k 個の中心の集合を表し、f(P, x) は P 内の点から最も近い中心までの距離の二乗の合計を表します。
f に関する P の (強い) ε-コアセットは、すべての候補解 x に対して、(重み付けされる可能性のある) 部分集合 S ⊆ P であり、
ここで、ε > 0 はユーザー定義の近似パラメータである。
多くの構成では、S には重み w(p) が備わっており、
ここで、c(p, x)は点pがコストに寄与する度合いを表す。
一部の文献では、以下のように区別している。
コアセットは通常、以下の手法の1つ以上を用いて構築されます。
多くの問題において、コアセットのサイズはO(g(ε, d))であり、dは次元であり、この上限は入力サイズnに依存しない。
コアセットは、 k-meansクラスタリング、k-median、メトリックk-centerなどのクラスタリング問題で広く使用されています。[ 3 ]例えば、ユークリッド空間でのk-meansクラスタリングでは、nに依存しないO(k / ε²)のサイズのコアセットを構築できます(設定によっては対数係数まで)。コアセットに対して正確なクラスタリングアルゴリズムまたはヒューリスティックなクラスタリングアルゴリズムを実行すると、元のデータセットの(1 + ε)近似が得られます。
これにより、大規模データセットにおけるスケーラブルなクラスタリングが可能になり、いくつかの実用的な機械学習システムの基盤となる。
コアセットは、以下のような問題に対応するために開発されてきました。
低次元の設定では、コアセットはしばしば多項式時間近似スキームをもたらす。
最小二乗法などの回帰問題では、コアセットは目的関数値を維持するより小さな重み付きデータセットを提供します。また、以下の用途にも使用されます。
近年では、大規模な機械学習パイプラインにおけるデータセットの要約やトレーニングの高速化のために、コアセットが研究されている。
ストリーミングモデルでは、データポイントは順次到着し、ストレージ容量は限られています。マージ・アンド・リデュース手法では、εと問題パラメータのみに依存する小さなコアセットを維持します。同様に、分散システムでは、構成可能なコアセットにより、各マシンがローカルコアセットを計算し、近似精度を維持しながら中央で結合することができます。
コアセットは以下に関連しています。