Top Banner
1024MTG 山山山山山 M1 山山山山
67
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Mtg121024

1024MTG山口研究室 M1

香川宏介

Page 2: Mtg121024

1. 論文紹介

2. 定義文からの CI 関係抽出

Page 3: Mtg121024

1. 論文紹介

Page 4: Mtg121024

ISWC2011 Best-In-Use Paper

Leveraging Community-built

Knowledge for Type Coercion in QA

by IBM Research

Page 5: Mtg121024

概要

Page 6: Mtg121024

Answer Type を決定

これまでの手法① 質問文から回答タイプを決定② 文書群から回答タイプ制約下で候補

を絞る

Page 7: Mtg121024

Joepardy! のような多分野からの出題の場合、回答タイプがどうなり、そのインスタンスがどれくらいあるのか、容易にはわからない。そこで、正しい回答タイプを決定しようというプロセスをとるのではなく、回答タイプ情報を用いずに解答候補を取得しておいて、回答タイプにふさわしいかを判定する

 回答タイプをあくまで解候補のスコアの一部として利用するアプローチ

Page 8: Mtg121024

従来型  Type and Generate

DB

コーパス

質問解析 回答タイプの決定

分類器

検索

WEBテキストWEBテキストWEBテキスト

出力 スコアリング

解候補解候補

解候補解

Page 9: Mtg121024

WATSON型 Generate and Type

DB

コーパス

質問解析 回答タイプ候補

検索

WEBテキストWEBテキストWEBテキスト

出力 スコアリング

解候補解候補

解候補

TyCor

解候補解候補

解候補

回答タイプ情報はあくまで解候補に与えるスコア情報にとどめておく

Page 10: Mtg121024

WATSONの

回答プロセス

Page 11: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

Page 12: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

回答対象語 (Lexical Answer Type) が何であ

るか ( 表層文字列レベル )を構文木などから判断し、

抽出する

Page 13: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

クエリを生成し、コーパスや DB から解答候補を

大量に獲得

回答対象語 (Lexical Answer Type) が何であ

るか ( 表層文字列レベル )を構文木などから判断し、

抽出する

Page 14: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

クエリを生成し、コーパスや DB から解答候補を

大量に獲得

本論文で触れているところ解答候補にスコアをつける

n-gram, skip-bigram,source-reliability

など多次元によってスコアリング

その指標の一つとして回答タイプ情報がある

回答対象語 (Lexical Answer Type) が何であ

るか ( 表層文字列レベル )を構文木などから判断し、

抽出する

Page 15: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

クエリを生成し、コーパスや DB から解答候補を

大量に獲得

本論文で触れているところ解答候補にスコアをつける

n-gram, skip-bigram,source-reliability

など多次元によってスコアリング

その指標の一つとして回答タイプ情報がある

スコアに基づいて解答を得る確信度を計算し、クイズに答えるか答えないかの

戦略を練る

回答対象語 (Lexical Answer Type) が何であ

るか ( 表層文字列レベル )を構文木などから判断し、

抽出する

Page 16: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

クエリを生成し、コーパスや DB から解答候補を

大量に獲得

本論文で触れているところ解答候補にスコアをつける

n-gram, skip-bigram,source-reliability

など多次元によってスコアリング

その指標の一つとして回答タイプ情報がある

回答対象語 (Lexical Answer Type) が何であ

るか ( 表層文字列レベル )を構文木などから判断し、

抽出する

スコアに基づいて解答を得る確信度を計算し、クイズに答えるか答えないかの

戦略を練る

Page 17: Mtg121024

Watson の DeepQA ~ 4 つ のステップ~

Question Analysis↓

Hypothesis Generation↓

Hypothesis and Evidence Scoring↓

Candidate Ranking

Question Analysisのステップで得られた語を手がかりにしてクエリ

を生成し、コーパスや DBから解答候補を大量に獲

本論文で触れているところ解答候補にスコアをつける

n-gram, skip-bigram,source-reliability

など多次元によってスコアリング

その指標の一つとして回答タイプ情報がある

回答対象語 (Lexical Answer Type) が何であ

るか ( 表層文字列レベル )を構文木などから判断し、

抽出する

スコアに基づいて解答を得る確信度を計算し、クイズに答えるか答えないかの

戦略を練る

この論文で紹介されている”TyCor” Component

Page 18: Mtg121024

Hypothesis Generation において生成された解答候補 ( 例:宮崎駿 ) と

Question Analysis において 生成された回答対象語 ( 例:監督 ) の

