πŸ“˜
Lif31up's Blog
  • Welcome! I'm Myeonghwan
  • How to Read the Pages
  • Fundamental Machine Learning
    • Foundational Work of ML: Linear/Logistic Regression
    • Early-stage of AI: Perceptron and ADALINE
    • What is Deep Learning?: Artificial Neural Network to Deep Neural Network
    • * Challenges in Training Nerual Network
  • Meta Learning
    • Overview on Meta Learning
    • Prototypical Networks for Few-shot Learning
    • Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
  • Natural Language Process
    • Bag-of-Words
  • Actionale AI
    • * Overview on Actionable AI
  • Front-end Development
    • Overview on Front-end Development
    • Learning React Basic
      • React Component: How They are Rendered and Behave in Browser
      • State and Context: A Key Function to Operate the React Application
      • Design Pattern for Higher React Programming
  • Songwriting
    • A Comprehensive Guide to Creating Memorable Melodies through Motif and Phrasing
  • Sound Engineering
    • How to Install and Load Virtual Studio Instruments
    • A Guide to Audio Signal Chains and Gain Staging
    • Equalizer and Audible Frequency: How to Adjust Tone of the Signal
    • Dynamic Range: the Right Way to Compress your Sample
    • Acoustic Space Perception and Digital Reverberation: A Comprehensive Analysis of Sound Field Simulat
  • Musical Artistry
    • What is Artistry: in Perspective of Modern Pop/Indie Artists
    • Visualizing as Musical Context: Choose Your Aesthetic
    • Analysis on Modern Personal Myth and How to Create Your Own
    • Instagram Management: Business Approach to Your Social Account
  • Art Historiography
    • Importance of Art Historiography: Ugly and Beauty Across Time and Space
    • Post-internet Art, New Aesthetic and Post-Digital Art
    • Brutalism and Brutalist Architecture
Powered by GitBook
On this page
  1. Meta Learning

Overview on Meta Learning

Previous* Challenges in Training Nerual NetworkNextPrototypical Networks for Few-shot Learning

Last updated 25 days ago

λ©”νƒ€ν•™μŠ΅(meta learning)은 ν•™μŠ΅ κ³Όμ • 자체λ₯Ό ν–₯μƒμ‹œν‚€κΈ° μœ„ν•œ μ•Œκ³ λ¦¬μ¦˜μ— λŒ€ν•œ μ—°κ΅¬μž…λ‹ˆλ‹€. 이λ₯Ό 톡해 신경망은 μƒˆλ‘œμš΄ μž‘μ—…μ„ 효과적으둜 ν•™μŠ΅ν•©λ‹ˆλ‹€. 또 λΉ λ₯΄κ²Œ λ³€ν™”ν•˜λŠ” ν™˜κ²½μ—μ„œ λͺ¨λΈμ„ μ΅œμ ν™”ν•˜λŠ”λ° 특히 μœ μš©ν•©λ‹ˆλ‹€. λ‹€μŒμ€ λ©”νƒ€ν•™μŠ΅μ˜ μ£Όμš”ν•œ λΆ„μ•Όλ“€μž…λ‹ˆλ‹€:

  • λͺ¨λΈ 기반 메타 ν•™μŠ΅(model-based meta learning)은 이전 κ²½ν—˜μ„ μ €μž₯ν•˜κΈ° μœ„ν•΄ ν™•μž₯된 λ©”λͺ¨λ¦¬λ₯Ό κ°€μ§„ μ‹ κ²½λ§μ΄λ‚˜ μˆœν™˜ 신경망을 μ‚¬μš©ν•©λ‹ˆλ‹€.

  • λ©”νŠΈλ¦­ 기반 메타 ν•™μŠ΅(metric-based meta learning)은 μœ μ‚¬μ„±μ΄λ‚˜ 거리 츑정을 ν™œμš©ν•˜μ—¬ μƒˆλ‘œμš΄ μž‘μ—…μ— λŒ€ν•œ λΉ λ₯Έ ν•™μŠ΅μ„ μ΄‰μ§„ν•©λ‹ˆλ‹€.

  • μ΅œμ ν™” 기반 메타 ν•™μŠ΅(optimization-based meta learning)은 μ΅œμ ν™” μ•Œκ³ λ¦¬μ¦˜μ„ ν•™μŠ΅ν•¨μœΌλ‘œμ¨ μƒˆλ‘œμš΄ μž‘μ—…μ— λŒ€ν•œ ν•™μŠ΅ νš¨μœ¨μ„±μ„ ν–₯μƒμ‹œν‚΅λ‹ˆλ‹€.

  • TAML(Task-Agnostic Meta Learning)은 νŠΉμ • 업무 뢄포와 κ΄€λ ¨λœ ν•™μŠ΅ μ „λž΅μ„ κ·œμ •ν•˜λŠ” 데 μ΄ˆμ μ„ 맞μΆ₯λ‹ˆλ‹€. 이λ₯Ό 톡해 λ‹€μ–‘ν•œ 업무λ₯Ό 효과적으둜 λ²”μ£Όν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Learning Level

