Slide 1

Slide 1 text

紹介者:凌 志棟(小町研 B4) 2021/7/8 @論文紹介

Slide 2

Slide 2 text

Overview ● タスク:ある文の中の対象単語が一般的用法かそうでないかを検出する ● 本研究のBasic idea:  非一般的用法で使用されている単語は、その単語が一般的用法で使用されている場合と周辺文脈が異 なるであろうことに着目 ○ 判断基準となる一般的な用法が多く含まれる訓練データにおける単語の用法と着目している文中での用法の差異を計算 ○ 差異が大きい場合  → 非一般的用法 ○ コーパス内の大量な単語にラベルをつけるのはコストが大きいから、教師なし手法を使用する 2

Slide 3

Slide 3 text

Introduction ● Twitterに代表されるソーシャルメディアでは、辞書に掲載されていない意味で使用されている 語がしばしば出現する ● 文(1)の「鯖」は魚の鯖  文(2)の「鯖」はコンピュータサーバ ● 「鯖」という語が「サーバ」と関連した意味を持っているからではなく、読み方が似ているため使 用されている ● このような辞書にない用法を一般的ではない用法 (Non-standard usage)とよぶ ● 機械翻訳では、辞書に掲載されていない用法で使用されている単語の理解が難しいから、翻 訳に支障が出る 3

Slide 4

Slide 4 text

Related Work ● ID交換掲示板における書き込み有害性評価に向けた隠語概念化手法の提案 4

Slide 5

Slide 5 text

Related Work ● 問題点 ○ 必要な事前情報が多い ○ 短縮・意味に該当する表現が多すぎて、辞書による単語のみでは対応しきれない 5

Slide 6

Slide 6 text

Contribution ● ドメインに関する事前知識がなくても、単語が一般的ではない用法で使用されてい ることを検出する手法を提案 ● 教師なし手法を使用したため、大量のデータに対するアノテーションは不要 6

Slide 7

Slide 7 text

研究の流れ 7 評価データの作成  (Data) 単語の一般的ではない用法の検出  (Methodology)

Slide 8

Slide 8 text

Data  ● 評価データの作成 ○ 一般的でない用法が存在する単語を対象として、文中で対象単語が一般的な用法かそうでないか をアノテートしたデータセットを作成 ○ 対象単語選定の条件 ■ コンピュータ、企業・サービス名、ネットスラングのドメインにおいて一般的ではない用法として 使用される場合があることが分かっている語 ■ Web上に一般的ではない用法の説明が存在している語 ■ 均衡コーパスにおける出現頻度が 100以上の語 ○ コンピュータ分野 10語、企業・サービス名  10語、ネットスラング 20語、合計40語 ○ 選定した単語が含まれるツイートに対して形態素解析し、選定した単語が一般名詞であると解析さ れたツイートを無作為に 100ツイート選択() ■ ソース:Twitter 2016.1.1 ~2016.1.31に投稿されたツイート ■ 理由:Twitterにおいて、ある語が一般的な用法として使われる場合とそうでない場合が 混在していると考えたため 8

Slide 9

Slide 9 text

Data 9

Slide 10

Slide 10 text

