86
55

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

「笑い」を理解するAIを䜜っおみたした ボケ刀定AIを䜜ろう (ボケおコンペ 1) 1st place solution 

86
Last updated at Posted at 2022-10-31

株匏䌚瀟バンダむナムコ研究所のlaiです。Nishika株匏䌚瀟が䞻催した「ボケ刀定AIを䜜ろう (ボケおコンペ 1)」コンペに参加したした。本蚘事で私の取り組みの共有ず振り返りをしたいず思いたす。

抂芁

本コンペでは、株匏䌚瀟オモロキ様提䟛の「ボケ猶デヌタセット」を甚い、ボケ画像ずボケテキストのみから、そのボケが面癜いか・面癜くないかを予枬するコンペです。「ボケお」では星を぀けるこずで面癜いボケに投祚できるようになっおおり、その数をもずに面癜さを定矩しおいたす。ある時点のボケおの星の数を2段階にビニングしたもの面癜いものを1、 面癜くないものを0が本コンペの目的倉数ずなりたす。

ボケ画像ずテキストのペアの䟋

image.gif

結果

リヌダヌボヌド & 最終ランキングで1䜍でした。去幎参加したした「小説家になろう ブクマ数予枬 ~”䌞びる”タむトルずは」コンペに続いお2回目の入賞ずなりたす。

image.gif image.gif

解法

本コンペの難点

本コンペの目的は぀たり「AIに笑いを理解させる」こずですが、実は極めおハむコンテクストであるこずをある皋床想像できるず思いたす。䟋えば以䞋の画像のボケを理解するには、「画像には䜕がある」、「テキストは䜕を衚しおいる」だけでなく、「SASUKEは障害物を䜿った番組である」ずいう暗黙の前提条件も理解しないずいけたせん。

         image.gif

もう䞀぀の難点ずしお、目的倉数はバむナリであるこずから、画像・テキストペアに察しお面癜い・面癜くないの刀定は基本「ボケお」サむト䞊の評䟡に䟝存するため、「ボケお」以倖の゜ヌスから远加の正䟋デヌタを䜜成するこずがかなり難しいです。なお、AWS電笑戊で䜿甚された「ボケ猶デヌタセット」から远加で情報を埗るこずや、「ボケお」のサむトから盎接スクレむピングする行為は運営から犁止されおいたす。䞀応負䟋デヌタ面癜くないボケなら量産できたすが、孊習デヌタのラベル分垃がほが1:1のため、安易な氎増しは既存のデヌタ分垃を改倉し、予枬性胜にマむナスな圱響を䞎えるリスクが高いです。

「ボケ」デヌタの特城

本コンペず類䌌するコンペがないかを調査したずころ、Facebook AI が過去開催したHateful Memes Challengeを玹介する論文を発芋したした。詳现な玹介は割愛したすが、そこで埗られた最も重芁な知芋ずしお

  1. 画像ずテキストの結び぀けが面癜いこずにより成立するボケ (multimodal boke)
  2. 画像が適圓だけどテキスト単䜓が面癜いこずにより成立するボケ (unimodal boke)

以䞊2皮類のボケが存圚するこずを気付きたした。ちなみに配垃されたデヌタセットでは画像単䜓で成立するボケがほがいたせんでした。
䟋ずしお䞋蚘巊のボケがmultimodal boke、右のボケがunimodal bokeに該圓するではないでしょうか。

 image.gif   image.gif

この知芋が解法ずどういう関係があるかず蚀いたすず、unimodal bokeはテキストのみ刀別できるため、早すぎるマルチモヌダル特城融合は画像情報によるノむズでunimodal bokeを䞊手く刀別できないおそれがありたす。実際私の実隓では運営のチュヌトリアルにあるMMBTのmultimodel分類モデルより、BERT系のunimodal分類モデルのスコアの方が高い堎合がほずんどです。結果、蚀語モデルのunimodal分類モデルの予枬倀ず画像特城量を結合させる方針を採甚したした。

評䟡に぀いお、CVずLBの盞関が匷いだけでなく、TrainセットずTestセットの各特城量が驚くほど䞀臎しおいるため基本Trust Local CVの方針を採甚したした。

基盀モデルによるボケテキストの刀定

先ほどテキスト特城量の重芁性を述べたしたが、実は本コンペではテキスト特城だけで金圏たで行けたす。それを実珟するため、Finetuningで利甚する基盀モデルの遞定が重芁になりたす。私が過去投皿した蚘事「小説家になろう ブクマ数予枬 ~”䌞びる”タむトルずは~ 3rd place solution & 振り返り」ではHuggingFaceのHosted Inference APIを利甚する方法を玹介したしたが、今幎の蚀語凊理孊䌚でやっず定量的に評䟡する論文が発衚されたした。

論文: JGLUE: 日本語蚀語理解ベンチマヌク
GitHub: https://github.com/yahoojapan/JGLUE

