Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CVPR2020読み会 Proxy Anchor Loss for Deep Metric L...

CVPR2020読み会 Proxy Anchor Loss for Deep Metric Learning

CVPR2020読み会(後編)の資料です

なるべくMetric Learningに良い感じに入門できるようになってます

SatoKeiju

July 18, 2020
Tweet

Other Decks in Science

Transcript

  1. ·ͣ͸ࣗݾ঺հ !3 • ໊લ: ࠤ౻ ܒथ Sato Keiju • Twitter:

    @TodayInsane K-POPେ޷͖ͳͷͰ Metric LearningͰ
 PyTorchͱTWICEΛ஌Δ
 ABEJAΞυϕϯτΧϨϯμʔ ॻ͖·ͨ͠
  2. ·ͣ͸ࣗݾ঺հ !4 • ໊લ: ࠤ౻ ܒथ Sato Keiju • Twitter:

    @TodayInsane • ॴଐ: ౦ژେֶిؾܥ޻ֶઐ߈ͷ৘ใܥ म࢜2೥ • ֶ෦: CMOSΞφϩάిࢠճ࿏ in ਆށେֶిి • גࣜձࣾABEJAͰ௕ظΠϯλʔϯ 2019/4 ʙ • Vue.jsͱ͔Firebaseͱ͔Goͱ͔Kubernetesͱ͔AWSͱ͔Deep Learningͱ͔Λϝϯλʔ͞Μํʹڭ͑ͯ΋Β͍·͍ͬͯ͘·͢
  3. ·ͣ͸ࣗݾ঺հ !5 • ໊લ: ࠤ౻ ܒथ Sato Keiju • Twitter:

    @TodayInsane • ॴଐ: ౦ژେֶిؾܥ޻ֶઐ߈ͷ৘ใܥ म࢜2೥ • ֶ෦: CMOSΞφϩάిࢠճ࿏ in ਆށେֶిి • גࣜձࣾABEJAͰ௕ظΠϯλʔϯ 2019/4 ʙ • Vue.jsͱ͔Firebaseͱ͔Goͱ͔Kubernetesͱ͔AWSͱ͔Deep Learningͱ͔Λϝϯλʔ͞Μํʹڭ͑ͯ΋Β͍·͍ͬͯ͘·͢
  4. • ໊લ: ࠤ౻ ܒथ Sato Keiju • Twitter: @TodayInsane •

    ॴଐ: ౦ژେֶిؾܥ޻ֶઐ߈ͷ৘ใܥ म࢜2೥ • ֶ෦: CMOSΞφϩάిࢠճ࿏ in ਆށେֶిి • גࣜձࣾABEJAͰ௕ظΠϯλʔϯ 2019/4 ʙ • Vue.jsͱ͔Firebaseͱ͔Goͱ͔Kubernetesͱ͔AWSͱ͔Deep Learningͱ͔Λϝϯλʔ͞Μํʹڭ͑ͯ΋Β͍·͍ͬͯ͘·͢ ·ͣ͸ࣗݾ঺հ !6 ΤϯδχΞ: @xecus͞Μ ͕։ൃͨ͠ɺإೝূٕज़Λ࢖ͬͨ ΊͪΌͪ͘Ό໘ന͍ϓϩμΫτͷ ஀ੜൿ࿩ ݱࡏΠϯλʔϯͰ͓ख఻͍ͨ͠࿩ Λଓฤͱͯࣥ͠චதͰ͢
  5. • ໊લ: ࠤ౻ ܒथ Sato Keiju • Twitter: @TodayInsane •

    ॴଐ: ౦ژେֶిؾܥ޻ֶઐ߈ͷ৘ใܥ म࢜2೥ • ֶ෦: CMOSΞφϩάిࢠճ࿏ in ਆށେֶిి • גࣜձࣾABEJAͰ௕ظΠϯλʔϯ 2019/4 ʙ • Vue.jsͱ͔Firebaseͱ͔Goͱ͔Kubernetesͱ͔AWSͱ͔Deep Learningͱ͔Λϝϯλʔ͞Μํʹڭ͑ͯ΋Β͍·͍ͬͯ͘·͢ ·ͣ͸ࣗݾ঺հ !7 Ϧαʔν: @peisuke͞Μ ʹ༏͘͠എதΛԡ͍͖ͯͨͩ͠ ຊ೔ਓੜॳొஃͰ͢
  6. ͓͠ͳ͕͖ • Metric Learningͬͯʁ • CVʹ͓͚ΔMetric LearningͷྲྀΕ • ຊ೔ͷ࿦จ঺հ !12

    ͷ3ຊͰɺMetric Learningͷੈքͷུ஍ਤΛ͓౉͠Ͱ͖Ε͹ͱࢥ͍ͬͯ·͢ ͍ΖΜͳํͱ͍ΖΜͳ͓࿩͍ͨ͠ͷͰTwitterͳͲ͓ؾܰʹʂ͓ئ͍͠·͢ʂ
  7. Metric Learning: σʔλͷڑ཭ࢦඪΛ֫ಘ͢Δ !15 Black footed Albatross Sooty Albatross Black

    footed Albatross Sooty Albatross • ಉ͡Ϋϥεͷσʔλಉ࢜͸͍ۙ • ҟͳΔΫϥεؒ͸཭Ε͍ͯΔ
  8. Metric Learning: σʔλͷڑ཭ࢦඪΛ֫ಘ͢Δ !16 Black footed Albatross Sooty Albatross Black

    footed Albatross Sooty Albatross • ಉ͡Ϋϥεͷσʔλಉ࢜͸͍ۙ • ҟͳΔΫϥεؒ͸཭Ε͍ͯΔ σʔλ΍ ͦͷಛ௃ྔ ࣅͯΔͱ ۙ͘ͳΔ ۭؒ
  9. Metric Learning: σʔλͷڑ཭ࢦඪΛ֫ಘ͢Δ !17 Black footed Albatross Sooty Albatross Black

    footed Albatross Sooty Albatross • ಉ͡Ϋϥεͷσʔλಉ࢜͸͍ۙ • ҟͳΔΫϥεؒ͸཭Ε͍ͯΔ σʔλ΍ ͦͷಛ௃ྔ ࣅͯΔͱ ۙ͘ͳΔ ۭؒ ͜ΕΒΛ֫ಘ͢Δͷ͕Metric(ࢦඪ)Learning(ֶश)
  10. Deep LearningͷൃలͰMetric Learning΋Ξπ͍ !21 Channel Width Height ը૾: H ×

    W × C࣍ݩσʔλ Hand-craftedͳಛ௃ྔઃܭ x1 x2 : : : : : : : :
 : xN N࣍ݩಛ௃ϕΫτϧ = N࣍ݩۭؒ಺ͷ఺
  11. Deep LearningͷൃలͰMetric Learning΋Ξπ͍ !22 Channel Width Height ը૾: H ×

    W × C࣍ݩσʔλ Hand-craftedͳಛ௃ྔઃܭ x1 x2 : : : : : : : :
 : xN N࣍ݩಛ௃ϕΫτϧ = N࣍ݩۭؒ಺ͷ఺ Deep CNN
  12. Deep LearningͷൃలͰMetric Learning΋Ξπ͍ !23 Channel Width Height ը૾: H ×

    W × C࣍ݩσʔλ Hand-craftedͳಛ௃ྔઃܭ x1 x2 : : : : : : : :
 : xN N࣍ݩಛ௃ϕΫτϧ = N࣍ݩۭؒ಺ͷ఺ Deep CNN ࣮ݱ͍ۭͨؒ͠ͷڑ཭తͳ ͓ؾ͕࣋ͪ࿅Γ͜·ΕͨLossؔ਺ ֶश
  13. Adversarial Attack(ݸਓతʹ໘ന͔ͬͨͷͰ͝঺հ) !32 “Metric Learning for Adversarial Robustness”(NeurIPS’19) Adversarial Example͸

    ಛ௃ྔۭؒʹ͓͍ͯ Ϋϥεͷڥք෇ۙʹҐஔ͍ͯ͠Δʁ(͔Βؒҧ͑Δʁ) Adversarial ExampleΛ ຊ౰ͷΫϥεʹ͍ۙํ޲ʹ ಈ͔͢Loss ը૾ͱAdversarialͳը૾Λಛ௃ྔۭؒʹ౤Ө͢Δͱ…ʁ
  14. !33 “OpenGAN: Open Set Generative Adversarial Networks”(arXiv 2020/5/18) ҟৗݕ஌ “Unsupervised

    Anomaly Detection with Generative Adversarial Networks
 to Guide Marker Discovery”(IPMI’17) GAN Distillation “Relational Knowledge Distillation”(CVPR’19)
  15. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !37 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ಉ͡Ϋϥεͷը૾
  16. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !38 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ಉ͡Ϋϥεͷը૾
  17. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !39 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ΑΓ ۙͮ͘ ಉ͡Ϋϥεͷը૾
  18. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !40 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ҧ͏Ϋϥεͷը૾
  19. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !41 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ҧ͏Ϋϥεͷը૾
  20. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !42 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ΑΓ ཭ΕΔ ҧ͏Ϋϥεͷը૾
  21. ࢝૆: 2ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Contrastive Loss !43 Deep CNN x1 x2 : :

    : : : : : :
 : xN x1 x2 : : : : : : : :
 : xN ҧ͏Ϋϥεͷը૾ “Dimensionality Reduction by Learning an Invariant Mapping” (CVPR’06)
  22. ࢝૆ͷࢠ(ʁ): 3ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Triplet Loss !45 Deep CNN anchor: ͋Δσʔλ positive: anchorͱ

    ಉΫϥε negative: ผͷΫϥε [~]+: ώϯδؔ਺(= max(~, 0)) negative anchor positive
  23. ࢝૆ͷࢠ(ʁ): 3ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Triplet Loss !46 Deep CNN anchor: ͋Δσʔλ positive: anchorͱ

    ಉΫϥε negative: ผͷΫϥε [~]+: ώϯδؔ਺(= max(~, 0)) anchor positive negative dn dp dp ʹϚʔδϯαΛ଍ͯ͠΋ ·ͩdn ͷํ͕σΧ͘ͳͬͯ΄͍͠ • จ຺(ϥϕϧͱλεΫ)ʹؔ܎ͳ͘
 ૬ରతʹۙ͘/ԕ͘͢Ε͹Α͍ • ૊Έ߹Θͤ਺͕๲େͰ
 ֶश͕ऩଋ͠ͳ͍…
  24. ࢝૆ͷࢠ(ʁ): 3ͭͷσʔλ఺Λ͚ۙͮΔ/཭͢Triplet Loss !47 Deep CNN anchor: ͋Δσʔλ positive: anchorͱ

    ಉΫϥε negative: ผͷΫϥε [~]+: ώϯδؔ਺(= max(~, 0)) anchor positive negative dn dp dpʹϚʔδϯαΛ଍ͯ͠΋ dnΑΓখ͘͢͞Δ • จ຺(ϥϕϧͱλεΫ)ʹؔ܎ͳ͘
 ૬ରతʹۙ͘/ԕ͘͢Ε͹Α͍ • ૊Έ߹Θͤ਺͕๲େͰ
 ֶश͕ऩଋ͠ͳ͍… “Learning Fine-grained Image Similarity with Deep Ranking” (CVPR’14)
  25. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு • ۭؒΛ௒ٿ໘্ʹ੍໿

    • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄ !48 ͳͲͳͲ…
  26. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ !49 “FaceNet: A Unified Embedding for

    Face Recognition and Clustering”(CVPR’15) !49 !49 • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு • ۭؒΛ௒ٿ໘্ʹ੍໿ • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄ Tripletͷ૊Έ߹Θͤʹ͍ͭͯͷʮ೉͠͞ʯΛఆٛ Loss͕େ͖͘ͳΔSemi-hard NegativeϖΞΛޮ཰Α͘࡞੒
  27. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ !50 “Improved Deep Metric Learning with

    Multi-class N-pair Loss Objective”(NIPS’16) NΫϥε͔Β2ը૾ͣͭ
 औΓग़ͯ͠ಛ௃ྔʹม׵ N૊ͷηοτΛ࡞Γ
 LossΛܭࢉ • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு • ۭؒΛ௒ٿ໘্ʹ੍໿ • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄
  28. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு • ۭؒΛ௒ٿ໘্ʹ੍໿

    • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄ !51 “L2-constrained Softmax Loss for Discriminative Face Verification”(arXiv 2017/3) ໌ࣔతͳڑ཭࠷దԽ͸͠ͳ͍͕ ಛ௃ྔϕΫτϧΛϊϧϜͰׂͬͯ ಛ௃ྔ࣍ݩۭؒͷٿ໘্ʹ ಺ੵ(cosྨࣅ౓)Ͱදݱྗͷௐ੔ ֶशͷ೉қ౓΋εέʔϦϯάύϥϝʔλαͰௐ੔
  29. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ !52 “Deep Metric Learning with Angular

    Loss”(ICCV’17) anchorɺpositiveɺ negativeΛಈ͔͢ ޲͖(ޯ഑)Λ ֯౓͔Βߟ͑Δ • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு • ۭؒΛ௒ٿ໘্ʹ੍໿ • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄
  30. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ !53 • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு •

    ۭؒΛ௒ٿ໘্ʹ੍໿ • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄ “No Fuss Distance Metric Learning using proxies”(ICCV’17) positiveͱnegativeʹ ݸผͷσʔλ఺Ͱ͸ͳ͘ ֤Ϋϥεͷ୅ද஋ͷ ຒΊࠐΈϕΫτϧ(proxy) Λ༻͍Δ ѹ౗తऩଋͷ଎͞ ຊ೔ͷ࿦จͷϥΠόϧ
  31. Contrastive / Triplet Loss͔Β೿ੜ→੝Γ্͕͖ͬͯͨ !54 • ֶशʹ༗ޮͳϖΞΛ୳͢/࡞Δ • ͞Βʹߟྀ͢ΔΫϥε਺Λ֦ு •

    ۭؒΛ௒ٿ໘্ʹ੍໿ • ڑ཭ࢦඪΛ֯౓Ͱ • ୅ද఺ͰMetric Learning • Ϋϥε෼ྨܕωοτϫʔΫߏ଄ “ArcFace: Additive Angular Margin Loss for Deep Face Recognition”(CVPR’19) ಛ௃ྔϕΫτϧͷޙஈʹશ݁߹૚Λ઀ଓ Softmaxؔ਺ͱCross Entropy LossͰ Metric LearningΛߦ͏(ਪ࿦࣌͸શ݁߹૚Λ֎͢) ຊ೔ͷ࿦จͷϥΠόϧ
 Ͱ͸ͳ͍͕ඞಡʂ
  32. ͓·͚: CVPR’20ͰMetric Learningͷ࿩ͯ͠Δ࿦จ(ͷҰ෦) !55 •Deep Metric Learning via Adaptive Learnable

    Assessment •End-to-End Illuminant Estimation Based on Deep Metric Learning •Cross-Batch Memory for Embedding Learning •Optimizing Rank-Based Metrics With Blackbox Differentiation •Universal Weighting Metric Learning for Cross-Modal Matching •Fast(er) Reconstruction of Shredded Text Documents via
 Self-Supervised Deep Asymmetric Metric Learning •Moving in the Right Direction: A Regularization for Deep Metric Learning •CurricularFace: Adaptive Curriculum Learning Loss for Deep Face Recognition •Circle Loss: A Unified Perspective of Pair Similarity Optimization
  33. ࠓ೔ͷΰʔϧ(࠶ܝ) !58 Triplet Loss • anchor: ͋Δσʔλ఺ • positive: anchorͱಉ͡Ϋϥεʹ

    ଐ͢Δผͷσʔλ఺ • negative: anchorɺpositiveͱ͸ ҟͳΔΫϥεͷσʔλ఺ ↓ • anchorͱpositive͕͖ۙͮɺ anchorͱnegative͕཭ΕΔLoss • σʔλͷ૊Έ߹Θͤ૯਺ଟ͗͢ • ֶशʹޮ͘ϖΞʹ౰ͨΓʹ͍͘
  34. ࠓ೔ͷΰʔϧ(࠶ܝ) !59 N-pair Loss • anchor: ͋Δσʔλ఺ • positive: anchorͱಉ͡Ϋϥεʹ

    ଐ͢Δผͷσʔλ఺ • negatives: anchorɺpositiveͰ ͳ͍Ϋϥεͷσʔλ఺(1ͭͣͭ) • ۙ͞Λߟྀ ↓ • TripletΑΓ΋Ұ౓ʹશମΛݟΕΔ • ·ͩσʔλશମͱ͸ݴ͑ͳ͍
 (ϛχόονͷதͷ͞ΒʹҰ෦)
  35. ࠓ೔ͷΰʔϧ(࠶ܝ) !60 Lifted Structure Loss • anchor: ͋Δσʔλ఺ • positive:

    anchorͱಉ͡Ϋϥεʹ ଐ͢Δผͷσʔλ఺ • negatives: anchorɺpositiveͰ ͳ͍Ϋϥεͷશσʔλ఺ ↓ • N-pairΑΓ΋Ұ౓ʹશମΛݟΕΔ • ·ͩσʔλશମͱ͸ݴ͑ͳ͍
 (anchorΫϥεͷҰ෦σʔλ΍ϛ χόον಺ͷΈͰݶఆత)
  36. ࠓ೔ͷΰʔϧ(࠶ܝ) !61 Proxy-NCA Loss • anchor: ͋Δσʔλ఺ • proxy: ֤Ϋϥεʹ͖ͭ1ͭ͋Δ

    ʮ୅ද఺ʯ ↓ • anchorͱશproxyͰ
 N-pair Lossతͳֶश • ऩଋ͕ΊͪΌͪ͘Ό଎͍ • σʔλશମͷۭؒత৘ใ͸
 ׆͔͖͠Εͯͳ͍
  37. ࠓ೔ͷΰʔϧ(࠶ܝ) !63 Proxy Anchor Loss • anchor: ͋ΔΫϥεͷproxy • positive:

    anchorͷproxyʹଐ͢ ΔΫϥεͷϛχόον಺શσʔλ ఺ • negative: anchorͱҟͳΔΫϥε ͷϛχόον಺શσʔλ఺ ↓ • ऩଋ͕͞ΒʹΊͪΌͪ͘Ό଎͍ • σʔλશମͷۭؒత৘ใΛ׆͔͠ ·͍ͬͯ͘Δ
  38. ఏҊͯ͠Δ಺༰: Proxy Anchor Loss α: εέʔϦϯάύϥϝʔλ δ: Ϛʔδϯ ϛχόον಺ͷσʔλ શΫϥε෼ͷproxyͨͪͱ

    ͦͷݸ਺ proxy pͷΫϥεʹଐ͢Δ ϛχόον಺ͷશembedding (σʔλಛ௃ྔ)ϕΫτϧ embeddingϕΫτϧxͱ ରԠ͢ΔΫϥεͷproxyϕΫτϧpͷ ྨࣅ౓(ຊ࿦จͰ͸cosྨࣅ౓) શproxyͱ ͦͷݸ਺(=Ϋϥε਺) proxy pͷΫϥεʹଐ͞ͳ͍ ϛχόον಺ͷશembedding (σʔλಛ௃ྔ)ϕΫτϧ
  39. ఏҊͯ͠Δ಺༰: Proxy Anchor Loss α: εέʔϦϯάύϥϝʔλ δ: Ϛʔδϯ ϛχόον಺ͷσʔλ શΫϥε෼ͷproxyͨͪͱ

    ͦͷݸ਺ proxy pͷΫϥεʹଐ͢Δ શembedding(σʔλಛ௃ྔ) ϕΫτϧ embeddingϕΫτϧxͱ ରԠ͢ΔΫϥεͷproxyϕΫτϧpͷ ྨࣅ౓(ຊ࿦จͰ͸cosྨࣅ౓) શproxyͱ ͦͷݸ਺(=Ϋϥε਺) proxy pͷΫϥεʹଐ͞ͳ͍ શembedding(σʔλಛ௃ྔ)ϕΫτϧ ʁ
  40. “easier-to-interpret form” Proxy Anchor Lossͷ͓ؾ࣋ͪ !73 ͋Δproxy pͱhardest positive (p͔ΒҰ൪ԕ͍positive)͕ۙͮ͘

    ͋Δproxy pͱhardest negative (p͔ΒҰ൪͍ۙnegative)͕཭ΕΔ “smooth approximation of max function”
  41. ࿦จᐌ͘1: ੑೳྑͯ͘ऩଋ଎͍ʂ !82 Recall@1είΞ͕
 Ұ൪ߴ͍ʂ ऩଋ͕଎͍ʂ Recall@KείΞ • Retrieval(ݕࡧ)λεΫ΍Metric LearningͷੑೳΛଌΔͷʹΑ͘࢖ΘΕΔ

    • ֶशͨ͠ม׵(ωοτϫʔΫ)ʹςετσʔλΛશͯೖྗͯ͠embeddingԽͨ࣌͠ʹ
 ֤σʔλ఺ʹ͍ͭͯɺͦͷۭؒ಺Ͱ͍ۙॱϥϯΩϯάTop-KҐͷதʹ
 ಉ͡Ϋϥεͷσʔλ఺͕͋ΔΑ͏ͳ఺ͷׂ߹ • ྫ͑͹Recall@2ͳΒɺRecall@1(࠷ۙ๣఺͕ಉ͡ΫϥεͰ͋ΔΑ͏ͳ఺ͷׂ߹)ʹ
 ʮ࠷دΓ͸ผΫϥεͷσʔλ఺͕ͩ2൪໨ʹ͍ۙ఺ͳΒಉ͡ΫϥεʯͰ͋ΔϠπΒΛ଍ͨ͠
 είΞͱͳΔ • ʮະ஌ΫϥεΛ͖ͪΜͱ෼཭Ͱ͖Δ͔ʯΛଌΔͨΊɺσʔληοτΛ2෼ׂͯ͠
 ֶशͱςετΛ׬શʹผͷΫϥεͰߦ͏(ͳ͔ͳ͔ϋʔυ)
  42. ϋΠύϥߟ࡯ͦͷ3: εέʔϦϯάύϥϝʔλαͱϚʔδϯδ !101 ʮεέʔϦϯάύϥϝʔλ͸ 16Ҏ্Ͱ҆ఆͯ͠Δɺ ͕ͦͬͪे෼ͳେ͖ͩ͞ͱ ϚʔδϯͰ͸͋Μ·Γ͕ࠩग़ͳ͍ʯ εέʔϦϯά ύϥϝʔλ ࢮ׆໰୊͡ΌΜ…

    • ෳ਺ͷೖྗಉ࢜ͷʮࠩΛڧௐ͢Δ౓߹͍ʯ • cosྨࣅ౓Λ࢖͏Metric LearningͰΑ͘ಋೖ͞ΕΔ
 (ͦ΋ͦ΋ͷ஋Ҭ͕-1 ≦ cosx ≦ 1ͳͷͰ͕͖ࠩͭʹ͍ͨ͘Ί) • DistillationΛఏҊͨ͠࿦จͰొ৔ͨ͠softmaxԹ౓ύϥϝʔλΛٯ਺ʹͨ͠΋ͷ ※͍͔ͭ͘ͷ࿦จΛݟ͖ͯͨײ͡20~60͙Β͍͕ଥ౰ͳΠϝʔδͩͬͨͷͰೲಘ εέʔϦϯάύϥϝʔλ “Distilling the Knowledge in a Neural Network”(NIPS’14 Workshop)
  43. ͔ͳΓ៉ྷͳஶऀPyTorch࣮૷ʂ !107 https://github.com/tjddus9597/Proxy-Anchor-CVPR2020 • LossΫϥε͔Βtrain/testίʔυͷ࣮૷͸΋ͪΖΜ • σʔληοτ4छͷDatasetΫϥε࣮૷΋͋Γ • backbone networkͨͪͷ࣮૷΋͋Γ

    • طଘݚڀͷLossͨͪ΋ࢼͤΔΑ͏ʹͳͬͯΔ
 (Pytorch-Metric-Learningύοέʔδ͕ඞཁ) ※͜ͷൃද·Ͱʹಈ͔͓͖͔ͯͨͬͨ͠ͷͰ͕࣌ؒ͢଍Γͣʀʀ