2

高次元で大規模なデータセットを扱っているため、出力から上位 N 個の外れ値だけを取得する必要がありResultWriterます。この出力から上位 N 個の外れ値だけを取得する elki のオプションはありますか?

4

1 に答える 1

1

これResultWriterは ELKI で最も古いコードの一部であり、書き直す必要があります。これはかなり一般的です。出力をテキストとして最適にシリアル化する方法を見つけようとします。

特定の形式または特定のサブセットが必要な場合、適切な方法は独自のResultHandler. を書くためResultHandlerのチュートリアルがあります。

結果で入力座標を見つけたい場合は、

Database db = ResultUtil.findDatabase(baseResult);
Relation<NumberVector> rel = db.getRelation(TypeUtil.NUMBER_VECTOR_VARIABLE_LENGTH);

数値ベクトルを含む最初のリレーションを返します。

外れ値スコアで並べ替えられたオブジェクトを反復処理するには、次を使用します。

OrderingResult order = outlierResult.getOrdering();
DBIDs ids = order.order(order.getDBIDs());
for (DBIDIter it = ids.iter(); it.valid(); it.advance()) {
  // Output as desired.
}
于 2015-03-05T14:41:09.153 に答える