論文読みメモ: Named Entity Recognition without Labelled Data: A Weak Supervision Approach(その2)(終)

以下の論文を読みます。

Pierre Lison, Jeremy Barnes, Aliaksandr Hubin, Samia Touileb. Named Entity Recognition without Labelled Data: A Weak Supervision Approach. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 2020. Named Entity Recognition without Labelled Data: A Weak Supervision Approach - ACL Anthology
まとめ
  • 「固有表現抽出を学習したいが対象ドメインのラベル付きデータがなく」、「対象ドメイン向けではない『弱い』ラベリング関数ならいくつか用意できる」というときに、弱いラベリングたちをいい感じに統合する(→ その統合したラベリングで改めて何らかのモデルを学習する)手法を提案した。以下の手順による。
    • 【仮定1】個々の「弱い」ラベリングは、対象ドメインに即した真のラベルではないが、「そのトークンの真のラベルがAのとき、弱いラベリングはBかCになりやすい(=真のラベルと個々のラベリング関数に依存するディリクレ分布にしたがう)」というような傾向があると仮定する。
    • 【仮定2】トークン毎の真のラベルはマルコフ性をもつと仮定する。
    • これらの仮定の下に HMM を学習し、EMアルゴリズムのような方法で「各トークンの真のラベル」、「ディリクレ分布及び遷移パラメータ」を最適化する。
  • 提案手法で改めて学習したモデルは、Reuters & Bloomberg ニュース記事からの固有表現抽出において、ドメイン外の最も信頼できるモデルや、個々のラベリング関数の多数決などの素朴なモデルの組み合わせの性能を上回った。
所感
  • 「個々の弱いラベリングは真のラベリングから確率的に生成されていると考えて、得意分野が異なるラベリングたちを統合する」というのは可搬性があるアイデアのように思われる。特に固有表現抽出のような自然言語処理タスクの場合は「出力されるラベル系列に制約がある」点で、HMM で真のラベルを推定する意義があると思われる。
  • ただし、弱いラベリングたちがいい感じに互いの欠点を補うように揃っている必要があるはずである。手持ちの弱いラベリングたちの揃いっぷりにかなり依存した手法であるようには思われる。
※ キャラクターは架空のものです。私の誤りは私に帰属します。お気付きの点がありましたらコメントでご指摘ください。
前回: その1
f:id:cookie-box:20200531131544p:plain:w60

前回まででわかったことは以下でしょうか。(?)のところはまだわかっていません。

  • 固有表現抽出を学習したいが対象ドメインのラベル付きデータがない。
    • 多少でもラベル付きデータがあれば転移学習できるがないので転移学習すらできない。
  • 対象ドメイン向けではない「弱い」ラベリング関数ならいくつか用意できる。
    • Out-of-domain NER models ― 他の様々なドメインで学習したNERモデル
    • Gazetteers ― 辞書(ウィキペディア、会社名辞書、地名辞書、…)
    • Heuristic functions ― 手作りの抽出ルール(時刻、日付、金額、…)
    • Document-level relations ― 文書レベルの制約(?)
  • なのでこれらのラベリングをいい感じに統合して(?)そのラベルを学習する(?)。

f:id:cookie-box:20200531131606p:plain:w60

肝心なことが何もわかっていない…。

f:id:cookie-box:20200531131544p:plain:w60

なので今回は3節の「Approach」から読もうと思うんですが、冒頭で、今回のラベルの統合はクラウドソーシングしたアノテータさんのラベルを統合するのとは以下の2点において毛色が違うといっていますね。

  • 1点目は個々のラベリングに「地名辞書」などといった特定の固有表現に特化したラベリングがある点です。クラウドソーシングの個々のアノテータさんはラベリングを誤ることはあっても特定のラベルしか付けてくれないということはないのでそこは違いますね。
  • 2点目として個々のラベリングが予測確率分布であることを許容しているようですね。クラウドソーシングのアノテータさんに依頼する場合は「人名: 25%、地名: 60%、会社名: 15%」などといったラベリングはないでしょうからね。アノテータさん的に一番正しいと思う固有表現を考えて選んでもらうことになるでしょう。しかし、今回は個々のラベリングはニューラルネットモデルなんかの場合もあります。確率最大なラベルを取ることもできるでしょうが、予測確率分布のまま扱うということですね。
