413 Views
September 25, 23
スライド概要
最適輸送による文章類似度計算 (Word Rotatorʼs Distance) 野中賢也
Word Rotatorʼs Distance: Decomposing Vectors Gives Better Representations - 文章間の類似度を最適輸送問題として扱う手法のうちの一つ - https://arxiv.org/abs/2004.15003v1 東北大の乾研出身の人が書いたみたい
文章間の類似度計算を解釈可能な形で行いたい。 - 発表では、文章のEmbeddingを使ってコサイン類似度が出せることを主張 - それだと、なぜ?その文章がChatGPTの出力に近いのかを説明できていない。 - 「あなたChatGPTからコピペしてきたでしょ!」が根拠を持って主張できない。 - 解釈可能性みたいなのが必要 - →単語、トークンレベルでの分析が有用?
文章に含まれている単語間のアライメントしやすさから類似度評価 - 今回読んできた論文の著者(横井さん)の発表 - https://speakerdeck.com/eumesy/chatgpt-and-intro-of-ot-for-nlp?slide=26
論文の内容
解きたい課題 = Semantic Textual Similarity(STS)タスク - 文章間の類似度を定量化する課題 - 例) - ①ソファに座った二人の男の子がビデオゲームをしている ②二人の男の子がビデオゲームをしている。 - ほぼ同じ内容を持った文章といえ類似度は高い ①女性がバイオリンを弾いている ②若い女の人がギターを聞いている - 同じ内容とは言えないもののトピックとしては同じ
解きたい課題 = Semantic Textual Similarity(STS)タスク - モデルの評価方法 - 文章対(s̲1, sʼ̲1), … (s̲n, sʼ̲n)に対して、大抵0~5ぐらいのスコアが降ってある ピアソンの相関係数などを計算して、モデルの良さを計る
STSタスクに対する解決アプローチ① - 文章ベクトルを得て、文章同士の類似度をコサイン類似度など用いて計算する。 - LLMの文章ベクトルをそのまま使用する 学習された単語ベクトルの和として文章ベクトルを表現して、それを使う - 著者はAdditive Compositionという名前をつけている。
STSタスクに対する解決アプローチ② - 文章を単語(トークン)に分解して、単語のレベルで対応づけを行った結果の距離 - 単語レベルで文章の類似度を測るナイーブな方法=距離の行列の総和
STSタスクに対する解決アプローチ② - 行列の要素すべての和をそのままとるのはスマートではなさそう。。。 - 例) - 女性がバイオリンを弾いている - 若い女の人がギターを聞いている - この文章の類似度を測るときに、「女性、若い女の人」と「バイオリン、ギター」の組み 合わせで計算するのが妥当 - 行列の総和をとってしまうと、「女性、バイオリン」「ギター、若い女の人」の組み合わ せも上と同様に計算してしまう。 - 意味の近い単語同士の総和計算時の重みを大きくして、計算したい。
間話休題。Earth Moverʼs Distance(EMD) - 複数拠点から複数拠点に荷物を送るときの最適化問題 - どの拠点からどの拠点にどれぐらいの荷物を送るのがコストが最小になるのか?
間話休題。Earth Moverʼs Distance(EMD) - 最適化されたT̲ijはどんなものか? - 拠点iから拠点jへの距離が遠い場合 => T̲ijは小さくなる - 遠い拠点に大荷物を運ぶのはコストがデカすぎる 拠点iから拠点jへの距離が近い場合 => T̲ijは大きくなる - 近い拠点に大荷物を運べば遠くに運ばなくて済む
Word Moverʼs Distance inspired by EMD - 拠点iから拠点jへの距離が近い場合 => T̲ijは大きくなる - 近い拠点に大荷物を運べば遠くに運ばなくて済む ↓(拠点⇆単語, T̲ijを距離行列の総和計算時の重みと解釈) - 意味の近い単語同士の総和計算時の重みを大きくして計算できる。
Word Moverʼs Distance inspired by EMD - 文章sの単語から文章sʼの単語への輸送コストとして、文章間の類似度を定義
しかし Word Moverʼs Distanceは、 アプローチ①の文章ベクトルの類似度に負けることが多いらしい
著者らは、 敗北の原因をWord Moverʼs Distanceが 単語の意味と重要性をごちゃまぜにしているからだと推察
前提①:単語ベクトルのノルムはその単語の重要性を表現する - Table1: 文の意味を支配している単語のノルムの方が大きくなっている。 - Table2: Additive Compoditionにおいて、正規化してノルムの大きさの影響の大きさを 排除するとSTSタスクの精度は下がる
前提②:単語ベクトルの方向は、単語の意味を表現する - 単語のSTSタスクでは、コサイン類似度で測った方がgold scoreとの相関係数が高い。 - L2, 内積 = ノルムの影響がある - コサイン類似度 = ノルムの影響なし(純粋に方向だけ)
WMDの定式化を振り返ると意味と重要性がごちゃまぜになっている - ① 単語間の重要性の差を考慮にいれていない。 - ②ユークリッド距離を用いることで、ノルム(重要性)と方向性(意味)を混同して扱っている - ʻnoodleʼ, ʻsnackʼ, ʻphoʼの関係で、直感的には、noodleとphoが意味的に近い。 - (文の意味を支配しやすい)phoのノルムが大きい状態でユークリッド距離を用いると、そ の文noodleと距離が離れて、snackの方が意味的に近いと判定してしまうの図
WMDの定式化をアップデートしたWord Rotatorʼs Distance
WRDは、WMDやAdditive Compositionよりもベンチマークで良い精度を出す - 単語埋め込みモデルとしては、GloveとfastTextを使用 - 以下を比較 - Additive Composition - WMDなどの他のアライメント手法 - WRD - VC(Vector Converter)は、単語ベクトルの前処理(省略)