Data ● 選択したツイートにおいて、選定した単語の用法が一般的かどうか、固有表現の一 部かどうかという判断を2人のアノテータが行う ○ 少なくとも一人のアノテータが対象語の用法を決定できないと判断したツイートを除外( 96ツイート) ■ 例:(* ́ 茸 ` *)の中の茸のような、顔文字の一部となっている事例 ○ 少なくとも一人のアノテータが対象語が固有表現と判断したツイートを除外 (772ツイート) ■ 例:「利尻島(りしりとう)」の中の尻のような事例 ○ 残り3132ツイートの94.9%が、2人のアノテータに同じラベルを付けられた (2973ツイート) ■ アノテーションが一致したツイートを最終的なデータセット ■ アノテーションの割合によってさらに分類 ● 7割以上一般的用法としてアノテーションされた単語を一般的ラベル優勢 ● 7割以上非一般的用法としてアノテーションされた単語を非一般的ラベル優勢 ● それ以外は偏りなし 10

Slide 11

Slide 11 text

Data 11

Slide 12

Slide 12 text

Methodology 12 単語の一般的ではない用法の検出  (Methodology) Skip-gram with Negative Sampling (SGNS)で単語の分 散表現を学習 非一般的用法を検出

Slide 13

Slide 13 text

Methodology ● Skip-gram ○ 単語列 {w 1 , w 2 … w T }を訓練データ ○ ターゲット語w t  文脈語w k ○ 入力:ターゲット語  w t  のone-hotベクトル x t   ○ 出力:位置 j に各単語が出現する確率を持つベクトル y j ○ 単語 w t の周辺に単語 w k 出現する確率 と表される。 v wt IN はw t  の入力ベクトル、v wt OUT はw k の出力ベクトル v wt IN・v wt OUT はドット積 13 x t   入力単語ベク トル行列vIN 出力単語ベク トル行列 vOUT y c y 2 y 1

Slide 14

Slide 14 text

Methodology ● Skip-gramは学習時における計算コストが非常に高い ● コストを削減するため、Skip-gram with Negative Sampling(SGNS)を提案 ○ イテレーションごとにすべての出力ベクトルを更新しない ○ 出力単語として正しい語(正例 ,positive sampling)を一つ選び、間違った語(負例 ,negative sampling)をいくつかサンプル 14

Slide 15

Slide 15 text

Methodology ● Skip-gram with Negative Sampling (SGNS)で学習コーパスから単語の共起情報 を学習 ○ 目的関数 ○ w t とw t の近くに出現した単語 w k について、logσ( v wt IN ・v wk OUT)の値が大きくなるように学習 ○ 単語類似度を測るには vINが使われているが、 vOUTを使うことによって、学習した際の単語の共起情 報も考慮するため、本研究は σ( v wt IN ・v wk OUT) を活用する v wt IN   入力ベクトル σ(x) シグモイド関数 v wk OUT   出力ベクトル w t ターゲット語 w k   正例の文脈語 w n 負例の文脈語 15 logσ( v wt IN ・v wk OUT) + Σ wn∊Wneg logσ( v wt IN ・― v wn OUT )

Slide 16

Slide 16 text

Methodology ● 一般性スコア:着目単語とその周辺単語との類似度の加重平均 ○ スコアが大きい⇒一般的用法 スコアが小さい⇒非一般的用法 ○ αは任意の値でもよいが、本研究は着目単語と距離の近い単語に大きい重みを付ける ○ α wj =m + 1 - d wj (m: 窓幅,d: ターゲット語との距離) ■ αは正の整数 ■ 距離が遠いほど重みが小さい⇒ Decaying weight w t :ターゲット語 w c :文脈語の集合 α wj :wjの重み σ(x) :シグモイド関数 16

Slide 17

Slide 17 text

Methodology 17

Slide 18

Slide 18 text

Experiment ● 提案手法に3つの特徴: ○ 単語ベクトルを学習する際に均衡コーパスを使用する点 ○ スコアを計算する際に vINだけでなくvOUTも使用する点 ○ スコアの計算にdecaying weightを採用する点 ● 比較実験で有用性を検証 18 4種類の異なる性 質のコーパスを用 意し、どれが本タ スクにより適して いるを調査 SGNS IN-OUT SGNS IN-IN SVD Decaying weight Uniform weight

Slide 19

Slide 19 text

Experiment 19

Slide 20

Slide 20 text

Experiment ● SGNS IN-OUT ● SGNS IN-IN ● SVD ○ 相互情報量を用いて学習した単語ベクトルに対して、特異値分解( SVD)によって次元削減を行った 手法 ○ 一般性スコアの計算には余弦類似度を用いた 20

Slide 21

Slide 21 text

Experiment ● Decaying weight α wj =m + 1 - d wj ● Uniform weight α wj = 1 21

Slide 22

Slide 22 text

Experiment ● 実験設定 ○ 窓幅 m=5 ○ 次元 300 ○ コーパス内出現頻度が5回未満の単語をに置き換え ○ negative sampling数 10 ● 評価 ○ テストセットの各事例で計算された一般性スコアを昇順にソート ○ スコアが閾値より下回った事例を非一般的用法として分類 ○ AUCで評価 22

Slide 23

Slide 23 text

Experiment ● ROC曲線 ○ 各データに対してスコアを定めて,ある閾値を上回るか下回るかで二値に識別するタスクにおいて ,閾値を変化させることで 「FPR」と「TPR」がどのように変化していくかを表す ○ TPR:モデルが正と判断して正解だった割合 ○ FPR:モデルが正と判断して不正解だった割合 ● AUC:2値分類の評価指標としてよく使われる ○ ROC曲線したの面積 ○ AUCは大きいほど性能が良い 23

Slide 24

Slide 24 text

Experiment ● 結果 24

Slide 25

Slide 25 text

Analysis 多くの人が一般的ではない用法として扱うような単語の検出はうまくいく 少数の人のみが使う用法を持つ単語について誤検出が多い 25 ● 誤り分析 7割以上一般的用法としてアノテー ションされた単語を一般的ラベル優 勢 7割以上非一般的用法としてアノ テーションされた単語を非一般的ラ ベル優勢 それ以外は偏りなし

Slide 26

Slide 26 text

Analysis ● 提案手法によって検出できた一般的ではない用法の例 1. 2. 3. 4. 26 ● 提案手法によって検出できなかった一般的ではない用法の例 5. 6. 7. 8.

Slide 27

Slide 27 text

Analysis ● 混同行列による誤りの傾向分析 27 見逃し 誤検出

Slide 28

Slide 28 text

Conclusion 1. 均衡コーパスは重要 2. 入力ベクトルと出力ベクトル両方使用したほうが一番高いAUCを得られる 3. Decaying Weightsが著しい影響を与えない 28