大規模な計算資源がないとダメ

今日は ACL 読み会。今学期は論文紹介の回数を少なくしていたし、ACL の開催日程的に夏休みに入る前に読み会を開催できそうだったので、ここに入れてみたのである。人数的に2日間の開催となった。

読んだ論文リストとスライドは Google Spreadsheet にまとめてあるが、初日をまとめるとクロスリンガル、BERT、非自己回帰モデル、といったところだろうか。

クロスリンガル・マルチタスクの学習が容易にできるようになった、というのは深層学習で良くなったことだと思っている(分析は必ずしも容易ではない)。個人的には最近言語そのものに関する興味がまた復活してきたので、クロスリンガルな分析の論文が増えてくれて楽しくなってきた。しかしアイデア一発でできるのは(下に書くような)大規模な言語資源や計算資源を持っていなくても研究できるという利点があるものの、先を越されると二番煎じには意味がないという厳しさもあるし、アイデアを豊富に思いつかないと継続的に研究ができないという難しさもある。まあ論文を書くのは手段であって目的ではないので、論文が出せるかどうかはとりあえず置いておいてこういう方面の知見は貯めていきたい。

BERT はここまで使われるようになるともはや基盤技術の一つと言ってもよい気がするのだが、結局自然言語処理の観点からすると大規模データで大きなパラメータのモデルを学習するとよい(途方もない GPU 資源が必要だし、それらを使えるようにするインフラも重要)、という身も蓋もない話のように見える(これまでできなかったことができるようになった、ということを示すのが研究なので、それは非常にインパクトのあることなのだが)。あと自分はまだなぜ BERT というか Transformer がうまくいくのかが納得できていない。Hopfield Networks と関係があるという話 Hopfield Networks is All You Need も出ていて、結局 Transformer は(離散的ではなく、連続的にやっているという違いはあるが)パターンを丸覚えしているということのように見えるが、そうすると結局大規模データが必要なのではないかなあ(上に書いたようにニューラルネットワークではマルチタスク学習がしやすいので、自己教師あり学習で事前学習しておくことである程度この問題を軽減できる柔軟性がある、というのがポイントなのだろう)。

非自己回帰モデルについては昨年から広く使われるようになってきたが、研究室でもようやく試す人が増えてきたので、色々違いが分かってきてよい。普通の設定で非自己回帰モデルを使うと、使いたくなる利点は速度が速くなるということくらいになってしまう(知識蒸溜と組み合わせると精度も良くなることはありうる)のだが、自分はそれ以外の良さが何かないかなぁと考えている。自己回帰モデルは言語のように線形の構造を持ったデータ構造の生成に向いた構造なのだが、非自己回帰モデルは非自己回帰モデルは階層構造を持ったデータ構造の生成に向いているように見えるので、この2つのちょうどいいところが取れるといいんじゃないかなあ(自己回帰モデルが O(n)、非自己回帰モデルが O(k) とすると、O(k log n) くらいで精度も高くそこそこ速いモデルが作れるんじゃないか、みたいな)。