今回は Appendix A にある 52 のラベリング関数によるラベリングを個々の弱いラベリングとするということです。3.1 節に「Out-of-domain NER models」「Gazetteers」「Heuristic functions」「Document-level relations」の説明がありますが、最初の3つはどんなラベリングか字面から何となくわかるのでとばしましょう。最後の「Document-level relations」というのがわかりません。その箇所を読みましょう。何々、例えば「Komatsu というのは日本の街かもしれないし会社かもしれない」…これ、私たちは日本の人間なのですぐに石川県小松市と建機のコマツを思い当たりますが、日本国外の方にとっていい例なんでしょうかね…まあ私は構わないので構いませんが。なので、Komatsu が含まれる文書が街の話をしているのか会社の話をしているのか考慮した方がいいわけです。そこで、スパン e が固有表現ラベル l である確率を以下であると考えるようです。
 \displaystyle P_{{\rm doc\,majority}(e)}(l)=\frac{\sum_{z \in Z_e} P_{{\rm label}(z)}(l)}{|Z_e|}
|Z_e| はその文書中のスパン e の登場回数、P_{{\rm label}(z)}(l) は登場したうち z の箇所で固有表現ラベル l である確率がいくらだったか、ですね。要は文書中の同じ文字列のラベルはすべて平均に均すんですね。つまり、これは単体でラベリング関数になるのではなく他のラベリング関数の結果にかぶせて用いる感じですね。また、これとは別に、「固有表現は文書中で最初に言及されるときはフルネームで表記され、2回目以降に言及されるときは略称になっていることが多い」ことを利用して先に検出された固有表現の部分文字列があったら先に検出された固有表現の予測確率分布をコピーするなどといったこともやったようです。

f:id:cookie-box:20200531131606p:plain:w60

文書単位で整合性を取るってことだよね。でも、他のラベリング関数とどう組み合わせたのかな。例えば「地名辞書」みたいに「地名」というラベルしか付けられないラベリング関数には適用する意味がないよね。文書レベルのポスト処理をしようとしまいと「地名」ってラベルしか付いてないわけだから。組み合わせ方はこの辺を読んでもよくわからないな…。

f:id:cookie-box:20200531131544p:plain:w60

まあ一旦置いておいて、色々なラベリングが用意できたとして、どう統合するのかを読みましょう。3.2 節によると、S 種類のラベル \{l_1, l_2, \cdots, l_S\}J 個のラベリング関数 \{\lambda_1, \lambda_2, \cdots, \lambda_J\} があるとします。個々のトークi は隠れ状態 s_i \in \{1, 2, \cdots, S\} をもちます。ラベリング関数 jトークi をどんな固有表現であると予測するかの確率分布 P_{ij} はパラメータ  \alpha_{j}^{s_i} をもつディリクレ分布にしたがっているとします。そして、以下のような隠れマルコフモデルを考えるということです。

  • P_{ij} | \alpha_{j}^{s_i} \sim {\rm Dirichlet}(\alpha_{j}^{s_i})
  • \displaystyle p(s_i | s_{i-1}) = \frac{{\rm exp}(\omega_{s_i, s_{i-1}})}{1 + {\rm exp}(\omega_{s_i, s_{i-1}})}
\omega_{s_i, s_{i-1}}s_i から s_{i-1} への遷移確率を制御するパラメータということですが…はて…?

f:id:cookie-box:20200531131606p:plain:w60

