輪読会「BERTによる自然言語処理入門」第1回

はじめに

てくますプロジェクトでは、てくますゼミと呼ばれる学習会を開催しています。

少人数であーだこーだ議論しながら、考える楽しさを分かち合うことを大切にしています。

現在は「BERTによる自然言語処理入門」という本を読み進めています。

今回は本書第1回の輪読会ということで、1章と2章を読み進めました!

本記事では、今回の勉強会で学んだことをざっくりと紹介していきます。

学習内容

BERTとは

BERTは2018年にGoogleが発表した自然言語処理モデルです。BERTは、自然言語処理の様々なタスクにおいて当時の最高スコアを叩き出しました。

BERTには次の二つの学習過程があることが特徴です。

  1. 事前学習
    大量の文章のデータを用いて汎用的な言語のパターンを学習する
  2. ファインチューニング
    比較的少数のラベル付きデータを用いて、特定のタスクに特化するように学習する

はじめにしっかり事前学習をしておくことで、ファインチューニング(個別タスクに対しての調整)は少しで済むということです。

ニューラル言語モデル

言語モデルは、文章の出現のしやすさを確率によってモデル化します。例えば、「私はパンを食べた」は「私は家を食べた」より自然な文章でしょう。

文章の出現のしやすさをモデル化するには、ある文脈下でのトークンの出現確率をモデル化すればよいです。(トークンとは、文を適当な単位に分割したものです)

ニューラル言語モデルでは、これをニューラルネットワークを用いて実現します。

BERTが誕生するまでに提案されたニューラル言語モデルには、以下のようなものがあります。

  • Word2Vec
    トークンに対して文脈非依存の分散表現(ベクトル表現)を与えるモデル
    ある位置の単語を周りの単語から予測するCBOWなど
  • ELMo
    トークンに対して文脈に応じた表現を与えるモデル
    双方向LSTMを用いている

自然言語処理の歴史についてはこちらの記事にまとめています。もしよければ、こちらも読んでみてください。

また、自然言語処理を学ぶために、本書の前に学習した『ゼロから作るDeep Learning② 自然言語処理編』の活動記録はこちらです。

最後に

新シリーズが始まりました。これからBERTについて学んでいきます。メンバー8人で頑張って読み進めていきます。

今回はまだ、自然言語処理の復習が中心の回でした。なので記事もあっさりです。

次回から本格的にBERTを使っていきます。

では、また!

本シリーズの記事はこちら

各ゼミの第1回記事はこちら