λ©”νƒ€ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μ€ 두 개의 ν•˜μœ„ μ•Œκ³ λ¦¬μ¦˜(λ˜λŠ” 루프)λ₯Ό μ—°κ΄€ν•˜μ—¬ ν™œμš©ν•˜λŠ” ꡬ쑰둜 이루어져 μžˆλŠ” κ²½μš°κ°€λ§ŽμŠ΅λ‹ˆλ‹€. 이λ₯Ό 각각의 λ‹¨κ³„λ‘œ μƒκ°ν•œ μ„œμˆ μ„ 단계별 ν•™μŠ΅(learning level)라 ν•©λ‹ˆλ‹€.

  • 메타 단계 ν•™μŠ΅(meta-level learning)은 고차원적 ν•™μŠ΅ κ³Όμ •μœΌλ‘œ μ—¬λŸ¬ μž‘μ—…μ—μ„œ 곡톡점을 νŒŒμ•…ν•˜κ³  문제 ν•΄κ²° 방법 κ·Έ 자체λ₯Ό ν•™μŠ΅ν•©λ‹ˆλ‹€. μΌλ°˜ν™”λœ ν•™μŠ΅ μ „λž΅μ„ κ°œλ°œν•˜κ±°λ‚˜ μƒˆλ‘œμš΄ κ³Όμ œλ‚˜ ν™˜κ²½μ— λΉ λ₯΄κ²Œ μ μ‘ν•˜λŠ” λŠ₯λ ₯을 ν‚€μ›λ‹ˆλ‹€.

  • κΈ°λ³Έ 단계 ν•™μŠ΅(base-level learning)은 일반적인 기계 ν•™μŠ΅κ³Ό μœ μ‚¬ν•˜κ²Œ μ§„ν–‰λ©λ‹ˆλ‹€. μž‘μ—… λ˜λŠ” 문제 해결을 μœ„ν•œ ν•™μŠ΅μ— 쀑점을 λ‘‘λ‹ˆλ‹€. 이미지 λΆ„λ₯˜λ‚˜ μžμ—°μ–΄ μ²˜λ¦¬μ™€ 같은 ꡬ체적인 과제λ₯Ό μœ„ν•œ ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μ΄ 이에 ν•΄λ‹Ήν•©λ‹ˆλ‹€.

각 λ‹¨κ³„μ—μ„œ μž‘λ™ν•˜λŠ” μ•Œκ³ λ¦¬μ¦˜μ— λŒ€ν•΄ κΈ°λ³Έ ν•™μŠ΅μž(basic learner), 메타 ν•™μŠ΅μž(meta-learner)라 λΆ€λ₯΄κΈ°λ„ ν•©λ‹ˆλ‹€.

λŒ€λΆ€λΆ„μ˜ λ©”νƒ€ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μ€ ν›ˆλ ¨ κ³Όμ •κ³Ό 검증 κ³Όμ •μœΌλ‘œ 이루어지며 각각 메타 ν›ˆλ ¨ 단계(meta training phase), 메타 검증 단계(meta evaluation phase)라 λΆ€λ¦…λ‹ˆλ‹€. μ΄λŠ” μ•žμ„  단계별 ν•™μŠ΅κ³ΌλŠ” λ‹€λ₯Έ κ°œλ…μœΌλ‘œ 메타 단계 ν•™μŠ΅κ³Ό κΈ°λ³Έ 단계 ν•™μŠ΅μ΄ λͺ¨μ—¬ 메타 ν›ˆλ ¨ 단계λ₯Ό λ§Œλ“ λ‹€ μ΄ν•΄ν•˜λ©΄ λ©λ‹ˆλ‹€.

Query Set, Support Set

