Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
/31
能動学習による
多関係データセットの構築
梶野 洸1, 岸本 章宏2,
Adi Botea2, Elizabeth Daly2, Spyros Kotoulas2
1. 東京大学
2. IBM Research - Ireland
1
/31
研究概要
■ 問題設定
入力: 主体, 関係の集合
出力: 主体間の各関係の有無
仮定: 人によるアノテーションが必要
■ アプローチ: 能動学習
2
人手が必要な多関係データセット構築の効率化を取り扱う
犬 動物
人間
含まれる同じ
ではない
オラクル
1. モデルがデータを選択し
ラベルを要求
2. ラベルを受け取りデータを更新
多関係
データモデル
3. モデルを再学習
/31
目次
■ 導入・問題設定:
□ 多関係データの定義: 主体間に複数の有向関係が存在
□ 定式化: データセット構築と予測モデル構築
■ 提案手法:
□ 多関係データモデル: 正例・負例らしさを学習
□ 能動学習: モデルを元にラベル付けを依頼
■ 実験
□ Cold-start 条件: 初期状態でラベルなし
3
多関係データセット構築を目的とする
/31
目次
■ 導入・問題設定:
□ 多関係データの定義: 主体間に複数の有向関係が存在
□ 定式化: データセット構築と予測モデル構築
■ 提案手法:
□ 多関係データモデル: 正例・負例らしさを学習
□ 能動学習: モデルを元にラベル付けを依頼
■ 実験
□ Cold-start 条件: 初期状態でラベルなし
4
多関係データセット構築を目的とする
/31
多関係データ
■ 定義
□ 三つ組データ: t = (i, j, k)
• 主体: i, j ∈E
• 有向関係: k ∈R
□ 多関係データセット: (Δp, Δn)
• Δp = {t | 正のラベルをもつ} (仮定: |Δp| ≪ |Δ| )
• Δn = {t | 負のラベルをもつ}
5
多関係データは二値ラベルの付いた三つ組から構成される
全三つ組
犬 動物
人間
含まれる同じ
ではない
/31
応用例: 知識ベース
■ 実データ
■ 応用: NLP/IR/対話システム
□ 人間の知識の情報源
□ 推論に必要
6
データセット 例
WordNet [Miller,  95]
(辞書)
(dog,  canine, 同義語),  (dog,  poodle,  上位語)
Freebase  [Bollacker+, 08]
(百科事典)
(BobDylan,  Robert  Allen  Zimmerman,  AlsoKnownAs)
ConceptNet
[Liu+,  04]
(saxophone,  jazz,  UsedFor),  
(learn,  knowledge,  MotivatedByGoal)
知識ベースは人間の知識を多関係データで表したものである
/31
本研究の問題設定
■ 多関係データセットの一般的性質
□ 主体: 102∼106 個
□ 関係: 10∼104 個
□ 正例の割合: 10-7∼1%
□ ラベル付けは人間のみが可能な場合がある
(常識的な知識, 未知の知識など)
■ 本研究での問題設定
人手による多関係データセット構成の効率化
7
要素数が多いため、多関係データセットの構築は大変
要素数: 105∼1016 個
|E |
|E |
|R |
/31
定式化: 二つの目的
■ 入力
□ 主体集合 E, 関係集合 R, オラクル O : E E R → {正,
負}
■ 問題1: データセット構築問題
□ 出力: 正例集合 Δp
(正例が少ないので、正例の収集に注力)
■ 問題2: 予測モデル構築問題
□ 出力: 予測モデル M: E E R → R
□ 評価基準: テストデータ での ROC-AUC
8
目的に応じて二つの問題設定を考える
・誤りなし
・B 個のラベルを取得可能
予測スコア
?|E |
|E |
|R |
/31
目次
■ 導入・問題設定:
□ 多関係データの定義: 主体間に複数の有向関係が存在
□ 定式化: データセット構築と予測モデル構築
■ 提案手法:
□ 多関係データモデル: 正例・負例らしさを学習
□ 能動学習: モデルを元にラベル付けを依頼
■ 実験
□ Cold-start 条件: 初期状態でラベルなし
9
多関係データセット構築を目的とする
/31
提案手法: 概要
■ 構成要素:
□ データ選択基準: どの三つ組にラベルを付与する?
※モデルの予測スコア st を元に計算
□ 多関係データモデル
□ 全体の手続き
10
多関係データモデルを利用してオラクルを効率よく活用
オラクル
1. モデルがデータを選択し
ラベルを要求
2. ラベルを受け取りデータを更新
多関係
データモデル
3. モデルを再学習
/31
提案手法: 概要
■ 構成要素:
□ データ選択基準: どの三つ組にラベルを付与する?
※モデルの予測スコア st を元に計算
□ 多関係データモデル
□ 全体の手続き
11
多関係データモデルを利用してオラクルを効率よく活用
オラクル
1. モデルがデータを選択し
ラベルを要求
2. ラベルを受け取りデータを更新
多関係
データモデル
3. モデルを再学習
/31
提案手法(1/3): データ選択基準
■ 仮定
□ 入力: 予測スコア st (t ∈ Δ), しきい値 0
s.t. st > 0 (< 0) 正例 (負例)
■ データ選択スコア qt (小さいものを選択)
□ 正例スコア: qt = – st
• 正例を出来る限り多く収集
□ 不確実性スコア: qt = |st |
• st ≒ 0 となる三つ組 t はモデルにとって不確か
• 能動学習でよく使われるスコア
12
目的に応じてデータ選択スコアを設計する
正例
負例
st
0
/31
提案手法: 概要
■ 構成要素:
□ データ選択基準: どの三つ組にラベルを付与する?
※モデルの予測スコア st を元に計算
□ 多関係データモデル
□ 全体の手続き
13
多関係データモデルを利用してオラクルを効率よく活用
オラクル
1. モデルがデータを選択し
ラベルを要求
2. ラベルを受け取りデータを更新
多関係
データモデル
3. モデルを再学習
/31
提案手法(2/3): 満たすべき性質
■ 要請1: 大規模可能性 & 予測性能
□ 多数回の再学習が必要
潜在表現法に制約を加えたモデルを提案
■ 要請2: 少量の正例 + 負例・ラベルなし三つ組
□ 既存手法は負例とラベルなし三つ組を陽に区別せず
負例を陽に利用するAUC損失関数を提案
■ 要請3: 能動学習で用いる正例・負例の分類平面
□ AUC損失関数は分類平面を学習しない
誤分類率に関する損失関数を併用
14
3つの要請を満たすように既存手法を拡張する
/31
提案手法(2/3): 多関係データモデル
■ 提案モデル (三つ組 t = (i, j, k))
□ ai ∈ RD : 主体 i の潜在ベクトル表現
□ Rk ∈ RD D : 関係 k の潜在空間内演算表現
• | ai | = 1, Rk ∈ {回転行列} と制限
□ (i, j, k)が正例 aj を Rk で変換すると ai に近くなる
□ (i, j, k)が負例 aj を -Rk で変換すると ai
■ 予測スコア: st = ai
T Rk aj ∈[-1,1]
□ t = (i, j, k) の正例度合い
15
RESCALモデルに制約を加え過学習を防ぐ
aj
ai
Rk
/31
提案手法(2/3): 学習
■ 最適化問題
□ AUC損失: s(正例) > s(非正例), s(非負例) > s(負例)
• 利点:
– 正例・負例の比にロバスト
– ラベルなしデータを利用しやすい
• 欠点: 識別平面のしきい値 θ が得られない
□ 誤識別率損失: s(正例) > 0, s(負例) < 0
• 利点: しきい値 θ が得られる
• 欠点:
– 性能が正例・負例の比に大きく依存
– ラベルなしデータを利用しにくい 16
AUC損失と誤識別率を組み合わせて学習を行う
正例
負例
st
ラベルなし0
min AUC損失 +  誤識別率損失
/31
提案手法(2/3): 学習
□ パラメタ:
□ ハイパーパラメタ: γ, γ’, Cn, Ce, D
17
マージンベースの損失関数を用いた定式化
,
s(正) > s(非正)
s(非負) > s(負)
s(正) > 0 s(負) < 0
/31
提案手法(2/3): 学習
■ 最適化手法: 確率的勾配降下法
□ 以下の手続きを T 回繰り返す
• ランダムに t = (tp, tp) または (tn, tn) (tp ∉ Δp, tn ∉ Δn) を選択
• パラメタ A, R を更新:
– A[t] ← A[t] – α ∇(obj related to t)
– R[t] ← R[t] – α ∇(obj related to t)
• 制約を満たすようにパラメタを更新:
– A[t] ← normalize(A[t])
– R[t] ← project_onto_set_of_rotation_matrices(R[t])
• 学習率を α ∝ #(iter)-1/2 と設定
18
SGDを用いて学習を行う
- - - -
/31
提案手法(2/3): 既存手法との比較
主体 i 関係 k 関係kが成立 関係kが非成立
提案手法 ai ∈ BD Rk ∈ RotD ai
TRk aj = 1 ai
TRk aj = -1
RESCAL ai ∈ RD Rk ∈ RD×D ai
TRk aj = 大 ai
TRk aj = 小
TransE ai ∈ BD rk ∈ RD |ai + rk – aj | = 0 |ai + rk – aj | = 大
19
提案手法はRESCALとTransEの中間的な手法である
目的関数 最適化 自由度
提案手法 pos-AUC + neg-AUC
+ 0/1 loss
SGD
主体: D-1, 関係: D(D-1)/2
RESCAL
pos-AUC
主体: D, 関係: D2
TransE 主体: D-1, 関係: D
unit-ball ¬関係kが
一意に定まらない
※ RESCAL [Nickel+,11], TransE [Bordes+,13]
/31
提案手法(2/3): 既存手法との比較
■ 要請1: 大規模可能性 & 予測性能
□ 多数回の再学習が必要
潜在表現法に制約を加えたモデルを提案
■ 要請2: 少量の正例 + 負例・ラベルなし三つ組
□ 既存手法は負例とラベルなし三つ組を陽に区別せず
負例を陽に利用するAUC損失関数を提案
■ 要請3: 能動学習で用いる正例・負例の分類平面
□ AUC損失関数は分類平面を学習しない
誤分類率に関する損失関数を併用
20
3つの要請を満たすように既存手法を拡張する
RESCAL K
TransE J
RESCAL K
TransE L
RESCAL L
TransE L
/31
提案手法: 概要
■ 構成要素:
□ データ選択基準: どの三つ組にラベルを付与する?
※モデルの予測スコア st を元に計算
□ 多関係データモデル
□ 全体の手続き
21
多関係データモデルを利用してオラクルを効率よく活用
オラクル
1. モデルがデータを選択し
ラベルを要求
2. ラベルを受け取りデータを更新
多関係
データモデル
3. モデルを再学習
/31
提案手法(3/3): モデル選択
■ ハイパーパラメタ
□ マージン: γ, γ’,
□ 正則化パラメタ: Cn, Ce
□ 潜在空間の次元: D
□ 学習率 & 更新回数: α, T
■ モデル選択
□ 入力:
• ハイパーパラメタの設定集合 (=モデル集合 M )
• 検証用データ: (Δp, Δn)
□ 各モデル M∈M を学習し、検証スコアを計算
□ 出力: 検証スコアが最も良いモデル M*
22
データセットが更新されるため、モデル選択が必須
/31
提案手法(3/3): 全体のアルゴリズム
■ 入力: モデル集合 M
1. 検証用データを作成
2. 予算が無くなるまで以下を繰り返す:
i. ランダムな Q 個の三つ組にデータ選択スコアを計算
ii. スコアが最も低い q 個の三つ組のラベルを要求
iii. すべてのモデルを再学習
iv. 検証スコアが良いモデルを標準モデルとして選択
■ 出力: 標準モデル M, データセット (Δp, Δn)
23
標準モデルを用いてオラクルに尋ねるデータ選択を行う
モデル集合 オラクル
/31
目次
■ 導入・問題設定:
□ 多関係データの定義: 主体間に複数の有向関係が存在
□ 定式化: データセット構築と予測モデル構築
■ 提案手法:
□ 多関係データモデル: 正例・負例らしさを学習
□ 能動学習: モデルを元にラベル付けを依頼
■ 実験
□ Cold-start 条件: 初期状態でラベルなし
24
多関係データセット構築を目的とする
/31
実験
■ 実験目的: 提案手法の三要素の貢献を評価
□ モデルに加えた制約 (vs RESCAL)
□ 負例を明示的に利用したAUC損失関数 (vs no neg-AUC)
□ データ選択基準 (vs Random)
■ 実験概要
□ データセット
□ 評価基準
□ 手続き
□ 結果(データセット構築問題/予測モデル構築問題)
25
提案手法の各構成要素の貢献を実験的に評価
/31
実験: データセット
■ Kinships Dataset: ある民族の親類関係を表す用語
□ 主体: 人 関係: 呼称
■ Nations Dataset: 国同士の関係を表したデータ
□ 主体: 国 関係: 経済支援関係, 公式訪問関係など
■ UMLS Dataset: 生体医学のセマンティックデータ
□ 主体: 概念, 用語 関係: 意味的関係
26
標準的な多関係データセットを利用
#(主体) #(関係) #(正例) #(負例)
Kinships  [Denham,  73] 104 26 10,790 270,426
Nations  [Rummel,  50-­‐65] 125 57 2,565 8,626
UMLS  [McCray,03] 135 49 6,752 886,273
/31
実験: 評価基準
■ ROC-AUC (Area Under the ROC Curve)
□ 入力: テストデータ 、テストスコア {st}
□ 出力:
■ 達成率
□ 入力:
• オリジナルのデータセット (Δp, Δn)
• 提案手法で構築したデータセット (Δ’p, Δ’n)
□ 出力: |Δ’p| / |Δp|
27
二つの問題設定に対応した評価基準を用いる
/31
実験: 手続き
■ すべての手法で共通の手続きを用いる:
入力: モデル集合 M
1. 検証、テストデータをサンプル (それ1K triples each)
2. 予算が無くなるまで以下を繰り返す:
i. ランダムな Q 個の三つ組にデータ選択スコアを計算
ii. スコアが最も低い q 個の三つ組のラベルを要求
iii. すべてのモデルを再学習
iv. 検証スコアが良いモデルを標準モデルとして選択
v. ROC-AUC、達成率をテストデータで計算
10回繰り返し、平均・標準偏差を報告
28
データを取得する度に標準モデルを選択し直す
/31
実験: データセット構築問題
■ 達成率による評価
□ UMLSデータで最も性能改善
正例の割合が著しく低くても学習可能
□ 負例が多い場合、負例を用いると性能が上がる
29
2.38∼19.2倍の正例を収集可能
Nations
0 200 400 600 800 1000 1200 1400 1600
#(Queries)
0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.35
Completionrate
AMDC
AMDC rand
AMDC pos only
AMDC no const
UMLS
0 2000 4000 6000 8000 10000 12000 14000 16000
#(Queries)
0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.40
Completionrate
AMDC
AMDC rand
AMDC pos only
AMDC no const
Kinships
0 2000 4000 6000 8000 10000 12000 14000 16000
#(Queries)
0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.40
0.45
Completionrate
AMDC
AMDC rand
AMDC pos only
AMDC no const
/31
実験: 予測モデル構築問題
■ ROC-AUCによる評価
□ 提案手法が常に最高性能
□ 制約を加えないと学習が不安定
□ ランダムな手法との差は中盤に最も大きくなる
30
提案手法は常に最高性能に匹敵する性能
Kinships
0 2000 4000 6000 8000 10000 12000 14000 16000
#(Queries)
0.4
0.5
0.6
0.7
0.8
0.9
1.0
ROC-AUC
AMDC
AMDC rand
AMDC pos only
AMDC no const
Nations
0 200 400 600 800 1000 1200 1400 1600
#(Queries)
0.4
0.5
0.6
0.7
0.8
0.9
1.0
ROC-AUC
AMDC
AMDC rand
AMDC pos only
AMDC no const
UMLS
0 2000 4000 6000 8000 10000 12000 14000 16000
#(Queries)
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
ROC-AUC
AMDC
AMDC rand
AMDC pos only
AMDC no const
/31
結論
■ 問題設定
□ 人手による多関係データセットの効率的な構築
■ 手法
□ 多関係データモデルを用いた能動学習
■ 技術的貢献
□ AUC損失と誤識別率損失を組み合わせた能動学習
□ モデルに制約を加え学習を安定化
□ 負例を明示的に利用
■ 実験
□ ベースラインと比べ安定した性能を実現
31
多関係データ構築問題に対し能動学習に基づいた手法を提案

