series_cosine_similarity()
適用対象: ✅Microsoft Fabric✅Azure データ エクスプローラー✅Azure Monitor✅Microsoft Sentinel
2 つの数値ベクトルのコサインの類似性を計算します。
関数 series_cosine_similarity()
は、入力として 2 つの数値系列を受け取り、その コサインの類似性を計算します。
構文
series_cosine_similarity(
series1,
series2, [
*magnitude1, [
*magnitude2]])
構文規則について詳しく知る。
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
series1、series2 | dynamic |
✔️ | 数値データを含む入力配列。 |
マグニチュード 1、マグニチュード 2 | real |
1 番目のベクトルと 2 番目のベクトルの省略可能な大きさ。 大きさは、それ自体を持つベクトルのドット積の平方根です。 大きさが指定されていない場合は、計算されます。 |
返品
real
を持つ series1 のコサイン類似性を値とする型の値を返します。
両方の系列の長さが等しくない場合、長い系列は短い系列の長さに切り捨てられます。
入力系列の数値以外の要素は無視されます。
Note
一方または両方の入力配列が空の場合、結果は null
されます。
パフォーマンスの最適化
この関数を使用する場合のパフォーマンスの向上とストレージ要件の削減のために、ML ベクター埋め込みなど、64 ビットの精度を必要としない浮動小数点ベクトルを格納するには、 Vector16
エンコード ポリシーの使用を検討してください。
Vector16
浮動小数点表現を利用する プロファイルは、操作を大幅に最適化し、ストレージ サイズを 4 倍に減らすことができます。
Vector16
エンコード ポリシーの詳細については、「Encoding ポリシーの種類」を参照してください。
例
datatable(s1:dynamic, s2:dynamic)
[
dynamic([0.1,0.2,0.1,0.2]), dynamic([0.11,0.2,0.11,0.21]),
dynamic([0.1,0.2,0.1,0.2]), dynamic([1,2,3,4]),
]
| extend cosine_similarity=series_cosine_similarity(s1, s2)
s1 | s2 | cosine_similarity |
---|---|---|
[0.1,0.2,0.1,0.2] | [0.11,0.2,0.11,0.21] | 0.99935343825504 |
[0.1,0.2,0.1,0.2] | [1,2,3,4] | 0.923760430703401 |