λ©”νƒ€ν•™μŠ΅μ—μ„œ ν•œ 데이터셋은 μ„œν¬νŠΈ μ„ΈνŠΈ, 쿼리 μ„ΈνŠΈλ₯Ό 톡해 μ„€λͺ…λ˜κ³€ν•©λ‹ˆλ‹€. 각각 μ„œλ‘œ λ‹€λ₯Έ 역할이 μ •μ˜λ˜λ©° λͺ¨λΈμ€ 이듀을 ν™œμš©ν•˜μ—¬ μ •κ·œν™”, λΉ λ₯Έ ν•™μŠ΅, 적은 μžλ£Œμ—μ„œμ˜ ν•™μŠ΅ 등을 μ„±μ·¨ν•΄μ•Ό ν•©λ‹ˆλ‹€.

  • μ„œν¬νŠΈ μ„ΈνŠΈ(support set)λŠ” ν•™μŠ΅κ³Ό μ§μ ‘μ μœΌλ‘œ μ—°κ΄€λ˜λŠ” λ°μ΄ν„°μ…‹μž…λ‹ˆλ‹€. λͺ¨λΈμ€ μ„œν¬νŠΈ μ„ΈνŠΈλ₯Ό ν•™μŠ΅ν•΄ 쿼리 μ„ΈνŠΈλ₯Ό λΆ„λ₯˜ν•˜κ²Œ λ©λ‹ˆλ‹€.

  • 쿼리 μ„ΈνŠΈ(query set)λŠ” μ„±λŠ₯ 평가λ₯Ό μœ„ν•œ λ°μ΄ν„°μ…‹μž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ•Œκ³ λ¦¬μ¦˜μ— 따라 λ‹€μ–‘ν•œ μ—­ν• λ‘œ μ •μ˜λ˜λŠ” κ²½μš°κ°€ λ§ŽμŠ΅λ‹ˆλ‹€.

μž‘μ—…(task)μ΄λž€ μš©μ–΄λ₯Ό μ‚¬μš©ν•˜κΈ°λ„ν•©λ‹ˆλ‹€. μ΄λŠ” κ·Έ ν•™μŠ΅μ—μ„œ μ •μ˜λœ λ¬Έμ œλ“€μž…λ‹ˆλ‹€. μ˜ˆμ‹œλ‘œ 이미지 λΆ„λ₯˜κΈ°μ˜ μž‘μ—…λ“€μ€ '고양이 νŒλ³„', 'μ–‘ νŒλ³„', '돼지 νŒλ³„' 등이 μžˆμ„ 수 μžˆμŠ΅λ‹ˆλ‹€.

Unseen Classes and Seen Classes

μ•ˆ λ³Έ 계급과 λ³Έ 계급은 λ©”νƒ€ν•™μŠ΅μ˜ μ€‘μ—μ„œλ„ μ •κ·œν™”μ™€ κ΄€λ ¨λœ κ°œλ…μž…λ‹ˆλ‹€. μ•ˆ λ³Έ 계급(unseen classes)λŠ” ν•™μŠ΅ 과정에선 λ‚˜νƒ€λ‚˜μ§€ μ•Šκ³  검증 λ˜λŠ” 운영 κ³Όμ •μ—μ„œλ§Œ λ“±μž₯ν•˜λŠ” κ³„κΈ‰μž…λ‹ˆλ‹€. 반면, λ³Έ 계급(seen classes)은 ν›ˆλ ¨κ³Όμ •μ— ν¬ν•¨λ©λ‹ˆλ‹€. 잘 μ •κ·œν™”λœ λͺ¨λΈμ€ μ•ˆ λ³Έ 계급에 λŒ€ν•œ 처리 λŠ₯λ ₯을 κ°€μ§€κ³  μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.

이에 λŒ€ν•œ μ˜ˆμ‹œλ‘œ μ§ˆλ³‘ λΆ„λ₯˜κΈ°λ₯Ό 생각해볼 수 μžˆμŠ΅λ‹ˆλ‹€. 이 λΆ„λ₯˜κΈ°λŠ” ν•™μŠ΅μ—μ„œ λ³Έ μ§ˆλ³‘ 외에도 μƒˆλ‘œμš΄ 희귀 μ§ˆλ³‘μ˜ 진단도 μš”κ΅¬λ  수 μžˆμŠ΅λ‹ˆλ‹€. 일반 ν•™μŠ΅λœ λͺ¨λΈμ€ μ•ˆ λ³Έ 계급을 μ²˜λ¦¬ν•˜λŠ” 데 큰 어렀움을 κ²ͺμŠ΅λ‹ˆλ‹€. μ΄λŠ” μ •κ·œν™”λ₯Ό ν•™μŠ΅ν•˜κΈ°λ³΄λ‹€λŠ” ν›ˆλ ¨ κ³Όμ •μ—μ„œ κ°€λŠ₯ν•œ λͺ¨λ“  ν΄λž˜μŠ€μ— λŒ€ν•΄ ν•™μŠ΅ν•˜λ„λ‘ μ„€κ³„λ˜μ—ˆκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.

N-way K-shot Framework