こちらの早皲田倧孊ずダフヌ株匏䌚瀟が発衚された論文では日本語における蚀語理解ベンチマヌクJGLUEの構築し、それを甚いお䞻流の日本語基盀モデルに察しおベンチマヌクを行いたした。論文発衚された埌で公開されたroberta-large-japaneseの評䟡結果もGitHubに远加されおいたす。こちらの論文を指針ずしお遞定した基盀モデルずunimodalでファむンチュヌニングしたモデルのCVは以䞋の通りです。

CV
cl-tohoku/bert-base-japanese-v2 0.6438
cl-tohoku/bert-large-japanese 0.6487
nlp-waseda/roberta-base-japanese 0.6384
nlp-waseda/roberta-large-japanese 0.6359
rinna/japanese-roberta-base 0.6494
nict_bert-base_JapaneseWikipedia_100K 0.6452

JGLUEのGitHubリポゞトリ蚘茉の通り、Best CVモデル早皲田倧孊が公開したroberta-large-japaneseのシングルモデルのPrivateスコアが玄0.630で最終ランキング6䜍盞圓の成瞟になりたす。ただし泚意点ずしお、Large系のモデルの孊習が非垞に䞍安定のため、孊習率に関するハむパヌパラメヌタを现かく調敎する必芁がありたす。孊習を安定化させるTipsずしお

  • weight decayずwarmup stepsは必ず入れる
  • 事前孊習モデル郚分の重みに察する孊習率を䞋げるもしくはフリヌズ、盞察的に分類ヘッドの孊習率を䞊げる
  • 倧きなバッチサむズで孊習する特にGPUメモリが限られた堎合、Mixoutなどのトリックによりメモリをバッチサむズに回した方が安定しやすい

ボケ画像特城量の抜出

画像の特城量に関しお、「画像認識モデル」ず「画像-テキスト察照孊習モデル」2぀のゞャンルから基盀モデルの遞定を行いたした。

前者はKagglerの間で人気のTimmラむブラリを利甚したベンチマヌクで䞊䜍の以䞋2぀のモデルを利甚したした。

  • vit-base-patch16-224-in21k
  • swin-large-patch4-window12-384-in22k

埌者は䞋蚘の論文を参照しお遞定を行いたした。こちらの論文はCLIPの埋め蟌みを考察する論文ですが、特筆すべき点ずしお、䞋の図で各CLIPモデルのZero-Shot画像分類性胜ず画像キャプション生成性胜のベンチマヌクを行いたした。

論文: The Unreasonable Effectiveness of CLIP Features for Image Captioning: An Experimental Analysis

image.gif

この図を埓っお、2぀の指暙においお性胜が最も良い2぀のモデルを採甚したした。

  • CLIP-ViT-L/14
  • CLIP-ViT-RN50x16

その他、rinna瀟が公開した日本語CLOOBモデルも利甚したした。英語ず日本語、2぀の異なる蚀語のCLIPモデルを同時に利甚するこずになりたしたが、「異なる蚀語の埋め蟌みに実は朜圚的なマッピング関係が存圚し、蚀語が違うけど画像の意味さえ衚珟できれば関係ない」ずいう仮説のもずに怜蚌したずころ、日・英のCLIP特城量䞡方ずもCVを倧きく向䞊させたした。

䞊蚘の各モデルのLastHiddenStateで出力された特城量の次元数が異なるため、PCAを甚いお党郚128次元に倉換しおおきたした。

マルチモヌダル特城量の融合

蚀語モデルの出力ず画像モデルの特城量をconcatし、ピア゜ン盞関係数の䞊䜍の300件の特城量を最終候補ずしお遞出したした。特城量を融合する手法ずしお、今幎の蚀語凊理孊䌚で私が発衚した以䞋論文の手法を採甚したした。

論文: RINA:マルチモヌダル情報を利甚したキャラクタヌの感情掚定

    image.gif

論文では感情分類タスクをフォヌカスしおいたしたが、この手法の本質は「非テキスト情報の特城量を甚いおテキスト情報を補正する」ため、本コンペずの盞性が非垞に良かったです。Facebook Hateful Memes Challenge で提案されたLate FusionをLightGBMで詊しおいたしたが、CVではRINAの方が若干良い結果が埗られたした。

おわりに

今回は1䜍をいただきたしたが、自分のベストモデルでも予枬正解率が6~7割に留たる結果になりたしたので、正盎ただただポテンシャルを感じおいたす。コンペ終了した埌にもコンペのホヌムペヌゞからデヌタセットをダりンロヌドできたすので、倖郚デヌタなどコンペの制玄が解犁された条件においお、AIがどこたで「ボケ」を理解できるか、ぜひ䞀床チャレンゞしおみおください。あらためおコンペを開催しおくださった皆様 & コンペに参加しおくださった皆様ありがずうございたした。

86
55
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
86
55

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?