統計学および関連分野において、類似度尺度、類似度関数、類似度メトリックは、2 つのオブジェクト間の類似性を定量化する実数値関数です。類似度の単一の定義は存在しませんが、通常、このような尺度は、ある意味では距離メトリックの逆です。つまり、類似するオブジェクトに対しては大きな値を取り、非常に異なるオブジェクトに対しては 0 または負の値を取ります。ただし、より広い意味では、類似度関数はメトリック公理も満たす場合があります。
コサイン類似度は実数値ベクトルの類似度測定によく使われる指標で、情報検索などの分野でベクトル空間モデルにおける文書の類似度を採点するために使用されます。機械学習では、 RBFカーネルなどの一般的なカーネル関数を類似度関数として見ることができます。[1]
異なる類似度測定式の使用
比較対象となるオブジェクトに応じて、さまざまな種類のオブジェクトに対してさまざまな種類の類似度測定法が存在します。オブジェクトの種類ごとに、さまざまな類似度測定式があります。[2]
2つのデータポイント間の類似性

2 つのデータ ポイント間の類似性を見つけるには、さまざまなオプションが利用できます。その中には、他の類似性方法を組み合わせたものもあります。2 つのデータ ポイント間の類似性を測定する方法には、ユークリッド距離、マンハッタン距離、ミンコフスキー距離、チェビシェフ距離などがあります。ユークリッド距離の式は、平面上の 2 点間の距離を見つけるために使用され、下の画像に示されています。マンハッタン距離は、2 つの住所間の最短ルートを見つけるために使用できるため、GPSアプリケーションでよく使用されます。 [要出典]ユークリッド距離の式とマンハッタン距離の式を一般化すると、さまざまなアプリケーションで使用できる ミンコフスキー距離の式 が残ります。
文字列間の類似性
文字列を比較する場合、文字列の類似性を測るさまざまな方法を使用できます。これらの方法には、編集距離、レーベンシュタイン距離、ハミング距離、Jaro 距離などがあります。最適な式は、アプリケーションの要件によって異なります。たとえば、編集距離は、スペル チェックなどの自然言語処理アプリケーションや機能でよく使用されます。Jaro 距離は、レコード リンクで姓と名を他のソースと比較するためによく使用されます。
2つの確率分布の類似性
確率分布の類似性の典型的な尺度は、バタチャリヤ距離とヘリンガー距離です。どちらも、同じドメイン上の 2 つの確率分布の類似性を定量化したものを提供し、数学的に密接に関連しています。バタチャリヤ距離は三角不等式を満たさないため、メトリックを形成しません。ヘリンガー距離は、確率分布の空間でメトリックを形成します。
2つのセット間の類似性
Jaccard 指数の式は、2 つのセットの類似性を、両方のセットに存在するアイテムの数とアイテムの総数との相対値に基づいて測定します。この式は、推奨システムやソーシャル メディア分析でよく使用されます[引用が必要]。Sørensen –Dice 係数も、両方のセットのアイテムの数と存在するアイテムの総数を比較しますが、共有アイテムの数の重み付けが大きくなります。Sørensen–Dice 係数は、生物学のアプリケーションでよく使用され、2 つの遺伝子または種のセットの類似性を測定します[引用が必要]。
2つの配列間の類似性
時間的なシーケンス (時系列) を比較する場合、一部の類似性測定では、完全には整列していない 2 つのシーケンスの類似性も考慮する必要があります。
クラスタリングでの使用
クラスタリングまたはクラスター分析は、類似したオブジェクトをグループ化してデータ内のパターンを発見するために使用されるデータ マイニング手法です。一連のデータ ポイントを類似性に基づいてグループまたはクラスターに分割します。クラスタリングの基本的な側面の 1 つは、データ ポイント間の類似性を測定する方法です。
類似度測定は、2 つのデータ ポイントの関連性がどの程度か、また同じクラスターにグループ化するかどうかを決定するために使用されるため、多くのクラスタリング手法で重要な役割を果たします。類似度測定は、クラスター化されるデータの種類や解決される特定の問題に応じて、さまざまな形式を取ることができます。
最も一般的に使用される類似性の尺度の 1 つはユークリッド距離で、これはK-means クラスタリングや階層的クラスタリングなどの多くのクラスタリング手法で使用されます。ユークリッド距離は、高次元空間内の 2 点間の直線距離の尺度です。これは、2 点の対応する座標間の差の二乗の合計の平方根として計算されます。たとえば、2 つのデータ ポイントとがある場合、それらの間のユークリッド距離は です 。

