ジャッカード類似度

ジャッカード類似度は、2つのBINARYベクトルの間で共通する重要な(ゼロ以外の)次元(ビットの位置)のシェアを判別するために使用されます。

ジャッカード類似度はBINARYベクトルのみに適用でき、各ベクトルのゼロ以外のビットのみが考慮されます。

ベクトルABの間のジャカードの類似性は、ABの間のANDビット演算の結果のハミング重み(ノルム、または結果のベクトルの「1」の数)を、ABの間のORビット演算の結果のハミング重みで割ったものです。

ベクトルAおよびBの図に示されているように:

  • ANDビット操作では、数列内のビットが1と一致する場合は1、および一致しない場合は0が出力されます。
  • ORビット操作では、数列内のビットの少なくとも1つが1に一致する場合は1を、一致しない場合は0が出力されます。

計算結果は0から1までで、1に近い結果はより類似しています。結果が0の場合は、2つのベクトルが0以外の属性を共有しないことを意味し、結果が1の場合は、2つのベクトルが0以外の属性の同一のセットを共有していることを示します。次の図では、2つのベクトルが重要な属性の33%を共有しています。

ジャッカード類似度は2つのベクトルの類似度を示しますが、ジャッカード距離はベクトルの間の相違度を示します。ジャッカード距離は、ジャッカード類似度を1から引くことで求めることができます。たとえば、ジャッカード類似度が0.25の2つのベクトルのジャッカード距離は0.75です。距離を判断する場合、結果の意味は類似度計算と逆になります。結果が0の場合は、2つのベクトルが同一であることを示し、結果が1の場合は、ベクトルが完全にばらばらで、共通要素を共有しないことを示します。