それぞれの type の一致度を測ってスコアを出力

“TyCor”の概要

Page 19: Mtg121024

EDM(Entity Disambiguation & Matching)→ 解答候補群 (candidate answers) を Wikipedia の URI に結びつける

TR(Type Retrieval)→EDM によって得られた概念を YAGO のクラスに結び付ける(解答候補群それぞれの親を見つける)

PDM(Predicate Disambiguation & Matching)→ 回答対象語 (LAT) を YAGO のクラスに結びつける

TA(Type Alignment)→candidate answers の type と LAT の type の一致度を測り、

    TyCor Component におけるスコアとして出力

Type Coercion(TyCor)~4つのステップ~

Page 20: Mtg121024

EDM(Entity Disambiguation & Matching)→ 解答候補群 (candidate answers) を Wikipedia の URI に結びつける

TR(Type Retrieval)→EDM によって得られた概念を YAGO のクラスに結び付ける(解答候補群それぞれの親を見つける)

PDM(Predicate Disambiguation & Matching)→ 回答対象語 (LAT) を YAGO のクラスに結びつける

TA(Type Alignment)→candidate answers の type と LAT の type の一致度を測る

Type Coercion(TyCor)~4つのステップ~

Page 21: Mtg121024

input: 解答候補 (candidate answer)output: Wikipedia のタイトル (URI)  Wikipedia の記事名 , リダイレクト , アンカーリ

ンク , 曖昧さ回避のページをランク付けの基準として使う

・解答候補を単語→概念へマッピングする・ 6 つの指標によってランク付けする・ Optional Parameter として Popularity を用いる

(ページランクや、記事名の IDF を指標とする)

EDM step

Page 22: Mtg121024

input: 解答候補 (candidate answer)output: Wikipedia のタイトル (URI)  Wikipedia の記事名 , リダイレクト , アンカーリ

ンク , 曖昧さ回避のページをランク付けの基準として使う

・解答候補を単語→概念へマッピングする・ 6 つの指標によってランク付けする・ Optional Parameter として Popularity を用いる

(ページランクや、記事名の IDF を指標とする)

EDM stepDirect Contextual MatchTitle MatchRedirect MatchDisambiguation MatchAnchor-Link MatchDBPedia name properties

Page 23: Mtg121024

①Direct Contextual Match  Wikipedia の記事名をソースに解候補が生成さ

れている、もしくは他の Wikipedia のページからリンクされていればスコア 1.0

②Title Match   Wikipedia の記事名と解答候補語が完全一致し

ていればスコア 1.0 を与える③Redirect Match リダイレクトに ( 多少のノイズには目をつぶる )

に現われていればスコア 1.0

EDM step

Page 24: Mtg121024

④Disambiguation Match曖昧さ回避のページに現れていれば、1/(the number of disambiguations)

のスコアを与える⑤Anchor Link Match [[ 米国 | アメリカ合衆国 (URI)]] のように、 Wikipedia にはリンクの文字列と

URI のセットが多数ある。”米国”のリンクの文字列が与えられたときに、”アメリカ合衆国”へ結ばれている確率をスコアとして与える

EDM step

Page 25: Mtg121024

⑥DBpedia name properties  DBPedia には名前関連のプロパティが 100 以上あ

る。 名前、名称、愛称、姓、名・・・・など 解候補の文字列がこれらのトリプルの目的語になっ

ている場合、主語相当の URI が結び付けるべき概念なのではないか、という考え。

  S(URI)→P( 名称などのプロパティ )→O( 解候補の文字列 )

スコアは、 1/S になった URI の数

EDM step

Page 26: Mtg121024

input: EDM で得られた Wikipedia の URI( 解答候補 )

output: YAGO におけるクラスの URI

解答候補語は基本的には YAGO における極めてhighly-specific なクラスに紐づいている例 ) CompaniesEstablishedIn1898

  YAGO のクラス階層を、 WordNet のクラスが存在するレベルにまで上昇させる

TR step

Page 27: Mtg121024

input: Lexical Answer Type(LAT)output: YAGO におけるクラスの URIWikipedia の記事名 , リダイレクト , アンカーリ

ンク , 曖昧さ回避のページをランク付けの基準として使う

・ 4 つの指標によってランク付けする

PDM step

Page 28: Mtg121024

input: Lexical Answer Type(LAT)output: YAGO におけるクラスの URI( へ

Matching)Wikipedia の記事名 , リダイレクト , アンカーリ

ンク , 曖昧さ回避のページをランク付けの基準として使う