よく使われるもう1つの類似度測定法は、Jaccard指数またはJaccard類似度で、有無データ[3]やブールデータなどのバイナリデータを扱うクラスタリング手法で使用されます。Jaccard類似度は、テキストデータを扱うクラスタリング手法で特に役立ち、共有される特徴やキーワードに基づいて類似したドキュメントのクラスターを識別するために使用できます。[4]これは、2つのセットの共通部分のサイズを2つのセットの和集合のサイズで割った値として計算されます 。
162 の関連核プロファイル間の類似性は、Jaccard 類似度測定を使用してテストされます (ヒートマップの図を参照)。核プロファイルの Jaccard 類似度は 0 から 1 の範囲で、0 は 2 つのセット間に類似性がないことを示し、1 は最も類似した核プロファイルをクラスタリングする目的で完全な類似性があることを示します。
マンハッタン距離はタクシー ジオメトリとも呼ばれ 、連続データを扱うクラスタリング手法でよく使用される類似度測定です。高次元空間内の 2 つのデータ ポイント間の距離の測定で、2 つのポイントの対応する座標間の絶対差の合計として計算されます。
オブジェクトごとに名義、順序、数値属性などの混合型データを扱う場合、異なる型の変数を暗黙的に処理できるため、Gower の距離(または類似度) が一般的な選択肢となります。まず、各オブジェクトの変数のペア間の類似度を計算し、次にそれらの類似度を結合して、オブジェクト ペアごとに 1 つの加重平均を算出します。したがって、記述子を持つ 2 つのオブジェクトとの場合、類似度は次のように定義されます。 ここで、 は非負の重みであり、 は2 つのオブジェクトの - 番目の変数に関する類似度です 。
スペクトルクラスタリングでは、類似度または類似性尺度を使用してデータを変換し、データ分布の形状の凸性の欠如に関連する問題を克服します。[5]この尺度により、サイズのはnの集合に対する類似度行列であり、行列の要素はユークリッド距離とば、ガウス分布のようなより複雑な距離の尺度となる場合もあります。[5] この結果をネットワーク分析技術でさらに修正することもよくあります。[6]
類似度の尺度の選択は、クラスタリングするデータのタイプと解決する特定の問題によって異なります。たとえば、遺伝子発現データなどの連続データを扱う場合は、ユークリッド距離またはコサイン類似度が適切です。核プロファイル内のゲノム遺伝子座の存在などのバイナリ データを扱う場合は、Jaccard 指数の方が適している可能性があります。最後に、画像や信号処理データなどのグリッドまたは格子構造に配置されているデータを扱う場合は、マンハッタン距離がクラスタリングに特に役立ちます。
推薦システムでの使用
類似度測定は、レコメンデーションシステムの開発に使用されます。これは、複数のアイテムに対するユーザーの認識と好みを観察します。レコメンデーションシステムでは、次のような距離計算が使用されます。ユークリッド距離 またはコサイン類似度 を生成する類似度マトリックス は、任意のターゲットペアの類似度を表す値を持つ。次に、マトリックス内の値を分析して比較することにより、2つのターゲットをユーザーの好みに一致させたり、マークに基づいてユーザーをリンクしたりすることができます。このシステムでは、値自体と2つの値間の絶対距離を観察することが重要です。[7]このデータを収集すると、ユーザーに対するマークの好感度と、2つのマークが互いにどれだけ近いかがわかります。次に、ユーザーの好みに類似性の高いターゲットをユーザーに推奨することができます。
推薦システムは、複数のオンライン エンターテイメント プラットフォーム、ソーシャル メディア、ストリーミング ウェブサイトで確認されています。このシステムの構築ロジックは、類似性の尺度に基づいています。[要出典]
配列アライメントでの使用
類似性マトリックスは、配列アライメントで使用されます。類似性の高い文字には高いスコアが与えられ、類似性の低い文字には低いスコアまたは負のスコアが与えられます。
ヌクレオチド類似性マトリックスは、核酸配列をアラインメントするために使用されます。DNAに一般的に含まれるヌクレオチドは4種類(アデニン( A)、シトシン(C)、グアニン(G)、チミン(T))しかないため、ヌクレオチド類似性マトリックスはタンパク質類似性マトリックスよりもはるかに単純です。たとえば、単純なマトリックスでは、同一の塩基に+1のスコアが割り当てられ、同一でない塩基には-1のスコアが割り当てられます。より複雑なマトリックスでは、転座(ピリミジンからプリンへ、またはその逆)よりも、遷移( CやTなどのピリミジンから別のピリミジンへの変化、またはAやGなどのプリンから別のプリンへの変化)に高いスコアが割り当てられます。マトリックスの一致/不一致比によって、ターゲットの進化距離が設定されます。[8] [9] BLASTNで使用される+1/-3 DNAマトリックスは、99%同一の配列間の一致を見つけるのに最適です。 +1/−1 (または +4/−4) マトリックスは、類似度が約 70% の配列に適しています。類似度が低い配列のマトリックスでは、より長い配列アライメントが必要になります。
アミノ酸類似性マトリックスはより複雑です。遺伝コードによってコード化されているアミノ酸は 20 種類あり、そのため置換の可能な数が多くなるためです。したがって、アミノ酸の類似性マトリックスには 400 個のエントリが含まれます (通常は対称ですが)。最初のアプローチでは、すべてのアミノ酸の変化を均等にスコア付けしました。その後の改良では、アミノ酸をコードするコドンを変更するのにいくつの塩基変化が必要かに基づいてアミノ酸類似性を決定するようになりました。このモデルはより優れていますが、アミノ酸の変化の選択圧を考慮していません。より優れたモデルでは、アミノ酸の化学的特性が考慮されています。
1 つのアプローチは、類似性マトリックスを経験的に生成することです。Dayhoff法では、系統樹と、その系統樹上の種から取得した配列を使用します。このアプローチにより、 PAMシリーズのマトリックスが生まれました。PAM マトリックスは、100 個のアミノ酸あたりに発生したヌクレオチドの変化の数に基づいてラベル付けされます。PAM マトリックスは、よく理解されている進化モデルの利点がありますが、短い進化距離 (PAM10~PAM120) で最も役立ちます。長い進化距離、たとえば PAM250 または 20% の同一性では、BLOSUMマトリックスの方がはるかに効果的であることが示されています。
BLOSUM シリーズは、多数の異なるシーケンスを比較することによって生成されました。BLOSUM シリーズは、すべてのシーケンス間でどれだけのエントロピーが未変化のまま残っているかに基づいてラベル付けされるため、BLOSUM 番号が低いほど PAM 番号が高くなります。
コンピュータビジョンでの使用
参照
- 親和性伝播 – データマイニングのアルゴリズム
- 潜在空間 – 類似度関数に基づく多様体内のデータの埋め込み
- 類似性学習 – 類似性関数の教師あり学習
- 自己相似行列
- 意味的類似性 – 自然言語処理
- 類似性(ネットワーク科学) - ネットワーク分析において、2つのノード(または他のより複雑な構造)が同じ同値クラスに属する場合
- 類似性(哲学) – 物体間の類似関係
- 統計距離 – 2つの統計オブジェクト間の距離
- 文字列メトリック – 2つのテキスト文字列間の距離を測定するメトリック
- 類似検索 – データセット内の類似アイテムの検索
- tf-idf – 文書内の単語の重要度の推定
- 再帰プロット、動的システム(およびその他のシステム)の再帰を視覚化するツール
参考文献
- ^ ヴェール、ジャン=フィリップ;津田 幸二シェルコフ、ベルンハルト(2004)。 「カーネルメソッドの入門書」(PDF)。計算生物学におけるカーネルメソッド。
- ^ https://iq.opengenus.org/similarity-measurements/ 「類似性測定のさまざまなタイプ」
- ^ Chung, Neo Christopher; Miasojedow, BłaŻej; Startek, Michał; Gambin, Anna (2019). 「生物学的存在-不在データに対するJaccard/Tanimoto類似性検定および推定法」. BMC Bioinformatics . 20 (S15): 644. doi : 10.1186/s12859-019-3118-5 . ISSN 1471-2105. PMC 6929325. PMID 31874610 .
- ^ 国際技術者・コンピュータ科学者マルチカンファレンス:IMECS 2013:2013年3月13~15日、香港九龍ロイヤルガーデンホテル。SI Ao、国際技術者協会。香港:Newswood Ltd. 2013年。ISBN 978-988-19251-8-3. OCLC 842831996.
{{cite book}}: CS1 メンテナンス: その他 (リンク) - ^ ab Ng, AY; Jordan, MI; Weiss, Y. (2001)、「スペクトルクラスタリングについて:分析とアルゴリズム」、Advances in Neural Information Processing Systems、14、MIT Press:849– 856
- ^ Li, Xin-Ye; Guo, Li-Jie (2012)、「近傍伝播に基づくスペクトルクラスタリングにおけるアフィニティ行列の構築」、Neurocomputing、97 : 125–130、doi :10.1016/j.neucom.2012.06.023
- ^ Bondarenko, Kirill (2019)、推薦システムにおける類似性指標、2023年4月25日閲覧
- ^ States, D; Gish, W; Altschul, S (1991). 「アプリケーション固有のスコアリングマトリックスを使用した核酸データベース検索の感度の向上」. Methods: A Companion to Methods in Enzymology . 3 (1): 66. CiteSeerX 10.1.1.114.8183 . doi :10.1016/S1046-2023(05)80165-3.
- ^ Sean R. Eddy (2004). 「BLOSUM62 アラインメントスコアマトリックスはどこから来たのか?」(PDF) . Nature Biotechnology . 22 (8): 1035– 6. doi :10.1038/nbt0804-1035. PMID 15286655. S2CID 205269887. 2006-09-03 のオリジナル(PDF)からアーカイブ。
- ^ シャピロ、リンダ、ジョージ・ストックマン (2001)。コンピュータビジョン。アッパーサドルリバー、ニュージャージー州:プレンティスホール。ISBN 978-0-13-030796-5。
- ^ アイデンベルガー、ホルスト (2011). 『メディアの基礎知識』アットプレス。ISBN 978-3-8423-7917-6。
