410 likes | 480 Vues
再帰型神経回路網による 単語クラスタリングに関する研究. 兵藤 大輔 2002/2/18 北陸先端科学技術大学院大学 知識科学研究科 知識システム構築論講座. 本発表の流れ. 研究背景( Elman[1990]) 問題提起と目的提示 実験手法 実験、結果 まとめ. woman. book. rock. move. smell. sleep. exit. think. break. like. eat. smash. dog. cat. chase. dragon. sandwich. mouse. bread. glass.
E N D
再帰型神経回路網による単語クラスタリングに関する研究再帰型神経回路網による単語クラスタリングに関する研究 兵藤 大輔 2002/2/18 北陸先端科学技術大学院大学 知識科学研究科 知識システム構築論講座
本発表の流れ • 研究背景(Elman[1990]) • 問題提起と目的提示 • 実験手法 • 実験、結果 • まとめ
woman book rock move smell sleep exit think break like eat smash dog cat chase dragon sandwich mouse bread glass plate boy cookie girl man monster lion car see Elman[1990]の単語クラスタ 自動詞 自/他動詞 他動詞 動物 生物 人 無生物 食物 こわれる物
Output Units Hidden Units weight1.0 Input Units Context Units SRN(Simple Recurrent Neural Network) 1ステップ前の隠れ層の状態を文脈層に保持し、 時系列処理を可能にする
課題 文の中の次に続く単語の予測 Elman[1990]の語系列予測課題 教師信号は次に入力する単語 (例) “dog” “chase” “cat” 入力“dog” ・・・・出力“chase” 入力“chase”・・・・出力“cat”
Elmanの単語クラスタリング • SRNに語系列予測課題を与え、隠れ層の 活性化パターンによる単語の階層的クラスタを構築した上で、意味の近さの階層構造ができたと主張 見かけ上構文情報のみの例文から、 単語の意味のようなものをSRNが獲得した [Elman,1990]
しかし・・・・本当に“意味”を学習したの?しかし・・・・本当に“意味”を学習したの? • 隠れ層状態は単に前の単語(文脈層)情報を反映している“だけ”とも考えられる • 反映しているのは事実(○) • 意味的特徴の学習(?) • 意味的な概念は獲得していない? • 学習によるものと、文脈情報を直接使っているものとの、切り分けが明らかになっていない 目的 Elmanの主張[1990]の妥当性を検証する
定義 • 意味的・・・人・動物・食物とするような範疇 • 文法的・・・我々が品詞とする名詞・動詞のような範疇
Elman[1990]の検証方法 単語の並び(語系列)だけを反映するような他の手法を使い、間接的に検証 [Pollak,1990] RAAM(Recursive Auto-Associative Memory)
RAAMで検証する理由 問題・・・ データ幅が同一でないと、うまく階層構造 クラスタが作れない • RAAMは可変長データを同一長データとして • 隠れ層の内部表現を得られる
STACK cat Recursive Auto-Associative Memory エンコード部で作られる圧縮表現の使用 ((Nil,dog),chase) cat 出力層 文脈情報 隠れ層 エンコード部 本研究ではここでの重み更新なし ((Nil,dog),chase) 入力層
(1) RAAM隠れ層表現のクラスタリング • RAAMの隠れ層表現から、Elmanの結果と同一のクラスタができるか検証する RAAMは前の単語列を単純に反映しているので、この実験の評価が良ければ、Elmanの単語クラスタは 前の単語列を反映しただけであるといえる。
(2) SRNの学習の可能性 • SRNの入力層と隠れ層の間(入力層側)に、 文脈層の影響を受けない層を追加する Elmanの単語クラスタの成立要因のほとんどが文脈情報であると言えた。しかし入力層側での学習が行われている(行われ得る)ことは否定できない。
Output Units HiddenUnitsA weight1.0 Context Units HiddenUnitsB Input Units 文脈層と結合のない隠れ層 Elmanのクラスタが できるのなら意味的なものを学習している。
実験手順 1. RAAMの隠れ層表現からElman[1990]の ようなクラスタリングを行う ー文脈情報を直接使うだけで単語クラスタが できることを示す 2.SRNに文脈層と結合のない隠れ層を追加し、学習後、その層で階層的な単語クラスタが 得られるかを検証する -学習を行っても入力層側では単語クラスタが 構築できないことを示す
Category Example 例文生成のための規則 ルール (全16ルール) • NOUN-HUM VERB-TRAN NOUN-HUM • NOUN-HUM VERB-EAT NOUN-FOOD • NOUN-ANIM VERB-AGPAT NOUN-INANIM [Elman1990]
入力データ・・Local coding 単純な2単語、3単語の文 • (dog),(chase),(cat) • (man),(break),(glass) (man) 0100000000…00 ・・31bits (chase) 0000000100…00 (cat) 0000100000…00 例 (dog),(chase),(cat) 0100000000….00 0000000100….00 0000100000….00
クラスタリング • 入力単語に対応する隠れ層表現で階層的な木を作る。 1.個々の単語に対応する隠れ層表現 (全ての文脈における表現の平均)の決定 2.それぞれの単語の表現について他の全ての 単語の表現とのユークリッド距離を測る 3.この距離を使って階層的なクラスタの木を作る
man 1-10 第1語、第3語 追実験 girl boy lion 11-17 第3語 woman cat dog mouse 18-26 第2語 dragon monster book glass sandwich cookie plate bread rock see break move think smash eat chase 平方距離 smell sleep
1-10 第1語、第3語 11-17 第3語 18-26 第2語 man RAAMによる単語クラスタ woman girl cat dog mouse boy lion dragon monster book cookie glass bread sandwich plate rock see break chase eat move smell sleep think smash 平方距離
結果(1) RAAMの隠れ層表現からElmanの示したような 単語クラスタができた。 文脈情報を直接使うだけで、Elmanが示したような単語クラスタができる
Output Units HiddenUnitsA weight1.0 Context Units Hidden Units B Input Units 隠れ層A の表現から
1-10 第1語、第3語 11-17 第3語 18-26 第2語 man 隠れ層A(文脈層と結合)の単語クラスタ woman girl boy lion mouse dog cat dragon monster book rock sandwich bread cookie plate glass see smell chase think smash sleep break eat move 平方距離
Output Units HiddenUnitsA weight1.0 Context Units Hidden Units B Input Units 隠れ層Bの表現から
1-10 第1語、第3語 11-17 第3語 18-26 第2語 man 文脈依存なし隠れ層Bの単語クラスタ see dragon smash sleep think eat cat bread plate chase woman mouse break monster sandwich boy lion rock book glass cookie smell dog move girl 平方距離
Output Units HiddenUnitsA weight1.0 Context Units Hidden Units B Input Units 文脈の無い入力による隠れ層Aの表現から
1-10 第1語、第3語 11-17 第3語 18-26 第2語 man 文脈無し隠れ層A(文脈層と結合)の単語クラスタ see dragon smash sleep think cat bread eat plate chase woman monster mouse break sandwich boy lion rock book glass cookie smell dog move girl 平方距離
結果(2) 文脈依存の無い層では単語クラスタは 構築できなかった 学習を行っても文脈情報がない入力側には単語クラスタは構築できなかった
まとめ Elmanの示した単語クラスタは・・・・ • 文脈情報を直接使うだけで構築できる • 重みの更新のないRAAMでも構築できた • 学習を行っても入力層側には構築できない • 文脈依存のない層や文脈の無い入力では構築できなかった Elmanが示したクラスタはSRNが文法的・ 意味的なものを獲得したとする根拠を持たない
今後の課題 文例だけから学習できる「意味」が何かを明らかにするために • 文法規則のどこまでが統計的処理(文脈情報のみ)で表現できるかを調べる。 • さらに長い文において統計的処理だけで 単語クラスタを表現できるのかを調べる
特徴的な3つのクラスタ • 隠れ層B・・・特徴的なクラスタなし • 入力に文脈を持たせない場合の隠れ層A • ・・・特徴的なクラスタなし
文例だけから学習できる「意味」が何であるのかを明らかにする文例だけから学習できる「意味」が何であるのかを明らかにする • 子供は言葉の意味を事物との対応で学習 • 大きくなると過去学習した単語の意味の組合わせで、具体的な言葉や抽象的な言葉を学習していく 我々の使っている言葉の多くにもそれは言えるのではないだろうか? 文例だけでもある程度まではうまくいくのではないか
1-10 第1語、第3語 11-17 第3語 18-26 第2語 man RAAMによる単語クラスタ(ユニット数10) woman boy monster dog lion dragon mouse girl cat book rock bread glass sandwich cookie plate break move eat smell see smash chase think sleep 平方距離
1-10 第1語、第3語 11-17 第3語 18-26 第2語 man 学習無しSRNの単語クラスタ girl boy lion woman cat dog mouse dragon monster book glass sandwich plate cookie bread rock see break move think smash eat chase smell sleep 平方距離
Bakerのパラドックス(1979) • 子供の言語獲得 • 「このような文は文法的でない」という情報がないのに、過剰に生成される文法的でない文をそぎ落としている。 否定証拠欠如問題、そぎ落とし問題。
X (NIL,X) NIL NIL (NIL,X) X RAAM STACK1 TOP 出力層 デコーダ 中間層 STACK2 エンコーダ 入力層 STACK1 TOP Y
STACK1 TOP cat chase dog STACK2 chase dog NIL (NIL,dog) (NIL,dog) (((NIL,dog),chase),cat) ((NIL,dog),chase) (NIL,dog) ((NIL,dog),chase) ((NIL,dog),chase) (NIL,dog) cat ((NIL,dog),chase) (((NIL,dog),chase),cat) NIL STACK1 TOP chase cat cat 例文 dog chase cat
STACK1’ TOP’ chase dog cat STACK2 (((NIL,dog),chase),cat) ((NIL,dog),chase) dog NIL (NIL,dog) NIL (NIL,dog) (NIL,dog) ((NIL,dog),chase) (NIL,dog) cat ((NIL,dog),chase) (((NIL,dog),chase),cat) chase ((NIL,dog),chase) STACK1 TOP chase cat cat 例文 dog chase cat デコーダ エンコーダ
RAAMの隠れ層表現 隠れ層ユニット数をNとすると • 入力 “dog” “chase” “cat” • (NIL,dog) ・・・・N次元ベクトル • ((NIL,dog),chase) ・・・・N次元ベクトル • (((NIL,dog),chase),cat) ・・・・N次元ベクトル データ幅をそろえることができる