λ©”νƒ€ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μ˜ μ„±λŠ₯은 νŠΉμ •ν•œ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° 보단 ν•™μŠ΅ν•˜λŠ” 법을 ν•™μŠ΅ν•¨μ— μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ μ•Œκ³ λ¦¬μ¦˜μ˜ μ„±λŠ₯ 츑정을 μœ„ν•΄ λͺ¨λΈμ˜ μ„±λŠ₯ μˆ˜μΉ˜μ™€ λ”λΆˆμ–΄ μ „λ°˜μ μΈ 문제 μ„€μ • λ˜ν•œ 같이 κΈ°μˆ λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. μ΄μ—λŒ€ν•œ ν‘œμ€€μ„ μ—”-웨이 케이-μƒ· ν”„λ ˆμž„μ›Œν¬(n-way k-shot framework)라 ν•©λ‹ˆλ‹€.

  • μ—”-웨이(n-way): ν•œ 업무에 κ΄€ν•œ κ³„κΈ‰μ˜ 총 수λ₯Ό μ§€μΉ­ν•©λ‹ˆλ‹€.

  • 케이-μƒ·(k-shot): μ„œν¬νŠΈ μ„ΈνŠΈμ—μ„œ 계급 λ‹Ή 제곡될 μ˜ˆμ‹œμ˜ 총 수λ₯Ό μ§€μΉ­ν•©λ‹ˆλ‹€.

Few Shot Learning and Zero Shot Learning

퓨 μƒ· ν•™μŠ΅(few shot learning), 제둜 μƒ· ν•™μŠ΅(zero shot learning) λ“±μ˜ λͺ…칭은 μ—”-웨이 케이-μƒ· ν”„λ ˆμž„μ›Œν¬μ—μ„œ κΈ°μ›ν•©λ‹ˆλ‹€. 퓨 μƒ· ν•™μŠ΅μ€ 적은 케이-샷을 μœ„ν•œ, 제둜 μƒ· ν•™μŠ΅μ€ 0의 케이-샷을 μ„€μ •ν•œ λ©”νƒ€ν•™μŠ΅μ— λŒ€ν•œ 연ꡬ λ˜λŠ” μ•Œκ³ λ¦¬μ¦˜μž…λ‹ˆλ‹€.

이런 μ •μ˜λŠ” μ—„κ²©ν•˜κ²Œ μ‚¬μš©λ˜μ§„ μ•ŠμŠ΅λ‹ˆλ‹€. λ©”νƒ€ν•™μŠ΅μ΄ μ•„λ‹ˆλΌλ„ zero-shot, few-shot λ“±μ˜ ν‘œν˜„μ΄ μ‚¬μš©λ˜λŠ” ν‘œν˜„μ΄λ§ŽμŠ΅λ‹ˆλ‹€.

Meta Regularization

메타 μ •κ·œν™”(meta regularization)λž€ λͺ¨λΈμ˜ μ •κ·œν™” μ„±λŠ₯에 κΈ°μ—¬ν•˜λŠ” μƒμˆ˜, 절편, λ³€ν™˜μ— λŒ€ν•œ μ—°κ΅¬μž…λ‹ˆλ‹€.

  • λ“œλ‘­μ•„μ›ƒ(dropout): ν•™μŠ΅ κ³Όμ •μ—μ„œ λ¬΄μž‘μœ„λ‘œ 일뢀 λ‰΄λŸ°μ„ λΉ„ν™œμ„±ν™”ν•˜μ—¬ λͺ¨λΈμ˜ 과적합을 λ°©μ§€ν•˜κ³  μΌλ°˜ν™” λŠ₯λ ₯을 ν–₯μƒμ‹œν‚€λŠ” μ •κ·œν™” κΈ°λ²•μž…λ‹ˆλ‹€.

  • 사전 지식(prior knowledge): 도메인 μ „λ¬Έκ°€μ˜ μ§€μ‹μ΄λ‚˜ 이전 ν•™μŠ΅ κ²½ν—˜μ—μ„œ 얻은 톡찰을 ν™œμš©ν•˜μ—¬ ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μ„ μ΅œμ ν™”ν•˜κ³ , 더 효율적이고 κ²¬κ³ ν•œ ν•™μŠ΅ 과정을 μ„€κ³„ν•©λ‹ˆλ‹€.

  • κ·Έμ™Έ λ³€ν™˜, ν΄λŸ¬μŠ€ν„°λ§μ— κ΄€λ ¨λœ μƒμˆ˜ λ“±

μ΄λŠ” λ‹¨μˆœνžˆ λ©”νƒ€ν•™μŠ΅μ—λ§Œ κ΅­ν•œλ˜λŠ” κ°œλ…μ€ μ•„λ‹™λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ©”νƒ€ν•™μŠ΅μ˜ μ£Όμš” λͺ©ν‘œμΈ μ •κ·œν™”μ™€ λ§₯락을 같이 μ„œλ‘œ 자주 μ—°κ΄€λ˜κ³€ ν•©λ‹ˆλ‹€.