540 likes | 758 Views
数理言語情報論 第 4 回. 2009 年 10 月 28 日. 数理言語情報学研究室 講師 二宮 崇. 今日の講義の予定. 型付素性構造 (Typed Feature Structures) HPSG (Head-driven Phrase Structure Grammar, 主辞駆動句構造文法 ). 型付素性構造. 型付素性構造 : 導入. 非終端記号よりリッチなデータ構造 HPSG では、辞書も、句構造規則も、句構造も木構造も全て型付素性構造で記述、表現. noun. CAT:. local. LOCAL:. synsem. SYNSEM:.
E N D
数理言語情報論 第4回 2009年10月28日 数理言語情報学研究室 講師 二宮 崇
今日の講義の予定 • 型付素性構造 (Typed Feature Structures) • HPSG (Head-driven Phrase Structure Grammar, 主辞駆動句構造文法)
型付素性構造: 導入 • 非終端記号よりリッチなデータ構造 • HPSGでは、辞書も、句構造規則も、句構造も木構造も全て型付素性構造で記述、表現 noun CAT: local LOCAL: synsem SYNSEM: NONLOCAL: sign nonlocal NP an HD: PHON: apple cons HD: cons TL: nil TL:
型付素性構造: 導入 • 型付素性構造 (Carpenter 1990, 1992) • 根付ラベル付有向グラフ • グラフの各ノードに型が付与 • グラフ間に包摂関係 • 2つのグラフの単一化 • ここでは、Carpenter (1992) The Logic of Typed Feature Structures, Cambridge University Pressをベースに解説
型付素性構造: 例 • HPSGでの“she”に対する素性構造 HD: she nom CASE: nil nil noun cons SUBJ: TL: nil HEAD: PHON: COMPS: valence LOCAL: CAT: synsem cat word local SPR: VALENCE: nil SYNSEM: CONTENT: CONTEXT: fem INDEX: GEND: context ppro ref BACKGROUND: NUM: RESTR: sing female cons HD: nil RELN: PERS: TL: psoa 3rd nil INSTANCE:
型付素性構造: グラフ表記とAVM表記 • グラフ表記 • AVM表記 型 (type) 素性 (feature) nom CASE: nil noun SUBJ: cat HEAD: VALENCE: nil HEAD: noun CASE: nom COMPS: valence cat SPR: VALENCE: nil valence SUBJ: <> COMPS: <> SPR: <> 型 (type) 素性 (feature)
型付素性構造: グラフ表記とAVM表記 (構造共有) • グラフ表記 • AVM表記 構造共有 (reentrancy, structure-sharing) CASE: nom noun cat HEAD: VALENCE: HEAD: noun CASE: nom SPR: SUBJ: 1 2 cat valence SUBJ: COMPS: <> SPR: valence 1 VALENCE: 2 COMPS: nil
型付素性構造: グラフ表記とAVM表記 (サイクル) • グラフ表記 • AVM表記 nom CASE: noun cat HEAD: VALENCE: HEAD: noun CASE: nom SUBJ: cat COMPS: 1 nil valence SUBJ: COMPS: <> SPR: <> valence 1 VALENCE: SPR: nil
型付素性構造: 形式的定義 • TYPE: 型の有限集合 • FEAT: 素性の有限集合 • 素性構造 F (=<Q, q0,δ,θ>) • Q: グラフを構成するノードの集合 • q0: ルートノード (q0∈Q) • δ: グラフのアークを表現する部分関数 (partial function Q× FEAT → Q) • θ: ノードの型を返す全関数 (total function Q → TYPE)
型付素性構造: 形式的定義の例 • 素性構造<Q, q0,θ,δ> • Q = {q0, q1, q2, q3, q4, q5} • δ(q0, CAT:)=q1 • δ(q0, AGR:)=q2 • δ(q0, SUBJ:)=q3 • δ(q2, NUM:)=q4 • δ(q2, PERS:)=q5 • δ(q3, AGR:)=q2 • θ(q0) = sign • θ(q1) = S • θ(q2) = agr • θ(q3) = sign • θ(q4) = sing • θ(q5) = 3rd sign CAT: S AGR: SUBJ: agr NUM: sing PERS: 3rd 1 sign AGR: 1
型階層 (型の定義) • 型階層の例 特殊 adj verb 正方形 perp 円筒 長方形 菱形 subst 円 func 四角 丸 plus minus head bool 図形 ⊥ 一般 (ボトム)
型の包摂関係 (type subsumption relation) t13 t9より特殊な型 t9 ⊏ t10 t9 ⊏ t11 t9 ⊏ t12 t9 ⊏ t13 特殊 t8 t6 t12 t5 t7 t3 t10 t11 t4 t2 t4より特殊な型 t4 ⊏ t5 t4 ⊏ t6 t4 ⊏ t7 t4 ⊏ t8 t4 ⊏ t12 t4 ⊏ t13 t9 t1 ⊥ 一般 ⊑⊏⊒⊔⊐ (ボトム)
型単一化 (type unification) • t, u∈TYPE が与えられた時、 • UB(t, u) = {v∈TYPE|t ⊑v ∧ u ⊑v} • t ⊔u is v∈TYPE s.t. v∈UB(t, u)and ∀w∈UB(t, u).v ⊑w • t ⊔u: 単一化の結果、join、least upper boundと呼ばれる • 解がない場合は、定義なし、unification failure、inconsistent、⊤(トップ)と書いたり呼んだりする
型の単一化の例 t4の上界 t13 t9の上界 特殊 t8 t6 t12 UB(t4,t9) t5 t7 t3 t10 t11 t4 t2 t9 t4 ⊔ t9 t1 ⊥ 一般 (ボトム)
型階層の問題と制限 • 解が一つに定まらない場合 • 単一化の結果が複数解になって計算機的に扱いづらい • 予想しなかった解が複数出現する • 例: t1⊔t2=t3 or t4 • 対策 • 型階層の定義を与える際に単一化の結果が複数になるような型階層を禁止する • 単一化の結果をdisjunctionとして処理する t3 t4 t2 t1 ⊥ (ボトム) ここでは型単一化の結果は定義なしか、ひとつしかないと仮定する
型階層と素性の導入 名簿項目 郵便番号:integer 住所:string 電話番号:integer 姓:string 旧姓:string 名:string • 名簿の例 特殊 名前 姓:string 名:string 昔の名前 旧姓:string 名:string 住所 郵便番号:integer 住所:string 電話番号 電話番号:integer より特殊な型はより一般な型の素性を全て持つことに注意! 名 名:string 一般 ⊥ (ボトム)
Appropriateness • Approp: FEAT × TYPE → TYPE • Feature Introduction • For every feature f ∈ FEAT, there is a most general type Intro(f) ∈ TYPE s.t. Approp(f, Intro(f)) is defined • Upward Closure / Right Monotonicity • If Approp(f, t) is defined and t ⊑ u, then Approp(f, u) is also defined and Approp(f, t) ⊑ Approp(f, u)
Appropriateness: Feature Introduction • だめな例 • 良い例 t3 F:⊥ t3 F:⊥ t2 F:⊥ t1 F:⊥ t2 F:⊥ t1 F:⊥ ⊥ ⊥ (ボトム) (ボトム) F:を持つ最も一般な型が二つある F:を持つ最も一般な型が唯一存在
Appropriateness: Upward Closure / Right Monotonicity Approp(F:, t3) ⊑ Approp(F:, t7) t6 F:⊥ t7 F:integer t5 F:string t4 F:⊥ t3 F:⊥ t2 F:⊥ t1 F:⊥ ある型にF:が一度導入されるとそれより特殊な型は全てF:を持たなければならない ⊥ (ボトム)
Well-Typed Feature Structures • Well-Typedness • 素性構造 F=<Q, q0, θ, δ> は下記の条件を満たすとき、well-typedと呼ばれる • δ(f, q)が定義されている時には常に Approp(f, θ(q))が定義されており、かつ、Approp(f, θ(q)) ⊑θ(δ(f, q)) • 2つのWell-typed feature structuresの単一化の結果もwell-typed feature structureになる
Well-Typed Feature Structures • 例 Appropriateな型よりもインスタンスの型は必ず特殊でなければならない 1 HD: cons 2 HD: TL: cons nil cons HD:integer TL: list HD: TL: cons HOGE: TL: list 3 nil 各ノードに対し、そのノードの型に定義されていない素性が存在してはいけない ⊥ (ボトム)
Totally Well-Typed Feature Structures • Total Well-Typedness • 素性構造 F=<Q, q0, θ, δ> は下記の条件を満たすとき、totally well-typedと呼ばれる • Fはwell-typed • 各ノードqに対し、Approp(f, θ(q))が定義されている全ての素性fに対し、δ(f, q)が定義されていなければならない • Appropがloop-freeであるとき、2つのtotally well-typed feature structuresの単一化の結果もtotally well-typed feature structuresである
Totally Well-Typed Feature Structures • Totally well-typed feature structuresでない例 • Totally well-typed feature structureの例 1 1 HD: HD: cons cons 2 HD: HD: TL: TL: cons cons cons HD:integer TL: list TL: TL: nil nil nil list ⊥
Totally Well-Typed Feature Structures • 無限ループに陥ってしまうケース このような型階層を作らないようにするか、実装の段階でdelayed evaluationをすれば良い c.f. LiLFeSではdelayed evalutionで実現されている 1 HD: cons 2 HD: TL: cons integer HD: TL: cons integer cons HD:integer TL: cons HD: nil TL: cons ... list TL: ⊥
素性構造の包摂関係 (subsumption relation) • 2つの素性構造F=<Q, q0, θ, δ>, F’=<Q’, q’0, θ’, δ’>は次の条件を満たす全域関数(total function) h:Q→Q’ が存在するとき、FはF‘を包摂するという(F ⊑ F’) • h(q0) = q’0 • θ(q) ⊑ θ(h(q)) for every q ∈ Q • h(δ(f, q)) = δ’(f, h(q))for every q ∈Q and feature f such that δ(f, q)is defined
包摂関係(構造共有) • F ⊑ F’ F’ F d F: G: d d F: F: G: G: c b F: d c G: b e F: G: F: G: e a a a ⊥ a
包摂関係(サイクル) • F • F’ t t F: F: F: t F: t F: F: t F: t
包摂関係の考え方 • F ⊑ F‘であるということは、Fにある情報は全てF’にある、ということである • FよりF’の全てのパス値がより特殊 • パス pとは素性fの列のこと • p = f1, f2, .., fnであるとき、δ(p, q) = δ(fn, ...δ(f2, δ(f1, q))...)とδを拡張する • Fの全てのパスpに対し、θ(δ(p, q0)) ⊑θ(δ(p, q’0)) • Fに含まれる全ての構造共有はF’にも含まれている
例の前に… • 例中では簡略のためにwell-typednessにはこだわらないようにします。 • 型も⊥以外とは単一化できないとします。 • グラフのリーフ以外では型の表記を省略します。 • AVM表記にします。
包摂関係の例 • 例1 F: G: F: G: F: a G: b F: a ⊑ F: c G: H: a F: c H: a I: a J: b
包摂関係の例 • 例2 F: G: F: G: F: a H: c F: a 1 ⊑ H: c 1
包摂関係の例 • 例3 どっちがより特殊か? F: a G: ⊑ F:a G:a 1 1 ⊑ G: F: F: G: a a a
素性構造の単一化 • 素性構造 F, G ∈Fが与えられた時、 • UB(F, G) = {H ∈F |F ⊑H ∧ G ⊑H} • F ⊔G is H∈F s.t. H∈UB(F, G)and ∀I∈UB(F, G).H ⊑ I つまり、F,Gより特殊な素性構造のうち、もっとも一般な素性構造が単一化の結果
単一化の考え方 • 二つの素性構造F, Gの両方に含まれる情報が全て保存されている(F, Gの情報をマージした構造) • 制約 • 構造共有を通して情報を伝達 • サイクルを含む場合も大丈夫だけど、特に難しく考える必要はない
単一化の例 • 例1 F: G: F: G: F: G: F: a G: b F: a G: b F: a ⊔ = G: F: c G: H: a F: c H: a I: a J: b I: a J: b 異なる型の場合は、型単一化を行う。型単一化に失敗すると、全体の単一化も失敗
素性構造単一化の例 • 例2 構造共有を含む場合 F: G: F: G: F: a F: a G: b 1 G: 1 ⊔ = G: G: b G: 1 G: 1
素性構造単一化の例 • 例3 構造共有を含む場合 F: a G: H: I: J: K: 1 F: a G: H: I: J: K: L: 7 G: H: I: J: K: L: 1 4 7 2 4 ⊔ = 7 2 5 7 3 5 7 3 6 7 6 7 L:の値もaであることに注意! 構造共有を通して、F:aのaがL:まで伝搬している
素性構造単一化の例 • 例4 サイクルを含む場合 ⊔ = F:F:F:F:F:F: F:F:F:F: 1 2 F:F: 1 2 3 3
素性構造のalternatives • Denotational Model of Descriptions (Pereira & Shieber 1984) • p=a (パスと値の等式の集合) • p=q(パスとパスの等式の集合) • Deductive Closure: 上記の式で展開されうるすべての等式集合 • 包摂関係: deductive closureの包含関係 • 単一化: deductive closureの和集合 pq=x p = p x=y y=x p=x, x = q p = q p=q, pr=x qr=x ε=ε
素性構造のalternatives • Feature Algebra (Smolka 1988, 1989) • 記述に対応する全ての可能な素性構造集合 • 包摂関係: 素性構造集合の包含関係 • 単一化: 素性構造集合の積集合 • 記述と意味が一体化 • パスの値の記述、パス等式、単一化が全て素性構造集合のドメインから素性構造のドメインへの関数として定義 • Attribute-Value Logic (Johnson1988)
HPSG (HEAD-DRIVEN PHRASE STRUCTURE GRAMMAR, 主辞駆動句構造文法)
HPSG: 導入 • Head-driven Phrase Structure Grammar (Pollard & Sag 1985, 1994) • 主辞が中心的な役割を果たす文法枠組 • 辞書の情報を増やすことにより、句構造規則をできる限り減らす辞書指向 • 素性構造、単一化に基づく単一化文法の一つ • ここではPollard & Sag (1994) Head-driven Phrase Structure Grammar, University of Chicago Pressに基づいて解説
HPSG: 導入 • 主辞 • 句構造の中心的役割を果たす語・句のこと • 例:「美しい花」→「花」 • 例:「彼は美しい花を見た」→「見た」 • 直感的には、最も重要そうな要素、他に修飾先がない要素のことを指すと考えればとりあえず差し支えない
HPSG: 導入 • 語彙化文法 • CFGでは些細な方針変更の結果、ほとんどの句構造規則を書きなおさなくてはいけなくなってしまったり、、、 • 例:S → NP VP, VP → V NPとあったとき、主語のNPと目的語のNPはどのような名詞がくるのか、その分布が異なるので、NP-SUBJとNP-OBJにわけたい。しかし、そうすると、NP→N,...とある規則も全て書き直し。しかも、N→”taro“などの規則も二重に書かなくてはいけない! • 単語ごとに例外的、固有の振舞いが多い • 結果、単語を付与した非終端記号になり、そのための句構造規則を追加しなくてはいけない
HPSG: 辞書項目 • 辞書項目“she”に対する素性構造 HD: she nom CASE: nil nil noun cons SUBJ: TL: nil HEAD: PHON: COMPS: valence LOCAL: CAT: synsem cat word local SPR: VALENCE: nil SYNSEM: CONTENT: CONTEXT: fem INDEX: GEND: context ppro ref BACKGROUND: NUM: RESTR: sing female cons HD: nil RELN: PERS: TL: psoa 3rd nil INSTANCE:
HPSG: 辞書項目 • “she”に対応する素性構造 (AVM表記) word PHON: <she> SYNSEM: synsem LOCAL: local CAT: CONTENT: CONTEXT: cat HEAD: VALENCE: noun CASE: num valence SUBJ:<> COMPS:<> SPR:<> ppro INDEX: RESTR: <> ref PER: 3rd NUM: sing GEND: fem 1 context BACKGR: < > psoa RELN: female INST: 1
句構造規則 • HEAD-COMPLEMENT-SCHEMA SUBJ: COMPS: SPR: 1 3 4 HEAD COMP VAL: SUBJ: COMPS: < |> SPR: 1 2 3 2 4
句構造規則 • HEAD-SUBJECT-SCHEMA VAL: SUBJ:<> COMPS:<> SPR:<> SUBJ HEAD VAL: 1 SUBJ: COMPS: <> SPR:<> 1
PHON: <gives> VAL: SUBJ: <NP[nom, 3rd, sing]> COMPS: <NP[acc], NP[acc]> SPR: <> NP NP[3rd, sing] NP he gives her a present