1.7K Views
July 18, 24
スライド概要
DL輪読会資料
Data Level Lottery Ticket Hypothesis B4 Akiho Kawada
書誌情報 Data Level Lottery Ticket Hypothesis for Vision Transformers ● ● IJCAI 2023 Transformerにおける宝くじ仮説の研究
⽬次 ➢ 【背景】宝くじ仮説とは ➢ 【⽤語説明】当たりくじとは ➢ 【背景】従来のアルゴリズム ➢ 貢献 & 新規性 ➢ パッチの冗⻑性 ➢ 提案⼿法 ➢ 実験内容 ➢ 実験①: 従来⼿法をViTsに適応することの困難さを実証 ➢ 実験②: データレベルの宝くじ仮説の有効性を検証 ➢ まとめ
宝くじ仮説とは / Lottery Ticket Hypothesis ● “ランダムに初期化した⼤きなニューラルネットワークの中に, 性質の良いサブネットワークが⾮常に⾼い確率で存在する” というもの ● 宝くじ仮説⾃体は様々な仮定のもとで数学的に証明されており,もはや仮説ではない ● The Lottery Ticket Hypothesis: Finding Sparse, Trainable Neural Networks で提案された ● 嬉しいこと ○ モデルのサイズを⼩さくできる etc.
宝くじ仮説とは / Lottery Ticket Hypothesis ● “ランダムに初期化した⼤きなニューラルネットワークの中に, 質の良いサブネットワークが⾮常に⾼い確率で存在する” というもの ● 課題 ○ 性能の良いサブネットワークを⾒つけるためのアルゴリズムに関して わからない部分が多い ex.) CNNでは上⼿くいくけどTransformerでは良いアルゴリズムが⾒つかっていない 性
当たりくじ / winning ticket (物によってニュアンスの違いがある気がしますが、今回の輪読会ではこの意味で使います) ● 特定のアルゴリズム・探索⼿法で「性能の良いサブネットワーク」とされた サブネットワーク (各アルゴリズムで「当たりくじ」の定義がある) ● この「当たりくじ」が本当に性能の良いものなのかを検証する
従来のアルゴリズム 基本的には 1. 2. 3. 4. 重みを初期化する 学習する 学習済みパラメータのうち、絶対値の⼩さいものをマスクする 1.の初期値に3.で得られたマスクをかけて再初期化する の繰り返し 【問題点】 CNNでは上⼿くいくがTransformerでは上⼿くいかない(= 当たりくじの性能がよくない)
貢献 & 新規性 「当たりくじ」の新しい概念を提⽰ ● 従来⽅法でのViTの効果的な当たりくじを⾒つけるのは困難なことを実証 ○ ● 宝くじ仮説がViTで検証されたことがほとんどない ⼊⼒画像パッチの中から当たりくじを⾒つける⼿法の有効性を⽰した ○ データ内に当たりくじが存在するとした宝くじ仮説は初
パッチの冗⻑性 → Transformerではパッチが均等に分割されるが、 多くは背景情報であり不要なのではないか ● パッチを削ることの⻑所 (重みの刈り込みと⽐べて) ○ 重みのpruningでは全ての画像に対して疎なモデルを取得しなければならないが困難では? ○ モデルの複雑性を効果的に減らせる ■ チャネルやattention headを刈り込むよりも⼤幅に計算量を減らせる
提案⼿法 1. Ticket Selectorが パッチの情報量に基づいて当たりくじを決 める 2. 当たりくじで学習する 上図のAが提案⼿法
提案⼿法 Ticket Selectorの作り⽅ (論⽂内の実験で使われたもの) ● 全パッチで学習済みのVision Transformerに、 各パッチの情報量の多さをidentifyする、 module pを複数箇所挿⼊ attention mapの[clk]に対応する部分の ス コアに従って、topk未満のスコアのtokenに マスクをする ● 上図のAが提案⼿法 最後のmodule pを通過した後のものに対応するの が当たりくじ
実験内容 1. 従来⼿法で効果的な当たりくじを⾒つけるのは難しいことを実証 2. データレベルでの宝くじ仮説の有効性を検証
実験①: 従来⼿法をViTsに適応することの困難さを実証 ● 実証⽅法 ○ ○ ランダムに初期化して学習した場合 従来⼿法にしたがって⾒つけた当たりくじで初期化した場合 の精度差を、 モデルがCNN(当たりくじ有効)の場合とViTs(当たりくじの有効性不明)の場合で⽐較 ● 実験設定 ○ ○ データセット ■ ViTs: ImageNet ■ CNN: CIFAR10 モデル ■ ViTs: DeiT-Small ■ CNN: ResNet20
実験①: 従来⼿法をViTsに適応することの困難さを実証 ● 実験結果 ○ ViTs: ランダム初期化と当たりくじによる初期化の場合で⼤きな精度差がでない ○ CNN: 当たりくじによる初期化の⽅がランダム初期化に⽐べて精度が⾼い → 従来⼿法でViTsの有効な当たりくじを⾒つけるのは難しそう.... ViTsの場合 CNNの場合 ● ● LTH: 当たりくじに基づいて初期化 RR: ランダムに初期化
実験②: データレベルの宝くじ仮説の有効性を検証 ● 実証⽅法 ○ ランダムにパッチを選択して学習した場合 (B) ○ データレベルの宝くじ仮説で⾒つけた当たりくじのパッチで学習した場合 (A) の精度差をViTsで⽐較 ● 実験設定 ○ データセット: ImageNet ○ モデル: DeiT(Small/Tiny), LV-ViT, SwinTransformer
実験②: データレベルの宝くじ仮説の有効性を検証 ● 実験結果2-1 ○ DeiT-SmallとDeiT-Tinyでは、当たりくじのパッチの⽅がランダムなパッチ選択よりも精度が ⾼かった ● ● LT: 当たりくじのパッチ RC: ランダムに選んだパッチ (Sparse/Denseは推論時の画像を マスクしたか否か) ● 実験結果2-2 ○ 他のViTsでも当たりくじのパッチの⽅が精度が⾼くなる
実験②: データレベルの宝くじ仮説の有効性を検証 ● 実験結果2-1 ○ ● DeiT-SmallとDeiT-Tinyでは、当たりくじのパッチの⽅がランダムなパッチ選択よりも精度が ⾼かった 実験結果2-2 ○ 他のViTsでも当たりくじのパッチの⽅が精度が⾼くなる ● ● LT: 当たりくじのパッチ RC: ランダムに選んだパッチ (Sparse/Denseは推論時の画像を マスクしたか否か) → ViTsにおいてデータレベルの当たりくじは有効なのでは?
まとめ ViTsでは、 従来⼿法に従ってネットワークから当たりくじを⾒つけるよりも、 データのパッチから当たりくじを⾒つける⽅が効果的である