More Related Content
More from Jiro Nishitoba (7)
深層学習による自然言語処理勉強会3章前半
- 2. 今回の範囲
• 第3章 言語処理における深層
学習の基礎
• 3.1 準備: 記号の世界とベクト
ルの世界の橋渡し
• 3.2 言語モデル
• 3.2.1 概要
• 3.2.2 確率モデルの定義
• 3.2.3 順伝搬型ニューラル言語モ
デル(FFNN言語モデル)
• 3.2.4 再帰ニューラル言語モデル
(RNNLM)
• 3.2.5 言語モデルの評価
• 3.2.6 言語モデルからの文生成
• 3.2.7 文字単位の言語モデル
• 3.3 分散表現
• 3.3.1 概要
• 3.3.2 歴史的背景
• 3.3.3 獲得方法
• 3.3.4 利用方法
• 3.3.5 今後の発展
- 3. 3 言語処理における深層学習の基礎
3.1 準備: 記号の世界とベクトルの世界の橋渡し
• 記号変換が必要
• 自然言語処理におけるデータは離散的な「記号」
• ニューラルネットで扱えるのは連続値の「ベクトル」
• 変換方法
• One-hot ベクトル(記号からベクトルへ)
• Softmax関数(ベクトルから記号へ)
- 4. 3.2 言語モデル
3.2.1 概要
• (確率的)言語モデル
• 自然言語による文が生成される確率をモデル化したものであり、文や
文書の自然言語らしさを求めるのに使われる
• BOS, EOSを追加した単語列を全てベクトル化して算出する
• 言語モデルの例
• N-gram
• 出現頻度の数え上げで求められるので計算コストが低い
• ニューラル言語モデル
• N-gramと比較して計算コストが非常に高い
• N-gramよりも性能が優れている
- 5. 3.2.2 確率モデルの定義: 条件付き分布への分解
• 文の生成確率を直接モデル化するのは難しい
• そのために仮定を置く
• 単語の出現確率はそれ以前に出現した単語により決まる
• 文の生成確率はBOSから始まりEOSで終わる単語列が先頭から順に生
成される確率を掛け合わせて算出する
• 単語の出現確率は直前数N個に出現した単語により決まる ← N-gram
- 8. 3.2.5 言語モデルの評価
• 言語モデルはパープレキシティ(perplexity, PPL)で行う
• 次の単語を予測する確率分布にどれだけのばらつきがあるかを表す
• 非負の値
• 全体的に確率が0に近づけば大きな正の値になる
• 確率が1に近づけば0に近づく
• 良い言語モデルはデータと一致する単語だけ高い確率をもったばらつきの小
さい分布になるはずなので0に近づく
• 有名データセット
• Penn Treebank
• One Billion Word
• Hutter
- 11. 3.3 分散表現
• 分散表現
• 記号を計算機上で扱うための方法論
• ニューラルネット的には部品という位置づけ
• 自然言語処理的にはそれ単体でも研究されている
- 12. 3.3.1 概要
• 離散オブジェクト
• 人や物の名前、概念のように物理的に計測できる量を伴わず、通常記号を用
いて離散的に表現するもの
• 分散表現
• 任意の離散オブジェクトの集合Vに対して、各離散オブジェクトv∈Vにそれ
ぞれD次元のベクトルを割り当て、離散オブジェクトをD次元ベクトルで表現
したもの
• 自然言語処理で単語を対象にした場合、「単語分散表現」「単語埋め込み」
という
• ベクトル空間により距離や演算が定義できるのでそれを関係性や類
似度にマッピングして用いる
- 13. 3.3.2 歴史的背景
• ニューラルネット研究からの視点: 分散表現
• 人間の脳が新しい概念を覚える際に既知の事象や概念を結びつけて覚
えるため
• 個々の事象は多様な特徴で表現されると考えれていたため
• local representation(局所表現)は逆にほとんど疎のベクトル
• one-hot vectorはlocal representationに分類される
• 2000年ごろにニューラル言語モデルに単語埋め込みが導入され、そこ
から分散表現が普及した
- 14. 3.3.2 歴史的背景
• 自然言語処理からの視点
• 自然言語処理の基本単位である「単語」が持つ「意味」を計算機でど
う扱うかという研究から始まる
• 分布仮説(単語の意味はその単語が出現した際の前後に出現した単語に
より決まる)を元に単語の類似度を与える
• 主成分分析(PCA)
• ディリクレ配分(LDA)
- 15. 3.3.2 歴史的背景
• 両分野の融合
• ニューラル言語モデルの登場により上記二つの研究が融合
• 共に同じ条件からベクトルを取得
• ニューラル言語モデル: 前数単語を利用
• 自然言語処理: 前の単語のみを利用した分布仮説
• distributional と distributedがあるが深層学習の文脈ではdistributedを
用いる
- 16. 3.3.3 獲得方法
• よい分散表現の条件
• 意味的により類似するオブジェクトはより近い位置に配置
• 逆の意味になる離散オブジェクトは原点を挟んで逆側に配置
• ニューラル言語モデルを用いた獲得方法
• 普通にニューラル言語モデルを学習する
• 埋め込み層の変換層が各単語の分散表現に一致
- 17. 3.3.3 獲得方法
• 対数双線形モデルを用いる獲得方法
• 計算量的な課題に対応するためにニューラル言語モデルから派生し、
単語分散表現を獲得するのに特化した方法
• ニューラル言語モデルはデータ量が大きいほど性能があがるが実際には大規模な
ニューラル言語モデルを計算するのは困難
• 数百万語彙のニューラル言語モデルを計算するのは困難
• word2vec(及び対数双線形モデル)の登場
• Continuous Bag of Words
• Skip-gram
- 19. 3.3.3 獲得方法
• 負例サンプリング
• 詳細は4.3.4章にて
• 識別モデルを学習していることに相当
• 実データの確率分布からサンプリングされたデータ
• 別の確率分布からサンプリングされたデータ
• (3.22)と(3.25)を比較するとモデルの形式が変わっていることがわかる