・ 4 つの指標によってランク付けする

PDM step

WordNet の sense rankDBPedia における Type PopularityDomain-Specific な Type Mapping条件付確率

Page 29: Mtg121024

①WordNet の sense rank

②DBPedia における Type Popularity DBPedia においてその概念がいくつの

instance を持つか

③Domain Specific な Type-mapping Jeopardy! では過去問を調べたところ、 star

が 75% の割合で「映画スター」を指し、「星」の意味では 25% 程度だった

PDM step

Page 30: Mtg121024

④条件付確率を使う。 A かつ B のタイプを持つインスタンス数 /A のタイプを持つインスタ

ンス数 この値が 0.5 を超えるなら、 B もタイプとして候補にする

例 )   LAT が”俳優”に属し、”俳優”のインスタンス数が 4万とする

 “俳優”と”歌手” 両方をタイプとして持つインスタンスが 2万以上あれば、”歌手”のタイプも候補として加える。

 一方、”俳優”と”大学教授”の両方をタイプとして持つインスタンスが 100 程度しかなければ、候補としては加わらない。

 これによってカバー率を上げている

PDM step

Page 31: Mtg121024

input: TR で得られた解答候補の type, PDM で得られた LAT の type

output: 両者の一致度を示すスコア

・ 6 つの指標によってランク付けする

TA step

Page 32: Mtg121024

input: TR で得られた解答候補の type, PDM で得られた LAT の type

output: 両者の一致度を示すスコア

・ 6 つの指標によってランク付けする

TA step

Equivalent/Sub Class Match Disjoint Match Sibling Match Super Class Match Statistical Relatedness Lowest Common Ancestor

Page 33: Mtg121024

①Equivalent/Sub Class Match  LAT と candidate answer の type が YAGO におい

て、 equivalent もしくは candidate answer の type が LATの type の subclass ならば、 score1.0 を与える

②Disjoint Match 逆に、 LAT と candidate answer の type が YAGO において

disjoint であれば、 score-1.0 を与える

③Sibling Match  LAT と instance が親クラスを共有していれば score0.5 を与

える、但し、上位過ぎるクラスで共有されている場合(depth<6) はこの限りではない

TA step

Page 34: Mtg121024

④Super Class Match  candidate answer の type が LAT の type より上位概念の場

合、 score0.3 を与える。これは直感的にはおかしいこと(基本的には解候補は LAT の下位概念であるはず)だが、 EDM やPDM の誤りを緩和するために経験則的に必要らしい

⑤Statistical Relatedness 閾値を設けてスコアを微調整する

⑥Lowest Common Ancestor  candidate answer と LAT の Lowest Common なクラスが YAGO において depth>6 の場合、スコア 0.25 を与える 

TA step

Page 35: Mtg121024

結果

Page 36: Mtg121024

回答タイプを決めて、それに合う条件で解を探すよりも回答タイプと、回答タイプ情報を用いないで生成された

大量の解候補をすり合わせて 1 つの指標程度で扱ったほうが、精度を維持したまま網羅性を高められる

Wikipedia の情報資源( リンク , 曖昧さ回避 , リダイレクト )がスコアリングに有効に働くクラス階層としては depth=6 付近が経験則的に有効

まとめ

Page 37: Mtg121024

2.Wikipedia 定義文からの C-I 関係抽出

Page 38: Mtg121024

定義文からの C-I関係抽出

“ 記事名” + ( ・・・ ) とは、 ( ・・・・ ) + ” 上位概念” + である。

Page 39: Mtg121024

インスタンス収集は一覧ページから 記事名になっていない語も収集できる

is-a 関係について InfoBox テンプレートの上位・下位関係を利用 記事内見出し語名の上位・下位構造を利用 カテゴリ名・記事内見出し語名の文字列一致度を利

C-I関係の抽出~これまでの成果~

Page 40: Mtg121024

現在のWikiOntにおけるC-I/Is-Aのイメージ

高村直樹

東京都出身の人物 (自転車競技 ) 1~2 程度の弁別属性を含む語が直属のクラスとなっている。粒度として

はかなり細かい。

山宮正

市川雅敏

東京都出身の人物

人物

Page 41: Mtg121024

現在のWikiOntにおけるC-I/Is-Aのイメージ

高村直樹

東京都出身の人物 (自転車競技 ) 1~2 程度の弁別属性を含む語が直属のクラスとなっている。粒度として

はかなり細かい。

山宮正

市川雅敏

東京都出身の人物

人物

X の Y(Z)型が非常に多い

Page 42: Mtg121024

