半教師学習と弱教師学習の違い

はじめに

ブログを書くのは初めてなので、不慣れなことが多いです。読みにくいかもしれませんが、その辺はご了承ください。

さて、技術ブログ第1投稿目として取り上げるのは、「半教師学習と弱教師学習」です。昨今とてもAIが流行っていますが、この2つのワードを混同して使っている人が多いのではないかと思います。そこで、両者の違いについて解説していきたいと思います。

 

半教師学習(Semi-Supervised Learning)


教師あり学習(Supervised Learning)と教師なし学習(Unsupervised Learning)の中間的な学習方法です。教師あり学習では、学習データにおいてすべてラベルが付いている状態です。一方、教師なし学習では、学習データにおいてラベルが付いていない状態で学習をすることをいいます。半教師学習というのは、学習データにおいてラベルが付いているものと付いていないものが混在している状態で学習をすることです。

 

f:id:takeHERO:20191112230929p:plain

教師あり学習


 

f:id:takeHERO:20191112232014p:plain

半教師学習

 

弱教師学習(Weakly Supervised Learning)

あるタスクのために学習するときに、そのタスクに合致したデータではなく、別のタスク用に作られたデータを使用することを言います。例えば、物体検出のタスクをする際に、画像中で検出したい物体を矩形(Bounding Box)で囲ったデータではなく、画像ごとに検出したい物体が写っているか否かのラベルが付いているデータを使用する、といった感じです。

当然、検出したい物体を矩形で囲ったデータを使用する方が精度は良いです。ただ、矩形を囲う作業(アノテーション)は、画像ごとに存在するか否かのラベルを付ける作業と比べて、時間的にも費用的にもコストが高いので、このような手法も注目されています。画像ごとの存在有無であれば、音声入力とかでも簡単にアノテーションできますしね。

 

f:id:takeHERO:20191112231909p:plain

教師あり学習(物体検出)

f:id:takeHERO:20191112231912p:plain

弱教師学習(画像分類データセットで物体検出を学習する例)