「BERT」の前に自然言語処理をきちんと学ぶ!ーWebアプリ制作日記番外編

AIアプリ制作
いちばん左が「BERT」

「2019年はBERTとTransformerの年だった」(AINOW 2020/2/26)

というように、

現在、自然言語処理(NLP)分野の研究が過熱している。

AI業界では、

画像処理の次は自然言語処理

という雰囲気なのだ。

そこでまずAINOWの記事から、
自然言語処理のざっくりした流れを復習したい(*1)

もともと、
ディープラーニングの手法を応用した自然言語処理は、
時系列データを処理する「RNN」(*2)と、
その発展形である「LSTM」(*3)が使われてきた。

しかし、
この「LSTM」は構造が複雑だという欠点があった。

こうしたなか、
2017年6月に「Transformer」「Attention」(*4)と呼ばれる手法が発表された。
これらは、
「LSTM」のような複雑な構造を使わずに高性能を実現したため、
言語モデル開発に大きな影響を与えた。

そして、2018年10月、
双方向的に「Transformer」を使ったBERTが発表され、
画期的な性能を実現した。

さらに、2019年10月25日。
Googleが、検索エンジンに「BERT」を採用したことを発表。
多くのITメディアで

BERTは、検索エンジンに大きな影響を与える過去最大級のアップデートである」

「人間の言語能力を超える新しい技術」

などと賞賛の声が上がった。

ということで、せっかくAIを学習するなら、
そんな「熱い」自然言語処理をやりたい!

と思い、
キカガク長期コース
「機械学習を活用したWebアプリ制作」
のテーマに、自然言語処理を選んだ。

しかし、
初心者がいきなり、
「BERT」のような最先端のモデルを理解できるわけはない。

なので、今回は、
「LSTM」を使った「Seq2Seq」モデルで、
Webアプリ制作に取り組む。

周回遅れの技術であるにせよ、
基本は大切だ。

そのしくみを
『ゼロから作るDeep Learning 2』

NLP必読書No.1! 一読したがもう一度読む!

などで確認しながら、
アプリ制作を進めていきたい。

*1 放送大学テキストの改訂版 自然言語処理』によると、現在、ニューラルネットワークを用いた手法がブームだが、自然言語処理の歴史は、古くは1940年代半ばまで遡ることができるという。この本は、モデル構築には役には立たないが、自然言語処理の基本がていねいに説明されていて、必読の一冊!

ほんと、教科書って感じの本

*2 R N N(Recurrent Neural Network)は「再帰的ニューラルネットワーク」と訳され、ループする経路を持つことで時系列データを扱えるのが特徴。図は『ゼロから作るDeep Learning2』より。

図5ー6 ループする経路を持つRNNレイヤ

*3 LSTM(Long short-term memory)は、RNNの欠点である勾配消失や勾配爆発を解決する「ゲート付きRNN」として1995年に登場した。forget gate(忘却ゲート)remember cell(新しい記憶セル)を持つ。図は、Qiita「わかるLSTM」より。

図のLSTM Blockにしかけがある。

*4 Attentionとは、連続したデータを扱う際に過去の重要なポイントに着目する(=Attention)ための手法。『ゼロから作るDeep Learning2』ではここまでフォローされている「8章 Attention」。また「Attention Is All You Need」というあまりにも有名な論文がある。(参考までにキャプチャを)

いつか読みたいけど、英語やもんなぁ〜

Follow me!