More Related Content

能動学習による多関係データセットの構築

  • 1. /31 能動学習による 多関係データセットの構築 梶野 洸1, 岸本 章宏2, Adi Botea2, Elizabeth Daly2, Spyros Kotoulas2 1. 東京大学 2. IBM Research - Ireland 1
  • 2. /31 研究概要 ■ 問題設定 入力: 主体, 関係の集合 出力: 主体間の各関係の有無 仮定: 人によるアノテーションが必要 ■ アプローチ: 能動学習 2 人手が必要な多関係データセット構築の効率化を取り扱う 犬 動物 人間 含まれる同じ ではない オラクル 1. モデルがデータを選択し ラベルを要求 2. ラベルを受け取りデータを更新 多関係 データモデル 3. モデルを再学習
  • 3. /31 目次 ■ 導入・問題設定: □ 多関係データの定義: 主体間に複数の有向関係が存在 □ 定式化: データセット構築と予測モデル構築 ■ 提案手法: □ 多関係データモデル: 正例・負例らしさを学習 □ 能動学習: モデルを元にラベル付けを依頼 ■ 実験 □ Cold-start 条件: 初期状態でラベルなし 3 多関係データセット構築を目的とする
  • 4. /31 目次 ■ 導入・問題設定: □ 多関係データの定義: 主体間に複数の有向関係が存在 □ 定式化: データセット構築と予測モデル構築 ■ 提案手法: □ 多関係データモデル: 正例・負例らしさを学習 □ 能動学習: モデルを元にラベル付けを依頼 ■ 実験 □ Cold-start 条件: 初期状態でラベルなし 4 多関係データセット構築を目的とする
  • 5. /31 多関係データ ■ 定義 □ 三つ組データ: t = (i, j, k) • 主体: i, j ∈E • 有向関係: k ∈R □ 多関係データセット: (Δp, Δn) • Δp = {t | 正のラベルをもつ} (仮定: |Δp| ≪ |Δ| ) • Δn = {t | 負のラベルをもつ} 5 多関係データは二値ラベルの付いた三つ組から構成される 全三つ組 犬 動物 人間 含まれる同じ ではない
  • 6. /31 応用例: 知識ベース ■ 実データ ■ 応用: NLP/IR/対話システム □ 人間の知識の情報源 □ 推論に必要 6 データセット 例 WordNet [Miller,  95] (辞書) (dog,  canine, 同義語),  (dog,  poodle,  上位語) Freebase  [Bollacker+, 08] (百科事典) (BobDylan,  Robert  Allen  Zimmerman,  AlsoKnownAs) ConceptNet [Liu+,  04] (saxophone,  jazz,  UsedFor),   (learn,  knowledge,  MotivatedByGoal) 知識ベースは人間の知識を多関係データで表したものである
  • 7. /31 本研究の問題設定 ■ 多関係データセットの一般的性質 □ 主体: 102∼106 個 □ 関係: 10∼104 個 □ 正例の割合: 10-7∼1% □ ラベル付けは人間のみが可能な場合がある (常識的な知識, 未知の知識など) ■ 本研究での問題設定 人手による多関係データセット構成の効率化 7 要素数が多いため、多関係データセットの構築は大変 要素数: 105∼1016 個 |E | |E | |R |
  • 8. /31 定式化: 二つの目的 ■ 入力 □ 主体集合 E, 関係集合 R, オラクル O : E E R → {正, 負} ■ 問題1: データセット構築問題 □ 出力: 正例集合 Δp (正例が少ないので、正例の収集に注力) ■ 問題2: 予測モデル構築問題 □ 出力: 予測モデル M: E E R → R □ 評価基準: テストデータ での ROC-AUC 8 目的に応じて二つの問題設定を考える ・誤りなし ・B 個のラベルを取得可能 予測スコア ?|E | |E | |R |
  • 9. /31 目次 ■ 導入・問題設定: □ 多関係データの定義: 主体間に複数の有向関係が存在 □ 定式化: データセット構築と予測モデル構築 ■ 提案手法: □ 多関係データモデル: 正例・負例らしさを学習 □ 能動学習: モデルを元にラベル付けを依頼 ■ 実験 □ Cold-start 条件: 初期状態でラベルなし 9 多関係データセット構築を目的とする
  • 10. /31 提案手法: 概要 ■ 構成要素: □ データ選択基準: どの三つ組にラベルを付与する? ※モデルの予測スコア st を元に計算 □ 多関係データモデル □ 全体の手続き 10 多関係データモデルを利用してオラクルを効率よく活用 オラクル 1. モデルがデータを選択し ラベルを要求 2. ラベルを受け取りデータを更新 多関係 データモデル 3. モデルを再学習
  • 11. /31 提案手法: 概要 ■ 構成要素: □ データ選択基準: どの三つ組にラベルを付与する? ※モデルの予測スコア st を元に計算 □ 多関係データモデル □ 全体の手続き 11 多関係データモデルを利用してオラクルを効率よく活用 オラクル 1. モデルがデータを選択し ラベルを要求 2. ラベルを受け取りデータを更新 多関係 データモデル 3. モデルを再学習
  • 12. /31 提案手法(1/3): データ選択基準 ■ 仮定 □ 入力: 予測スコア st (t ∈ Δ), しきい値 0 s.t. st > 0 (< 0) 正例 (負例) ■ データ選択スコア qt (小さいものを選択) □ 正例スコア: qt = – st • 正例を出来る限り多く収集 □ 不確実性スコア: qt = |st | • st ≒ 0 となる三つ組 t はモデルにとって不確か • 能動学習でよく使われるスコア 12 目的に応じてデータ選択スコアを設計する 正例 負例 st 0
  • 13. /31 提案手法: 概要 ■ 構成要素: □ データ選択基準: どの三つ組にラベルを付与する? ※モデルの予測スコア st を元に計算 □ 多関係データモデル □ 全体の手続き 13 多関係データモデルを利用してオラクルを効率よく活用 オラクル 1. モデルがデータを選択し ラベルを要求 2. ラベルを受け取りデータを更新 多関係 データモデル 3. モデルを再学習
  • 14. /31 提案手法(2/3): 満たすべき性質 ■ 要請1: 大規模可能性 & 予測性能 □ 多数回の再学習が必要 潜在表現法に制約を加えたモデルを提案 ■ 要請2: 少量の正例 + 負例・ラベルなし三つ組 □ 既存手法は負例とラベルなし三つ組を陽に区別せず 負例を陽に利用するAUC損失関数を提案 ■ 要請3: 能動学習で用いる正例・負例の分類平面 □ AUC損失関数は分類平面を学習しない 誤分類率に関する損失関数を併用 14 3つの要請を満たすように既存手法を拡張する
  • 15. /31 提案手法(2/3): 多関係データモデル ■ 提案モデル (三つ組 t = (i, j, k)) □ ai ∈ RD : 主体 i の潜在ベクトル表現 □ Rk ∈ RD D : 関係 k の潜在空間内演算表現 • | ai | = 1, Rk ∈ {回転行列} と制限 □ (i, j, k)が正例 aj を Rk で変換すると ai に近くなる □ (i, j, k)が負例 aj を -Rk で変換すると ai ■ 予測スコア: st = ai T Rk aj ∈[-1,1] □ t = (i, j, k) の正例度合い 15 RESCALモデルに制約を加え過学習を防ぐ aj ai Rk
  • 16. /31 提案手法(2/3): 学習 ■ 最適化問題 □ AUC損失: s(正例) > s(非正例), s(非負例) > s(負例) • 利点: – 正例・負例の比にロバスト – ラベルなしデータを利用しやすい • 欠点: 識別平面のしきい値 θ が得られない □ 誤識別率損失: s(正例) > 0, s(負例) < 0 • 利点: しきい値 θ が得られる • 欠点: – 性能が正例・負例の比に大きく依存 – ラベルなしデータを利用しにくい 16 AUC損失と誤識別率を組み合わせて学習を行う 正例 負例 st ラベルなし0 min AUC損失 +  誤識別率損失
  • 17. /31 提案手法(2/3): 学習 □ パラメタ: □ ハイパーパラメタ: γ, γ’, Cn, Ce, D 17 マージンベースの損失関数を用いた定式化 , s(正) > s(非正) s(非負) > s(負) s(正) > 0 s(負) < 0
  • 18. /31 提案手法(2/3): 学習 ■ 最適化手法: 確率的勾配降下法 □ 以下の手続きを T 回繰り返す • ランダムに t = (tp, tp) または (tn, tn) (tp ∉ Δp, tn ∉ Δn) を選択 • パラメタ A, R を更新: – A[t] ← A[t] – α ∇(obj related to t) – R[t] ← R[t] – α ∇(obj related to t) • 制約を満たすようにパラメタを更新: – A[t] ← normalize(A[t]) – R[t] ← project_onto_set_of_rotation_matrices(R[t]) • 学習率を α ∝ #(iter)-1/2 と設定 18 SGDを用いて学習を行う - - - -
  • 19. /31 提案手法(2/3): 既存手法との比較 主体 i 関係 k 関係kが成立 関係kが非成立 提案手法 ai ∈ BD Rk ∈ RotD ai TRk aj = 1 ai TRk aj = -1 RESCAL ai ∈ RD Rk ∈ RD×D ai TRk aj = 大 ai TRk aj = 小 TransE ai ∈ BD rk ∈ RD |ai + rk – aj | = 0 |ai + rk – aj | = 大 19 提案手法はRESCALとTransEの中間的な手法である 目的関数 最適化 自由度 提案手法 pos-AUC + neg-AUC + 0/1 loss SGD 主体: D-1, 関係: D(D-1)/2 RESCAL pos-AUC 主体: D, 関係: D2 TransE 主体: D-1, 関係: D unit-ball ¬関係kが 一意に定まらない ※ RESCAL [Nickel+,11], TransE [Bordes+,13]
  • 20. /31 提案手法(2/3): 既存手法との比較 ■ 要請1: 大規模可能性 & 予測性能 □ 多数回の再学習が必要 潜在表現法に制約を加えたモデルを提案 ■ 要請2: 少量の正例 + 負例・ラベルなし三つ組 □ 既存手法は負例とラベルなし三つ組を陽に区別せず 負例を陽に利用するAUC損失関数を提案 ■ 要請3: 能動学習で用いる正例・負例の分類平面 □ AUC損失関数は分類平面を学習しない 誤分類率に関する損失関数を併用 20 3つの要請を満たすように既存手法を拡張する RESCAL K TransE J RESCAL K TransE L RESCAL L TransE L
  • 21. /31 提案手法: 概要 ■ 構成要素: □ データ選択基準: どの三つ組にラベルを付与する? ※モデルの予測スコア st を元に計算 □ 多関係データモデル □ 全体の手続き 21 多関係データモデルを利用してオラクルを効率よく活用 オラクル 1. モデルがデータを選択し ラベルを要求 2. ラベルを受け取りデータを更新 多関係 データモデル 3. モデルを再学習
  • 22. /31 提案手法(3/3): モデル選択 ■ ハイパーパラメタ □ マージン: γ, γ’, □ 正則化パラメタ: Cn, Ce □ 潜在空間の次元: D □ 学習率 & 更新回数: α, T ■ モデル選択 □ 入力: • ハイパーパラメタの設定集合 (=モデル集合 M ) • 検証用データ: (Δp, Δn) □ 各モデル M∈M を学習し、検証スコアを計算 □ 出力: 検証スコアが最も良いモデル M* 22 データセットが更新されるため、モデル選択が必須
  • 23. /31 提案手法(3/3): 全体のアルゴリズム ■ 入力: モデル集合 M 1. 検証用データを作成 2. 予算が無くなるまで以下を繰り返す: i. ランダムな Q 個の三つ組にデータ選択スコアを計算 ii. スコアが最も低い q 個の三つ組のラベルを要求 iii. すべてのモデルを再学習 iv. 検証スコアが良いモデルを標準モデルとして選択 ■ 出力: 標準モデル M, データセット (Δp, Δn) 23 標準モデルを用いてオラクルに尋ねるデータ選択を行う モデル集合 オラクル
  • 24. /31 目次 ■ 導入・問題設定: □ 多関係データの定義: 主体間に複数の有向関係が存在 □ 定式化: データセット構築と予測モデル構築 ■ 提案手法: □ 多関係データモデル: 正例・負例らしさを学習 □ 能動学習: モデルを元にラベル付けを依頼 ■ 実験 □ Cold-start 条件: 初期状態でラベルなし 24 多関係データセット構築を目的とする
  • 25. /31 実験 ■ 実験目的: 提案手法の三要素の貢献を評価 □ モデルに加えた制約 (vs RESCAL) □ 負例を明示的に利用したAUC損失関数 (vs no neg-AUC) □ データ選択基準 (vs Random) ■ 実験概要 □ データセット □ 評価基準 □ 手続き □ 結果(データセット構築問題/予測モデル構築問題) 25 提案手法の各構成要素の貢献を実験的に評価
  • 26. /31 実験: データセット ■ Kinships Dataset: ある民族の親類関係を表す用語 □ 主体: 人 関係: 呼称 ■ Nations Dataset: 国同士の関係を表したデータ □ 主体: 国 関係: 経済支援関係, 公式訪問関係など ■ UMLS Dataset: 生体医学のセマンティックデータ □ 主体: 概念, 用語 関係: 意味的関係 26 標準的な多関係データセットを利用 #(主体) #(関係) #(正例) #(負例) Kinships  [Denham,  73] 104 26 10,790 270,426 Nations  [Rummel,  50-­‐65] 125 57 2,565 8,626 UMLS  [McCray,03] 135 49 6,752 886,273
  • 27. /31 実験: 評価基準 ■ ROC-AUC (Area Under the ROC Curve) □ 入力: テストデータ 、テストスコア {st} □ 出力: ■ 達成率 □ 入力: • オリジナルのデータセット (Δp, Δn) • 提案手法で構築したデータセット (Δ’p, Δ’n) □ 出力: |Δ’p| / |Δp| 27 二つの問題設定に対応した評価基準を用いる
  • 28. /31 実験: 手続き ■ すべての手法で共通の手続きを用いる: 入力: モデル集合 M 1. 検証、テストデータをサンプル (それ1K triples each) 2. 予算が無くなるまで以下を繰り返す: i. ランダムな Q 個の三つ組にデータ選択スコアを計算 ii. スコアが最も低い q 個の三つ組のラベルを要求 iii. すべてのモデルを再学習 iv. 検証スコアが良いモデルを標準モデルとして選択 v. ROC-AUC、達成率をテストデータで計算 10回繰り返し、平均・標準偏差を報告 28 データを取得する度に標準モデルを選択し直す
  • 29. /31 実験: データセット構築問題 ■ 達成率による評価 □ UMLSデータで最も性能改善 正例の割合が著しく低くても学習可能 □ 負例が多い場合、負例を用いると性能が上がる 29 2.38∼19.2倍の正例を収集可能 Nations 0 200 400 600 800 1000 1200 1400 1600 #(Queries) 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 Completionrate AMDC AMDC rand AMDC pos only AMDC no const UMLS 0 2000 4000 6000 8000 10000 12000 14000 16000 #(Queries) 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 Completionrate AMDC AMDC rand AMDC pos only AMDC no const Kinships 0 2000 4000 6000 8000 10000 12000 14000 16000 #(Queries) 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 0.45 Completionrate AMDC AMDC rand AMDC pos only AMDC no const
  • 30. /31 実験: 予測モデル構築問題 ■ ROC-AUCによる評価 □ 提案手法が常に最高性能 □ 制約を加えないと学習が不安定 □ ランダムな手法との差は中盤に最も大きくなる 30 提案手法は常に最高性能に匹敵する性能 Kinships 0 2000 4000 6000 8000 10000 12000 14000 16000 #(Queries) 0.4 0.5 0.6 0.7 0.8 0.9 1.0 ROC-AUC AMDC AMDC rand AMDC pos only AMDC no const Nations 0 200 400 600 800 1000 1200 1400 1600 #(Queries) 0.4 0.5 0.6 0.7 0.8 0.9 1.0 ROC-AUC AMDC AMDC rand AMDC pos only AMDC no const UMLS 0 2000 4000 6000 8000 10000 12000 14000 16000 #(Queries) 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 ROC-AUC AMDC AMDC rand AMDC pos only AMDC no const
  • 31. /31 結論 ■ 問題設定 □ 人手による多関係データセットの効率的な構築 ■ 手法 □ 多関係データモデルを用いた能動学習 ■ 技術的貢献 □ AUC損失と誤識別率損失を組み合わせた能動学習 □ モデルに制約を加え学習を安定化 □ 負例を明示的に利用 ■ 実験 □ ベースラインと比べ安定した性能を実現 31 多関係データ構築問題に対し能動学習に基づいた手法を提案