新たに増やせそうな関係

東京都出身の人物 (自転車競技 )

東京都出身の人物

人物

自転車競技選手

高村直樹

山宮正

市川雅敏

竹谷賢二

定義文から新たに抽出でき

る C-I 関係

Page 43: Mtg121024

理想形?

高村直樹

山宮正

市川雅敏

東京都出身の人物

人物

自転車競技選手

竹谷賢二

東京都出身の自転車競技選手

スポーツ選手

Page 44: Mtg121024

現状のデータ記事として存在

記事が存在しない

一覧ページに存在する語 約 16万語 約 14万語 約 30万語

一覧ページに存在しない語

約 61万語 - -

約 77万語 - -

~今までのアプローチ~一覧ページの箇条書き項目を収集Infobox テンプレート名を収集

Page 45: Mtg121024

現状のデータ記事として存在

記事が存在しない

一覧ページに存在する語 約 16万語 約 14万語 約 30万語

一覧ページに存在しない語

約 61万語 - -

約 77万語 - -

語として不適切なものを取り除く必要がある

既に抽出したものと被ることもあるが、 is-A 関係が構築で

きる可能性

Page 46: Mtg121024

現状のデータ記事として存在

記事が存在しない

一覧ページに存在する語 約 16万語 約 14万語 約 30万語

一覧ページに存在しない語

約 61万語 - -

約 77万語 - -

記事として存在 かつ 一覧ページに存在しない語

Infobox ありInfobox なし

約 61万語

Page 47: Mtg121024

調べたデータ ランダムに抽出した 300 の記事を対象人手で定義文から上位語を抽出し、日本語語彙大系によって判断した

平均して 1 記事につき、親を 1.14個もつ(σ=0.38)抽出できた関係数は 322

判断不能・定義文内に上位語相当語句がない記事が 12

およそ 60 ~ 70万程度の関係が取れると思われる

Page 48: Mtg121024

定義文からC-I関係を構築しようとしたときの課題

記事になっていない語に関しては扱えない 記事になっているが、不適切な語をどう取り除く

か C-I/Is-A の区別なく、すべて「上位・下位関係」と

して混在した形で抽出される (→既存の WikiOntにおける関係とうまく結び付けられたりしないか? )

Page 49: Mtg121024

ランダムに選んだインスタンス約 300 語を対象に前述の手法が仮にうまく働いたとして、どの程度の深さのクラスが定義文から抽出されるかを調べた。

定量化は難しいが、基準としては日本語語彙体系のカテゴリ ( 約 3000) とインスタンス ( 約 10万 )例 ) 名詞→具体→主体→場所→施設→公共施設→学校→小学校 (最下層 )

例 ) 名詞→具体→具体物→無生物→人工物→物品→商品→加工物 (最下層 )

正解・不正解の基準と仮定

Page 50: Mtg121024

正しくデータがとれたもの (約96%)

33%未知数

54%約 100,000 語レベル

12%約 2,000 語レベル

1%数 100 程度

Page 51: Mtg121024

正しくデータがとれたもの (約96%)

33%未知数

54%約 100,000 語レベル

12%約 2,000 語レベル

1%数 100 程度

フリーアナウンサー ,

航空自衛官

アナウンサー ,自衛官

ジャーナリスト ,軍人

Page 52: Mtg121024

不適切 ? ・判断が難しい記事の例「 Б はキリル文字のひとつ」「 8月 21日はグレゴリオ暦で年始から 233日目

にあたり、年末まであと 132日ある。」「ブントは、結びつき、絆、連合、結束、提携、盟

約、同盟、連邦、束を意味するドイツ語の名詞」「ロータシズムとは言語学において、ほかの音素が

/r/音に変化することをいう。」

Page 53: Mtg121024

正しくデータがとれなかったもの

上位語がとれなかった記事

定義文に上位語相当語句が含まれていない

状態や行動名を長い名詞句で説明しており、取り出す長さがチャンク単位を超える

日付や文字など、そもそも取る価値があるのか不明

Page 54: Mtg121024

ルールベース「~は~で、主に~を行っている。」などのルールの適用できない多様な形式に対して取りこぼしが多い

Wikipedia の構造を利用した機械学習ベース見出し語や、段落の階層関係を利用

定義文からの上位・下位関係に関してこれまで行われてきた手法

Page 55: Mtg121024

1 文目の先頭チャンクは必ず記事名を含むという仮定

Cabocha で解析された (固有表現 IOB タグが振られた ) チャンク単位が妥当であり、それらの係り受け関係も正しいという仮定

