autocluster プラグイン
autocluster
データ*内の離散属性* (ディメンション*) の一般的なパターン*を検索します。 次に、元のクエリの結果が 100 行であろうと 10 万行であろうと、パターン数が少なくなるように抑えます。 このプラグインは、エラー (例外やクラッシュなど) を分析するために開発されましたが、フィルター処理されたデータセットで動作する可能性があります。 このプラグインは、evaluate
演算子を使用して呼び出されます。
Note
autocluster
は主として、以下にある「Algorithms for Telemetry Data Mining using Discrete Attributes」(分離属性*を使用したテレメトリ データ マイニング*のためのアルゴリズム*) の Seed-Expand アルゴリズム*に基づいています。
構文
T |
evaluate
autocluster
(
[SizeWeight [,
WeightColumn [,
NumSeeds [,
CustomWildcard [,
... ]]]]])
構文規則について詳しく知る。
パラメーター
パラメーターは、 syntax で指定されている順序を指定する必要があります。 既定値を使用することを示すには、文字列のチルダ値を ~
します。 詳細については、「例」を参照してください。
名前 | タイプ | Required | 説明 |
---|---|---|---|
T | string |
✔️ | 表形式の入力式。 |
SizeWeight | 倍精度浮動小数点 | ジェネリック (高カバレッジ) と情報 (多くの共有) 値のバランスを制御する 0 から 1 の間の倍精度浮動小数点型。 通常、この値を大きくすると、カバレッジを拡大しながらパターンの量が減ります。 逆に、この値を小さくすると、共有値の増加とカバレッジの割合が小さいという特徴を持つ、より具体的なパターンが生成されます。 既定値は、0.5 です。 数式は、重み付け SizeWeight と 1-SizeWeight を持つ加重幾何学的平均です。 |
|
WeightColumn | string |
入力の各行に、指定された重みを適用します。 各行の既定の重みは 1 です。 引数は、数値整数列の名前である必要があります。 重み列の一般的な使用方法は、各行に既に埋め込まれているデータのサンプリングまたはバケットまたは集計を考慮することです。 |
|
NumSeeds | int |
最初のローカル検索ポイントの数を決定します。 シードの数を調整すると、データ構造に基づいて結果の量または品質に影響します。 シードを増やすと結果が向上しますが、クエリのトレードオフが遅くなります。 5 を下回る場合はごくわずかの改善が得られますが、50 を超えて増やすとパターンが増えることはめったにありません。 既定値は、25 です。 |
|
CustomWildcard | string |
結果テーブル内の特定の型のワイルドカード値を設定する型リテラル。この列に制限がないことを示します。 既定値は null で、空の文字列を表します。 既定値がデータの適切な値である場合は、別のワイルドカード値 (* など) を使用する必要があります。 複数のカスタム ワイルドカードを連続して追加することで含めることができます。 |
返品
autocluster
プラグインは、通常は小さいパターンのセットを返します。 これらのパターン*は、複数の個別の属性にわたって共通する値を持つデータ*の一部をキャプチャ*します。 各パターン*が結果*内に行*で表されます。
最初の列*はセグメント* ID* です。 次の 2 つの列は、元のクエリからパターンによってキャプチャされた行の数と割合です。 残りの列は、元のクエリからの列です。 それらの値は、列*の特定値か変数*値を意味するワイルド カード* (デフォルト*では null 値*) です。
パターン*は区別されずに重複する*可能性があり、通常は元の行*すべてに対応していません。 一部の行は、どのパターンにも当てはまらない場合があります。
ヒント
入力*パイプ*で where と project を使用して、関心があるデータ*だけに絞り込みます。
関心がある行が見つかったら、 where
フィルターに特定の値を追加して、より詳しく調べることができます。
例
evaluate 使用
T | evaluate autocluster()
autocluster 使用
StormEvents
| where monthofyear(StartTime) == 5
| extend Damage = iff(DamageCrops + DamageProperty > 0 , "YES" , "NO")
| project State , EventType , Damage
| evaluate autocluster(0.6)
出力
セグメント ID | カウント | パーセント | 都道府県 | EventType | Damage (損害) |
---|---|---|---|---|---|
0 | 2278 | 38.7 | ひょう | いいえ | |
1 | 512 | 8.7 | 雷雨風 | はい | |
2 | 898 | 15.3 | テキサス州 |
カスタムワイルドカード*使用
StormEvents
| where monthofyear(StartTime) == 5
| extend Damage = iff(DamageCrops + DamageProperty > 0 , "YES" , "NO")
| project State , EventType , Damage
| evaluate autocluster(0.2, '~', '~', '*')
出力
セグメント ID | カウント | パーセント | 都道府県 | EventType | Damage (損害) |
---|---|---|---|---|---|
0 | 2278 | 38.7 | * | ひょう | いいえ |
1 | 512 | 8.7 | * | 雷雨風 | はい |
2 | 898 | 15.3 | テキサス州 | * | * |