Slide 1

Slide 1 text

AI 2023.04.21 Yuki Abe 株式会社ディー・エヌ・エー Editing Models with Task Arithmetic

Slide 2

Slide 2 text

AI 2 ● 阿部 佑樹 ● 経歴 ○ 慶應義塾大学 今井研究室 ○ 2021年 DeNA入社 ● 趣味 ○ コンペティション参加 @yabea ○ ゲーム ■ スプラ ■ ポケスリ ○ ポーカー 自己紹介

Slide 3

Slide 3 text

AI 3 G. Ilharco, M. Ribeiro, M. Wortsman, L. Schmidt, H. Hajishirzi, and A. Farhadi, "Editing models with task arithmetic" inProc. of ICLR, 2023. 紹介論文: Editing Models with Task Arithmetic ※ 本スライドにおいて注釈がない画像は全て論文から引用したものです ● Task Arithmetic という性質を画像や言語の幅広い分野で実験的に証明 ○ 重みの引き算による忘却 ○ 重みの足し算による学習 ○ タスクのアナロジーの活用 ● ICLR 2023 採択 https://iclr.cc/virtual/2023/poster/12254

Slide 4

Slide 4 text

AI 4 項目 01|タスクベクトルについて 02|減算による忘却 03|加算による学習 04|タスクのアナロジーの活用

Slide 5

Slide 5 text

AI 5 01 タスクベクトルについて

Slide 6

Slide 6 text

AI 6 ● タスクベクトル ○ ファインチューンによって更新した分の重み ○ [Task vector] = [Fine-tuned weight] - [Pre-trained weight] ● アーキテクチャが同じモデル間で要素ごとの加算が可能 ○ [New model] = [Old model] + λ [Task vector] ○ λ はハイパラ ■ 実験ではValidationデータで調整 タスクベクトルとは

Slide 7

Slide 7 text

AI 7 02 減算による忘却

Slide 8

Slide 8 text

AI 8 ● モデルから望ましくないバイアスや挙動のみを取り除く ○ 例: ■ 画像分類の結果がOCRに引っ張られることを抑制したい ■ 言語モデルにおいて有害なコメントを生成する挙動を抑制したい ● タスクベクトルを減算することで実現 ○ [New model] = [Old model] - λ [Task vector] = [Old model] - λ ([Fine-tuned] - [Old model]) 減算による忘却とは タスクベクトル を展開

Slide 9

Slide 9 text

AI 9 ● CLIPを利用 ○ SUN-397の画像に誤答クラス名を文字入れ ○ [New model] = [CLIP] - λ ([文字入れクラス名を当てるファインチュー ンをしたCLIP] - [CLIP]) ● ImageNet精度を損なうことなくOCRへの依存を抑制 画像分類における忘却実験 画像引用元 https://openai.com/research/clip

Slide 10

Slide 10 text

AI 10 ● GPT-2を利用 ○ Civil Commentsデータセットのtoxicity>0.8でLM ○ [New model] = [GPT-2] - λ ([有害テキストを生成するようにファイン チューンしたGPT-2] - [GPT-2]) ● WikiTextのperplexityを損なうことなくtoxicityを抑制 文章生成における忘却実験 toxicity -4%削減 ほぼ性能 悪化せず

Slide 11

Slide 11 text

AI 11 03 加算による学習

Slide 12

Slide 12 text

AI 12 ● タスクベクトルの加算でモデルの性能を向上させる ○ マルチタスクモデル化 ○ シングルタスクの精度向上 ● 複数のタスクベクトルを加算することで実現 ○ [New model] = [Old model] + λ (SUM([Task vector 1], ...)) 加算による学習とは

Slide 13

Slide 13 text

AI 13 ● CLIPを使用 ○ 8つのタスクで個別にファインチューン→8つのタスクベクトル ○ 8C2個のタスクペアでタスクベクトルの加算を実行 ■ [New model] = [CLIP] + λ ([Task vector 1] + [Task vector 2]) ● 個別モデルとほぼ同等の精度でデュアルタスク化に成功 画像分類におけるマルチタスクモデル化実験 個別にファインチューンした モデルの精度を1.0とする Zero-shotは相対精度0.69くらい Task 1,2 の両方で相対精度0.99くらい

Slide 14

Slide 14 text

AI 14 ● T5ベースのモデルを使用 ○ GLUEの4つのタスクで個別にファインチューンしたものを始点 ○ HuggingFaceから互換性のある重み427個を取得 ■ 427個のタスクベクトルを検証スコアが最大になるよう選択し加算 ● 個別モデルから更に精度が向上 GLUEベンチマークにおける精度向上実験 精度向上

Slide 15

Slide 15 text

AI 15 04 タスクのアナロジーの活用

Slide 16

Slide 16 text

AI 16 ● タスクDを解くモデルDを作りたい ○ タスクDはデータが全く/ほとんどない ○ “A is to B as C is to D”を満たすタスクA~CのモデルA~Cはある ● モデルA~Cの加減算でモデルDを表現 “A is to B as C is to D” [タスクD] = [タスクC] + ([タスクB] - [タスクA])

Slide 17

Slide 17 text

AI 17 ● T5ベースのモデルを使用 ○ Yelpの感情分類をzero-shotで解く ■ Yelpはラベルのみない状況 ■ Amazonの感情分類の教師データあり ○ [Yelp;sent] = [Yelp;LM] + λ ([Amazon;sent] - [Amazon;LM]) ● Yelpの感情分類をファインチューンしたモデルに匹敵する精度 文章感情分類におけるタスクアナロジーの実験 Yelp;LM, Amazon;sent, Amazon;LMを同時に訓練 (入力データがAmazonなら 感情分類タスクも解く)

Slide 18

Slide 18 text

AI 18 ● CLIPを使用 ○ ImageNetとHuman SketchからA~Dの4つのタスクを作成 ○ A~Dのどれをターゲットにするかで計4つの実験 ■ [D: Sketch 2] = [C: Image 2] + λ ([B: Sketch 1] - [A: Real 1]) ■ [D: Sketch 2] と [CLIP] のそれぞれで Few-shot Learning ● Zero-/Few-shotでタスクベクトル作モデルが常に良い精度 画像分類におけるタスクアナロジーの実験 タスクアナロジーモデル ≒ 教師ありデータ100件モデル ラベル グループ① ラベル グループ② ImageNet A C Human Sketch B D dog, apple, ... lion, castle, ... グループ分けのイメージ

Slide 19

Slide 19 text

AI 19 まとめ

Slide 20

Slide 20 text

AI 20 ● Editing Models with Task Arithmetic の論文を紹介 ● 重みの加減算でタスクの学習や忘却が可能 まとめ