何らかの方法でクラス相当語句を含むチャンクを見つけ出すというアプローチ

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

Page 56: Mtg121024

2番目~末尾のチャンクそれぞれに対してスコアリングを行い、ある閾値以上のチャンクはその記事名の語の 「クラス相当語句が含まれている」と仮定し、それらのチャンク内から語句を切り出して抽出する (簡単なルールで抽出可能 )

2値分類問題として SVM で扱う

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

Page 57: Mtg121024

2番目~末尾のチャンクそれぞれに対してスコアリングを行い、ある閾値以上のチャンクはその記事名の語の 「クラス相当語句が含まれている」と仮定し、それらのチャンク内から語句を切り出して抽出する (簡単なルールで抽出可能 )

2値分類問題として SVM で扱う

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

f(w)<0

Page 58: Mtg121024

2番目~末尾のチャンクそれぞれに対してスコアリングを行い、ある閾値以上のチャンクはその記事名の語の 「クラス相当語句が含まれている」と仮定し、それらのチャンク内から語句を切り出して抽出する (簡単なルールで抽出可能 )

2値分類問題として SVM で扱う

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

f(w)<0 f(w)>0

Page 59: Mtg121024

2番目~末尾のチャンクそれぞれに対してスコアリングを行い、ある閾値以上のチャンクはその記事名の語の 「クラス相当語句が含まれている」と仮定し、それらのチャンク内から語句を切り出して抽出する (簡単なルールで抽出可能 )

2値分類問題として SVM で扱う

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

f(w)<0 f(w)>0 f(w)>0

Page 60: Mtg121024

2番目~末尾のチャンクそれぞれに対してスコアリングを行い、ある閾値以上のチャンクはその記事名の語の 「クラス相当語句が含まれている」と仮定し、それらのチャンク内から語句を切り出して抽出する (簡単なルールで抽出可能 )

2値分類問題として SVM で扱う

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

f(w)<0 f(w)>0 f(w)>0 f(w)>0

Page 61: Mtg121024

2番目~末尾のチャンクそれぞれに対してスコアリングを行い、ある閾値以上のチャンクはその記事名の語の 「クラス相当語句が含まれている」と仮定し、それらのチャンク内から語句を切り出して抽出する (簡単なルールで抽出可能 )

2値分類問題として SVM で扱う

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

Page 62: Mtg121024

採用できそうな素性 チャンクの位置、文字列長直前のチャンクにおけるいくつかの素性 「であり、」 , 「である。」 , 「の一つ」などの

キーワードを含むかどうか 主題の語との係り受け関係 (直接係っているのか、ほかのチャンクをいくつか経由して係っているのか )

形態素一致率 (共通する度合いが高いチャンクほどスコアをあげる等 )例 ) 国際会計基準と会計基準

形態素の共起度合

Page 63: Mtg121024

手法 (ベタですが・・・ )

藤野真紀子は、 日本の

定義文(1 文目 )

~藤野真紀子~政治家、 料理研究家、 エッセイストで

ある。

f(w)<0 f(w)>0 f(w)>0 f(w)>0

学習時に正解か否かは、人手でラべリングすることになる

Page 64: Mtg121024

正例は自動でラベリング可能学習時には正解となるチャンクに対して正例ラベ

ルを振っても良いが、 Infobox を含む記事ならばInfobox テンプレート名がチャンクに含まれていればそれを解として与えることができる可能性が高い

エステバン・マティアス・カンビアッソ・デレアウは、アルゼンチン・ブエノスアイレス出身で、同国代表、インテル所属のサッカー選手

テンプレート名:サッカー選手

Page 65: Mtg121024

正例は自動でラベリング可能学習時には正解となるチャンクに対して正例ラベ

ルを振っても良いが、 Infobox を含む記事ならばInfobox テンプレート名がチャンクに含まれていればそれを解として与えることができる可能性が高い

エステバン・マティアス・カンビアッソ・デレアウは、アルゼンチン・ブエノスアイレス出身で、同国代表、インテル所属のサッカー選手

テンプレート名:サッカー選手

自動的に正解データを付与できる!

Page 66: Mtg121024

全体図前処理

形態素解析チャンキング係り受け解析

素性抽出

チャンク長チャンク位置形態素一致率係り受け関係共起度合いなど

学習正解ラベルの付与

人手

Infobox閾値判定によ

る正解付与

記事定義文記事

定義文記事定義文

定義文に対して

分類器

自動

Page 67: Mtg121024

以上です。