人工データを使用してランダム フォレスト クラスタリングをテストしたいと考えています。信頼性が高く、多少のノイズがあるデータセットを生成したかったのです。
A1 と A2 (どちらもバイナリ) の 2 つの属性があります。クラスは、A1 xor A2 として計算されます。ノイズの多いバイナリ属性をいくつか追加しました。
たとえば、次のようなものがあります。
A1 A2 noise | class
0 0 ... | 0
0 1 ... | 1
1 0 ... | 1
1 1 ... | 0
... ... | ...
クラスタリングではクラスがないため、ランダム フォレスト クラスタリングでは元のデータを取得して変換します。既存のすべてのケースをクラス 1 でマークし、クラス 2 でマークされた合成データを追加します。合成データは、一部の属性のすべての値からランダム サンプリングによって構築されます。
これが得られるものです:
A1 A2 noise | class
0 0 ... | 1
0 1 ... | 1
1 0 ... | 1
1 1 ... | 1
.....
-------------------------
0 0 ... | 2
0 0 ... | 2
1 1 ... | 2
0 1 ... | 2
.....
上の部分は、クラス 1 でマークされた元のデータ (上記のように) です。線の下は、クラス 2 でマークされたランダムにサンプリングされた合成データです。ランダム フォレストは、クラス 1 と 2 を区別する構造 (実データとランダム データ) を見つけようとします。問題は、クラスのない XOR は何も教えてくれず、ここで学ぶことは何もないということです。
最後に、私の質問: 非依存、軽度の依存、または強い依存の属性を使用して、ランダム フォレスト クラスタリングのデータを生成する方法を教えてください。