数値形式を選ぶ
一次元のJSON数値配列、またはコンマ・空白・改行区切りの十進数を受け付けます。例は同じ方向で長さだけが異なるため、三つの指標の違いを試せます。
AI・LLM開発
一次元の数値配列をAとBに入力します。3つの指標を同時に確認でき、正規化しても元の入力は残ります。
2つのベクトルを入力すると指標と計算過程を表示します。
ベクトルはこのブラウザー内だけで処理します。アップロードやモデルへの送信は行いません。
正規化するのは計算用のコピーだけです。入力したベクトルは変わりません。
2つのベクトルを入力してください。
検索結果のスコアを調べていて、方向は同じなのに距離だけが大きいことがあります。類似度・距離の計算では、埋め込みの数値をそのまま比べ、原因が向きか長さかを確かめられます。
コサイン類似度だけでなく、内積とユークリッド距離も並べて確認します。文章を埋め込みに変換する機能ではなく、すでにある数値ベクトルを調べる道具です。
一つのスコアだけでは見えない長さの影響を確認できます。
類似度・距離の計算で一方のベクトルだけを拡大すると、コサイン類似度は変わらず、内積とユークリッド距離は変わります。方向と間隔を混同しないための例です。
L2正規化は計算用コピーにだけ適用されます。元のノルムを結果に残したまま、単位ベクトルにしたときの内積と距離を見比べられます。
一次元のJSON数値配列、またはコンマ・空白・改行区切りの十進数を受け付けます。例は同じ方向で長さだけが異なるため、三つの指標の違いを試せます。
自動計算は入力が止まってから350ミリ秒後に実行します。オフならCtrl/Cmd+Enterで実行できます。ベクトルの正規化は初期状態でオフです。
A/Bの次元数と元のノルムを先に確認してください。成分の積と差の二乗は50件ずつ表示し、コピーとダウンロードには全成分が入ります。
内積を両方のノルムで割るため、同じ向きなら長さが違っても1になります。ゼロベクトルには向きがなく、値は未定義です。
対応する成分の積を足します。両方を単位ベクトルにすればコサイン類似度と一致し、元のままなら長さの影響を受けます。
成分ごとの差を二乗して足し、平方根を取ります。方向を保ったまま一方を伸ばしても、終点間の距離は変わります。
一次元のJSON数値配列か、コンマ・空白・改行で区切った十進数を入力できます。類似度・距離の計算では、各分量が有限の数値かどうかも検査します。
コサイン類似度は向き、ユークリッド距離は終点の隔たりを測ります。片方を同じ向きに伸ばすとコサインは変わらず、距離は変わります。
できません。内積は対応する座標同士を掛けるため、次元数が異なれば比較を拒否します。足りない値を暗黙にゼロで埋めません。
ゼロベクトルには方向がなく、ノルムが0なのでコサインの分母も0になります。内積と距離は正規化をオフにした場合に限り表示します。
はい。両方のノルムが1ならコサインの分母が1となり、内積とコサイン類似度は一致します。
ほかに疑問がありますか?