ディリクレ分布…いわば、「サイコロを生成するサイコロ」だね。どのラベリング関数も、真のラベルが s であるトークンに対してサイコロ \alpha_{j}^{s} を振った結果を出すと考えているんだね。そして、真のラベルは1つ前のトークンの真のラベルに縛られていると。 \omega_{s_i, s_{i-1}} によってね。なるほど、部長が最初にかいてくれた前回のあらすじに続けるならこんなストーリーだね。

  • 固有表現抽出を学習したいが対象ドメインのラベル付きデータがない。
  • 対象ドメイン向けではない「弱い」ラベリング関数ならいくつか用意できる。
  • 【仮定1】個々の「弱い」ラベリング関数の結果は、対象ドメインに即した真のラベルではないが、「そのトークンの真のラベルがAのとき、弱いラベルはBかCになりやすい(=真のラベルと個々のラベリング関数に依存するディリクレ分布にしたがう)」という傾向があると仮定する。
  • 【仮定2】また、真のラベルはマルコフ性をもつと仮定する。
  • これらを仮定すれば、EMアルゴリズムのような方法で「各トークンの真のラベル」、「ディリクレ分布及び遷移パラメータ」を最適化できる。得られた「各トークンの真のラベル」(の分布)を正解ラベルに改めて何らかのモデルを学習する。
ディリクレ分布が真のラベルとラベリング関数にのみ依存するというのは大雑把な気がするけど(本当はコンテクストにも依存する気がするけど)、ファーストステップとしては妥当な仮定なのかな。

f:id:cookie-box:20200531131544p:plain:w60

何ですかその上から目線は…というか HMM の最適化までまだ読んでいませんよ。学習対象は以下ですね。

  • |S| \times |S| 個の遷移パラメータ。
  • |S| \times |J| 個のサイコロ(どのサイコロも |S| 個の目が出る)。
これらは EM アルゴリズムの亜種である Baum-Welch アルゴリズムで学習されるとありますね。…EMアルゴリズムは隠れ変数があるときの最適化手法ですが、ここでの隠れ変数は…いや、そもそも「隠れ」マルコフモデルなのですから、真のラベルが隠れていますね。「真のラベル」と「遷移パラメータとサイコロ」を同じステップで最適化することはできないので、こちらを固定してあちらを最適化して、あちらを固定してこちらを最適化して…というステップを繰り返すということですね。収束を早くするためにある制約を課しているという話もありますが…とばしましょう。次に初期値をどうするかの話があります。
  • 隠れ変数の事前分布は、「最も信頼できるラベリング関数のカウントに基づいたディリクレ分布」にするということですが、カウントというのは同じ文字列が何回固有表現に判定されそのラベルの内訳がどうなっているかに基づいてディリクレ分布にするということでしょうか?
  • 遷移パラメータも最も信頼できるラベリング関数に基づいて初期化するようですね。
  • サイコロの初期値は…個々のラベリング関数 j のラベル k に関する感度 r_{jk} と精度 \rho_{jk} を見積もって以下のようにするとのことですが…何ですかこれは…?
  •  \displaystyle \alpha_{jk}^{s_i} \propto \begin{cases} r_{jk} \quad {\rm if} \; s_i = k \\ (1 - r_{s_i k})(1 - \rho_{jk}) \delta_k \quad {\rm if} \; s_i \neq k\end{cases}

f:id:cookie-box:20200531131606p:plain:w60

その式を日本語訳しただけだけど、あるラベリング関数が「地名」であるトークンにどんな確率分布にしたがったラベルを割り当てるかは、以下のように決めるということだね。

  • 正しく「地名」と判定する確率は、そのラベリング関数の「地名」への感度に比例するとする。
  • 誤って「人名」と判定する確率は、(1 - そのラベリング関数の「人名」への感度)×(1 - そのラベリング関数の「地名」への精度)に比例するとする。
地名をよく検出するラベリング関数だったら、「地名」に対して「地名」と判定してくれる確率は高いだろう、というのは素朴な期待なんじゃないかな。ただ、この精度と感度は何らかの方法で見積もらないといけないんだよね…どうやるのかな…。

f:id:cookie-box:20200531131544p:plain:w60

まあ何にせよ HMM を学習して、隠れ変数たる真のラベルを手に入れるわけですね(確率分布として手に入れるわけですが)。そして改めて系列モデルでこの真のラベルを学習します。真のラベルは確率分布のまま扱って、これとのクロスエントロピーを最小化するように学習するとのことです。4節以降は端折ると、結局ラベルが多い Reuters & Bloomberg データでは提案手法によるNERがよかったのですかね(Table 2)。

おわり