置換不変ニューラルネットワークによる集合データマッチング / Deep Set-to-Set Matching and Learning

C71f7ec7f362e824a62ce07243ebf30a?s=47 Yuki Saito
January 29, 2020

置換不変ニューラルネットワークによる集合データマッチング / Deep Set-to-Set Matching and Learning

C71f7ec7f362e824a62ce07243ebf30a?s=128

Yuki Saito

January 29, 2020
Tweet

Transcript

  1. Copyright © ZOZO Technologies, Inc. All Rights Reserved. ZOZO Research,

    総合研究大学院大学 斎藤侑輝 置換不変ニューラルネットワークによる 集合データマッチング 1/56
  2. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Yuki Saito

    2019/1- ZOZO Research 2015/10- 総合研究大学院大学 (福水研究室) 2012/4-2018/11 キヤノン株式会社 専門: 深層学習, カーネル法 (とくに教師ありクラスタマッチング) 応用: 映像認識,行動認識,隕石・惑星科学,ファッションデータ 2/56
  3. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Collaborators 中村拓磨

    ZOZO Research 八谷大岳 和歌山大学 講師 理化学研究所 客員研究員 (株)サイバーリンクス 顧問 福水健次 統計数理研究所 数理・推論研究系 教授 統計的機械学習センター センター長 総合研究大学院大学 教授 (株) Preferred Networks テクニカルアドバイザー 3/56
  4. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Motivation User’s

    items User 提案 「あなたの服に似合うと思います」 Item Database Item Database 4/56
  5. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Our Target

    Reference items 候補 1 候補 2 候補 3 Reference itemsと各候補のマッチングを考え,一番よい候補を選択 5/56
  6. Copyright © ZOZO Technologies, Inc. All Rights Reserved. , ,

    , コーディネートは集合データ アイテム同士を交換しても不変 6/56
  7. Copyright © ZOZO Technologies, Inc. All Rights Reserved. , コーディネートは集合データ

    アイテムの数/種類が増減してもよい(自然に扱える) 7/56
  8. Copyright © ZOZO Technologies, Inc. All Rights Reserved. コーディネートは集合データ ,

    , , , , , , , , + = コーディネートの部分集合の合成/分割を自然に行える 8/56
  9. Copyright © ZOZO Technologies, Inc. All Rights Reserved. コーディネートは集合データ ቄ

    ቅ , , , , , , , , , , , コーディネートのMixtureを柔軟に持てる ⋯ 9/56
  10. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集合間のマッチング (Set-to-Set

    Matching) 集合 = (1), (2), (3) Matching Matching Matching Reference items 候補 1 候補 2 候補 3 10/56
  11. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集合間のマッチング (Set-to-Set

    Matching) 目的関数: max , where ∈ 1, … , 関数は集合間の ”似合う度合い” を測る関数. 11/56
  12. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集合間のマッチング (Set-to-Set

    Matching) 関数は以下の性質を持つ. • 集合内の置換不変性 (交換可能性) , = , • 集合間の置換不変性 (交換可能性) , = , , : permutation functions on 1, … , and 1, … , = 1 , … , , = 1 , … , , ∈ = ℝ where ∈ 1, … , and ∈ 1, … , , は集合ごとに可変 , は特徴ベクトル(CNN特徴量) は学習可能な重みパラメータを持った関数 CNNと関数はend-to-end学習可能(教師あり学習を行う) 12/56
  13. Copyright © ZOZO Technologies, Inc. All Rights Reserved. コーディネート集合のマッチングの難しさ ”似合う度”

    a.k.a. Visual Compatibility を精度よく計算するために,アイ テム間のインタラクションに基づいて特徴抽出することが必要. Well Matched? Well Matched? 置換不変性だけでなくインタラクションの考慮が求められる. 13/56
  14. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 基本構成要素 ,

    ≔ CrossSimilarity CrossSetTransformation , 集合マッチング特徴抽出: × → × “似合う度”計算: 2 × 2 → ℝ 特徴抽出,スコア計算の二つのモジュールを提案する. これらが全体として置換不変でなければならない. , は可変なので厳密には ∗ × ∗ → ∗ × ∗, where ∗ ∈ ራ =1 ∞ 14/56
  15. Copyright © ZOZO Technologies, Inc. All Rights Reserved. アーキテクチャの具体例 集合マッチング特徴抽出:

    CrossSetTransformation “似合う度”計算: CrossSimilarity 0 , 0: CNN (Convolutional Neural Network)特徴量の集合 Enc: 集合特徴量Encoder (後述) CS: Cross Similarity Function FC: 全結合層 15/56
  16. Copyright © ZOZO Technologies, Inc. All Rights Reserved. アーキテクチャの具体例(候補の選択部分) ,

    0 , 1 ⋯ , , 0 , 1 ⋯ , 出力からスコア最大となる 候補を選択 集合の組(候補)を入力 目的関数: max , where ∈ 1, … , 関数は集合間の ”似合う度” を測る関数. 16/56
  17. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Cross-Set Transformation

    このとき: ∗ × ∗ → ∗ はpermutation equivariant function であればよい (後述) 17/56
  18. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Cross-Set Trans.を構成する関数

    Attention-based function (on -th layer): Affinity-based function (on -th layer): ,+1 = 1 ෍ ∈ 1 , T 2 + 3 ,+1 = 1 2 1 , + 1 ෍ ∈ 1 , T 2 + 2 = , where ∈ ℝ× Non-rich interactions (on -th layer): ,+1 = , + 1 ෍ ∈ 18/56
  19. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Attention Function

    (Vaswani2017) ではうまくない Attention function: ,+1 = Softmax 1 , T 2 1, , ⋯ , 1 , T 2 , T = 3 1, , ⋯ , 3 , ∈ ℝ×, = 私 は 元気 I’m pretty good . Softmax Function Softmax Function 1対1または重み付き平均によって対応がとれる単語が存在する 英→日 文章翻訳 (うまくいく) 私 は 元気 You’re already dead . Softmax Function Softmax Function 対応のとれないmatching候補(英文)が存在する 正しい対応関係でないmatching (うまくいかない) です 。 対応がとれないのに 重みが大きくなり破綻! (e.g.,すべてが遠い場合と 近い場合とで同じ重みになる) 19/56
  20. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Multihead Structure

    (Vaswani2017) の導入 , 1 , 2 … , ℎ , Concatenate +1 低次元写像 , , ,+1 ∈ ℝ 20/56 FC
  21. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Residual Path

    (He2015) の導入 21/56 , 1 , 2 … , ℎ , Concatenate +1 FC +
  22. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 非線形変換の導入 22/56

    , 1 , 2 … , ℎ , Concatenate +1 FC + について2層非線形変換
  23. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集合マッチングスコア (“似合う”度)の計算

    Cross similarity (CS) function: 2 × 2 → ℝ+ Multiple cross-similarity (mCS) function: 2 × 2 → ℝ 23/56
  24. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 教師あり学習 •

    スコア最大化ではなくロス最小化として誤差逆伝播法で解く e.g., min ,,,CNN SoftmaxWithLoss 1 , (1,1), … , (1,)| , , , CNN +SoftmaxWithLoss 2 , (2,1), … , (2,)| , , , CNN + ⋯ +SoftmaxWithLoss , (,1), … , (,)| , , , CNN あるに対して個のを用い, が個あるとすると,合計個の 集合を用意しなければならないため,効率が悪い 24/56
  25. Copyright © ZOZO Technologies, Inc. All Rights Reserved. K-Pair-Set学習 min

    ,,,CNN SoftmaxWithLoss 1 , 1 , … , | , , , CNN +SoftmaxWithLoss 2 , 1 , … , | , , , CNN + ⋯ +SoftmaxWithLoss , 1 , … , | , , , CNN 真のペア , がただ一つ存在するという前提のもと, それぞれの真のペアから選択肢を構成することで学習効率化が可能 N-pair loss (Sohn, NeurIPS2016) の集合版 25/56
  26. Copyright © ZOZO Technologies, Inc. All Rights Reserved. K-Pair-Set学習 26/56

  27. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Triplet学習 min

    ,,,CNN TripletLoss 1 , 1 , Neg1 | , , , CNN +TripletLoss 2 , 2 , Neg2 | , , , CNN + ⋯ +TripletLoss , , Neg | , , , CNN データセットが大きくなければTriplet Lossによる学習も可能だが, 経験的には学習の収束が遅い 27/56
  28. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Background: 置換不変性

    (交換可能性) 特徴抽出器 ෠ : ∗ × ∗ → ∗ × ∗ 特徴抽出器 : ∗ × ∗ → ∗ × ∗ 対称関数 : 2 × 2 → ℝ 集合間の交換可能性について. 一般の関数は交換不能 ෠ , ≠ ෠ , . Two-set-permutation equivariantな関数なら全体として交換可能: , = , 28/56
  29. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Background: 置換不変性

    (交換可能性) 具体的な関数は,二つの関数からなる関数とする. : ∗ × ∗ → ∗ ここで,出力の次元数は 入力の第一変数の次元数と同じ , = , |A , , |B , |A , |B 29/56
  30. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Background: 置換不変性

    (交換可能性) 前出の , = , より, , |A , , |B = , |A , , |B が満たされなければならない. は交換可能(対称関数)なので, , |A , , |B = , |B , , |A つまりA = B でなければならない. Cross-set Transformationのweight-sharingは構成要件の一つ. 30/56
  31. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集合内の交換可能性について. •

    Permutation Invariant Function (one-set input) • Permutation Equivariant Function (one-set input) Background: 置換不変性 (交換可能性) → = = → → ※提案手法における2変数の関数に関しては,2つ目の入力集合に対してPermutation Invariantであるとする. 31/56
  32. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Background: 置換不変性

    (交換可能性) はpermutation invariantな関数である. がpermutation equivariantな関数であるとき, 自明な性質として合成関数 ∘ はpermutation invariantとなる. 32/56
  33. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 比較手法1: 集合特徴量を使わずにどこまでできるか?

    • HAP2S: Hard-aware point-to-set deep metric for person re-identification (Yu, ECCV2018). テスト時は集合間の各要素の二乗誤差にマイナスをかけた値をスコアとして用いる. 置換不変で特徴抽出に集合間のインタラクションはなし. 33/56
  34. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 比較手法2: 集合間のインタラクションなしにどこまでできる?

    • Set Transformer: A Framework for Attention-based Permutation-Invariant Neural Networks (Lee, ICML2019). 学習・テスト時には,各集合単独にSTを適用して,特徴量集合をベクトルに変換する.ベクトル間の内積をスコアとする. 2つの置換不変性を満たすが特徴抽出に関して集合間のインタラクションはなし. 2層のEncoderと1層のDecoderを使用. 集合関数のSOTA 34/56
  35. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 比較手法3: 流行りのBERTはどこまでできる?

    • BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (Devlin, Arxiv2018). 集合との和集合を入力し,Segment Embeddingsのみ用いる.学習条件を揃えるためBERTのPre-trainingはなし. 集合間で置換不変でない(集合内では置換不変)が集合間のインタラクションはある. Set Transformerと祖先が同じ手法. 言語分野で非常によく引用されているSOTAの一つ BERTSMALL 提案手法と同程度のパラメータ数; 2層encoder,特徴量512次元 BERTBASE 上記論文に記載の設定 BERTBASE-AP 上記論文に記載の設定で,出力層はaverage pooling 実験バリエーション 35/56
  36. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 比較手法4: Graph

    Neural Networkはどこまでできる? • GNN: Context-Aware Visual Compatibility Prediction (Cucurull, CVPR2019). 集合との和集合を入力し,学習時には隣接行列を回帰する. テスト時には全エッジから計算するcompatibility scoreを用いる. ただし評価シナリオを揃えるためContextは用いない. 集合間は置換不変でない(集合内では置換不変)が集合間のインタラクションはある(もはや集合ではないが). 公開されている論文・実装がCNN特徴量のfinetuningを含まない. 36/56
  37. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 提案手法の構成 Set

    Transformerの Encoder Set Transformerの Encoder 関数はAttention-basedかAffinity-basedかのいずれかを用いる. 37/56
  38. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 学習データの作り方 投稿された中から評価の

    高い88,674個のコーディ ネート (199,792個のアイテ ムを含む)を利用. コーディネートデータ分割: • 70,997 for training • 8,842 for validation • 8,835 for testing 実際の購買データなどから”似合う”を学習・評価することは難しい. そこで弊社サービスのIQONに投稿されたコーディネートを用いて学習・評価する. https://www.iqon.jp/ 38/56
  39. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 学習データの作り方 •

    Subset Matching Random-Split ※K個の候補すべてがと同じカテゴリのアイテムを持つように分割する : : 今回求めたいのは逆写像 (reconstruction). • コーディネートの特徴量が部分集合に分割されても残っている • Matchingの過程でインタラクションに基づいてうまく特徴抽出される ことによって,元のコーディネートをreconstructionできるはず. 評価の高いコーディネート Positive Pair 39/56
  40. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 学習データの作り方 •

    Superset Matching ※カテゴリは考慮しない 各集合をランダムに等分割し,分割された集合の和集合を入力データとする. : : ∪ ∪ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ Random-Split ランダムに合成されたコーディネートの mixtureを考える 40/56
  41. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Subset/superset matching:

    詳細な構成・学習法(共通) CNN特徴量はILSVRC-2012で学習したInception-V3のglobal average pooling結果を,512次元に線 形写像したものを用いる (BERTBASE とBERTBASE-AP は768次元). CNNは同時に学習する (GNNでは固定). 学習時に集合内のアイテムと集合間をランダムに置換して水増しのように学習する.置換不変でな い手法もこの学習法によって学習データのバリエーションを確保できる. 学習はMomentum SGD. Subset matchingはTriplet-loss,superset matchingはK-pair-set lossで学習. 詳細は論文を参照のこと. https://arxiv.org/abs/1910.09972 41/56
  42. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 実験結果 (accuracy)

    提案手法 テスト時の候補の数 テスト時のコーディネート mixtureの数 Affinity-based functionを用いた提案手法が最も良い結果になった. 置換不変性とインタラクションを考慮することで大きく精度向上したと考えられる. 42/56
  43. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 実験結果 (subset

    matching結果の可視化) 関数で計算された非負の重みを見ると,正しい集合同士のペアでは 比較的大きくなる傾向があった(正規化して表示) → インタラクションが効いている? 43/56
  44. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 実験結果 (subset

    matchingの例:左端が正解) Set Transformer 44/56
  45. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 実験結果 (subset

    matchingの例:左端が正解) 45/56
  46. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 実験結果 (subset

    matchingの例:左端が正解) 46/56
  47. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 実験結果 (subset

    matchingの例:左端が正解) 47/56
  48. Copyright © ZOZO Technologies, Inc. All Rights Reserved. Superset Matchingでの認識結果は人間では理解困難なため省略

    48/56
  49. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集団間マッチング(Group Re-Identification)への応用

    49/56
  50. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集団間マッチング 例えば既知の指名手配犯グループや不審者グループを探したい要求が応用上考えられる.

    様々な角度から人物をとらえた画像が複数あり,人体検出器によってあらかじめクロップされているとする. このとき,集団は画像の集合で表すことができ,集合データマッチングによって集団間マッチングは実現可能. Group Re-identification via Transferred Single and Couple Representation Learning (Huang, Arxiv2019) 50/56
  51. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集団間マッチング: データセット

    Market-1501を使用 (Zheng, ICCV2015).元々ReID向けデータセットだが,set-to-set matching向けに改造する. Dataset Splitは著者らのものを使用.カメラ情報は無視した. 応用上,人体検出器などのエラーによって誤った人物が混入する可能性がある. 各手法のノイズ耐性を調べるために,一定の割合でノイズとなる人物を混入させる. 人物ごとに3枚の画像を使用 51/56
  52. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集団間マッチング: 構成・学習法

    基本はsuperset matchingと同じ. • CNNは単純な4層ニューラルネットワークを用いた (pre-trainingなし) • pre-trainingなしのCNNを用いるのでGNNはCNNと同時に学習 • 混入させるノイズの割合ごとに学習・評価 52/56
  53. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集団間マッチング実験結果 (accuracy)

    提案手法が最も良い結果になった.ノイズ量が増えても精度が比較的高い. ここでも置換不変性とインタラクションを考慮することで精度・ノイズ耐性が向上したものと考えられる. ノイズがない場合は,おそらく特徴ベクトルの平均をとるだけで上手くマッチングができる簡単なケースになっている. 53/56
  54. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 提案手法によってどうノイズ耐性が向上するか? Well

    Matched? Well Matched? 特徴抽出時のインタラクションによって重み(係数)が0になり, ノイズの影響力が減退するのではないか(未確認) 54/56
  55. Copyright © ZOZO Technologies, Inc. All Rights Reserved. 集団間マッチング実験結果: 各モジュールが精度にどう効くか?

    もとの提案手法 Multiple Cross Similarity Functionではなくpoolingを使用 Multiple Cross Similarity Function内のReLUを不使用 Cross-set Transformationを 不使用 • 提案手法の出力層にあたるCross Similarity計算の非線形性が重要 • Cross-set Transformationが最も重要(インタラクションが大事) 55/56
  56. Copyright © ZOZO Technologies, Inc. All Rights Reserved. おわりに •

    二つの置換不変性と集合間インタラクションに基づく特徴抽出を同時に達成するSet-to-set matching手法の提案を行った • ファッションコーディネートおよび集団人物間のマッチングの実験を通して,SOTAと比較して提案 手法の精度が良いことを確かめた.また,ノイズ耐性について実験的に検証を行い,提案手法が よい結果を得られることを確認した • 上記の実験およびablation studyを通して,置換不変性やインタラクションに基づく特徴抽出が重 要であることを確認し,提案手法の有効性を確認した 56/56