「教師あり学習」はもう古い?正解データを自動生成できる「自己教師あり学習」を解説します
この記事で学ぶこと
ここ数年、人工知能において以前は鉄板だった「教師あり学習」から「教師なし学習」への大きな流れが見受けられます。特にトランスフォーマーを利用した事前学習を行うBERTなどの影響が大きいですが、そのほかにもGeoffrey HintonらによるContrastive Learningによる事前学習なども注目されています。
今回は、これらの事前学習に共通する手法で「教師なし学習」だけど正解データを使う「自己教師あり学習」について解説します。
教師なし学習
教師なし学習(Unsupervised Learning)は正解データを必要としない機械学習の種類であり、k平均法(k-means)に代表されるクラスタリングや主成分分析(PCA)などの次元削減がよく例として上げられる。これらの教師なし学習のアルゴリズムは正解データを全く必要としないという点で「正当な」教師なし学習とも言える。
それに対して、正解データを使うのに「教師なし学習」と呼ばれる学習手法がある。通常、正解データを使う場合は、「教師あり学習」(Supervised Learning)になるのだから、これは如何なるものなのか。
実は、正解データを使うのに「教師なし学習」と呼ばれる手法においては、正解データを前もって準備する必要がない。ただ、それだけのことだ。
具体的にいうと、自然言語処理のモデルを訓練する際に、文章の一部を隠して周りの文脈から隠されたトークン(単語など)を予測させるMasked Language Modelingなどがある。これはGoogleの開発したBERT(2018年)で事前訓練に使われたものだ。実際には「教師あり学習」なのだが、正解データを訓練データから自動的に作り出しているので「教師なし学習」として扱われている。しかし、クラスタリングなどと比べると明らかに「教師なし」ではない。よって、紛らわしくもあった。
自己教師あり学習
そこでMeta(前Facebook)のAI研究者であるYann LeCunは、「自己教師あり学習」(Self-supervised Learning)という呼び方を使うようにしているとツイートした。もう3年ほど前のことだ。
彼は、自己教師あり学習を「入力の一部を他の部分から予測する」学習法として定義している。よってBERTでは「教師なし事前学習」と呼ばれていたものが、後の論文では「自己教師あり事前学習」と呼ばれた。特にMetaからの論文ではそうだ。
最近では自己教師あり学習という呼び方も馴染み深くなっている。というかBERTの事前学習などを「教師なし」と呼ぶのはなんだかしっくり来ない。あくまで個人の感想ではあるが。
BERTの事前学習
ちなみに、BERTで行われた事前学習で文章の穴埋めを使ったMasked Language Modelingをおこなっている。それがどんなものかを試しにやってみるのは簡単で、以前に書いた以下の記事が参考になる。
また、英語ではあるが、BERTについて解説した記事をMediumにあげたので、興味のある方は参考にしてみてください。
これからの自己教師あり学習
教師あり学習の最大の利点は正解データがあることで、逆伝播法によって損失関数の値から各変数への勾配を計算することができる点だ。ただし、正解データを準備しなくてはならないのが最大の弱点でもある。例えば、自動運転の学習を従来の教師あり学習で行う場合を想像すれば、それがいかに大変かがわかるだろう。データを集め、それぞれにラベルをつける作業が必要になる。膨大な時間と労力が必要だ。
自己教師あり学習ならば、正解データを自動生成できるので、これまで学習に使用できなかったデータセットを広く利用することが可能となる。正解データがあれば、逆伝搬法も使える。これによってまずはデータから特徴量を学べるように事前学習を行なって、その次に必要なタスクに対してファインチューニングを施せば良い。もちろん、具体的にどうすれば良いのかは目的やデータによるので千差万別だが、方向性としてはとても期待できる。更なる研究や試行錯誤を経て進化していくだろう。
例えば、Geoffrey HintonのグループによるSimCLRなどはそのいい例だ。2020年に発表された論文だが、ImageNetによる画像分類のタスクで大きな成功を収めた。SimCLRでは同じ画像に対して画像の水増し(Data Augmentation)を行い、二つのバージョンの画像を生成する。モデルは両方の画像から不変的な特徴量を引き出す。つまり、物体の色や形が多少変わっても本質的な性質は同じであることを利用している。よって両方の画像からの特徴量の差が損失地として計算され逆伝播される。この事前学習によってモデルは様々な画像から本質的な特徴を学べるし、正解データを前もって準備する必要もない。
以上により、これからは自己教師あり学習が活躍する場面がどんどん増えていくと予想できる。繰り返しになるが、特にBERTの事前学習のように、特徴量を引き出すための訓練での応用が進むだろう。その特徴量を転移学習・ファインチューニングで様々なタスクで使えるようにすればよく、そこでは教師あり学習が行われるが必要となるデータはより少なくて済む。
そんなわけで、AIを勉強される方は「自己教師あり学習による事前学習」+「ファインチューニング・転移学習」を注目しておいた方が良いでしょう。
この記事が気に入ったらサポートをしてみませんか?