NLP

NLPのタスクを紹介するだけの簡単なページ(0)

NLPってなんぞ?

 Natural Language Processing とは日本語では主に 自然言語処理 と呼ばれる研究分野を指します。
 その名の通り自然言語、例えば英語だったり日本語だったりを対象としてこれを解析するのが目的になります。最近は主に機械学習 (深層学習に限らないことに注意して下さい) を解析するためのツールとして用いています。

 たとえば "林檎" と "アップル" , "禁断の果実" はほとんど同じ意味を指しますが、これをコンピュータに学習させるなどが有名な研究として挙げることが出来ます。
 これをNLPっぽく言うと、単語の分散表現を得る 、と言い、最近の有名な手法としては FastTextなどを挙げることが出来ます。
 
 勿論日系大企業ならば適当な人間をボランティアで8万人くらい拾ってきて手打ちなりさせれば割と簡単にこれを得ることが出来ますが、これを機械学習等を用いることで余計な人死にを出さずに解決することができるのです。
 

タスクってなんぞ?

 機械学習等の問題を解く際には、それぞれのシステムに最適なアルゴリズムを作る方が良いということは想像に難くないと思いますが、これには幾つか問題が生まれます。
 
 その最たるものに、研究が進まないということが上げられます。
 具体的に言うと、A,B,Cという似通った問題それぞれを別の問題として扱うと、それぞれの問題を解いた際に得られる知見が共有できないということです。またそれぞれの問題の解法がどのくらい有効なのかを比較できないということも挙げられるでしょう。
 
 また主に機械学習に限った話をすると、データが手に入りにくい、ということも挙げられます。機械学習は主にはデータが多い方が良い精度が出ることが言われており、(ただゴミを集めればええやろ派がいるので、個人的にこの考え方はあんまり好きではないです…)

 このため、研究者間である程度一般的な問題を設定して、その問題を解いてその精度を競うことでより良い研究成果を作っていきます。

 この問題を タスク と呼びます。

このページを作るモチベーション

 最近 BERTFastText などがめざましい成果を得ていますが、特に BERT はどんな タスク を解いているのか不明瞭な点が多いです。
 これらを解説して、日本でもこれらの知見を生かし、より日本でNLPの研究が進んでいくことを期待しています。
 あと日本語のデータセットもっと増えないかなぁチラッチラッ

参考文献

BERT https://arxiv.org/abs/1810.04805
FastText https://fasttext.cc/
汎用言語表現モデルBERTを日本語で動かす(PyTorch) https://qiita.com/Kosuke-Szk/items/4b74b5cce84f423b7125

他ページヘのリンク

NLPのタスクを紹介するだけの簡単なページ(0)
NLPのタスクを紹介するだけの簡単なページ(1) ~SQuAD編~
NLPのタスクを紹介するだけの簡単なページ(2) ~CoLA編~
NLPのタスクを紹介するだけの簡単なページ(3) ~QQP編~
NLPのタスクを紹介するだけの簡単なページ(4) ~STS編~
NLPのタスクを紹介するだけの簡単なページ(5) ~MRPC編~