πŸ“˜
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 Deep Neural Network and the Latest Solutions
  • Modern AI Systems: An In-depth Guide to Cutting-edge Technologies and Applications
  • Few Shot Learning
    • Overview on Meta Learning
    • Prototypical Networks for Few-shot Learning
    • Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
  • Natural Language Process
    • * Tokenization and Stemming, Lemmatization, Stop-word Removal: Core Fundamental of NLP
    • Bag-of-Words
  • 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
  • Perceptron
  • ADALINE
  1. Fundamental Machine Learning

Early-stage of AI: Perceptron and ADALINE

νΌμ…‰νŠΈλ‘ (perceptron)κ³Ό 아달린(ADALINE)은 λ”₯λŸ¬λ‹μ˜ κΈ°μ΄ˆκ°€ λ˜λŠ” 핡심 κ°œλ…μž…λ‹ˆλ‹€. 두 λͺ¨λΈμ€ 인곡 μ‹ κ²½λ§μ˜ 초기 ν˜•νƒœλ‘œμ„œ ν˜„λŒ€ 신경망 ꡬ쑰의 이해와 κ°œλ°œμ— μ€‘μš”ν•©λ‹ˆλ‹€. νΌμ…‰νŠΈλ‘ μ€ 이진 λΆ„λ₯˜κΈ°λ‘œ μ‹œμž‘ν•΄ 아달린과 ν•¨κ»˜ μ •κ΅ν•œ ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μœΌλ‘œ λ°œμ „ν–ˆκ³ , μ΄λŠ” ν˜„μž¬μ˜ λ‹€μΈ΅ 신경망과 λ”₯λŸ¬λ‹ λͺ¨λΈμ˜ ν† λŒ€κ°€ λ˜μ–΄ λ³΅μž‘ν•œ νŒ¨ν„΄ 인식과 데이터 처리λ₯Ό κ°€λŠ₯ν•˜κ²Œ ν–ˆμŠ΅λ‹ˆλ‹€.

Perceptron

νΌμ…‰νŠΈλ‘  λ˜λŠ” 이진뢄λ₯˜κΈ°(binary classifier)λŠ” 이진뢄λ₯˜μ˜ ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜μž…λ‹ˆλ‹€. μ„ ν˜• λΆ„λ₯˜κΈ°μ˜ μΌμ’…μœΌλ‘œ 무게, νŠΉμ§•μ˜ κ³±ν•©κ³Ό λ°˜μ‘ν•˜λŠ” μ„ ν˜•μ˜ˆμΈ‘ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

발λͺ…κ°€μ˜ 이름을 λ”°μ„œ McCulloch-Pitts neuronλ‘œλ„ λΆˆλ¦½λ‹ˆλ‹€.

ν˜„λŒ€ λ¨Έμ‹ λŸ¬λ‹μ˜ λ§₯λ½μ—μ„œ νΌμ…‰νŠΈλ‘ μ€ 이진 λΆ„λ₯˜κΈ°λ₯Ό ν•™μŠ΅ν•˜λŠ” μ•Œκ³ λ¦¬μ¦˜ μ€‘μ—μ„œλ„ μž„κ³„ν•¨μˆ˜μ˜ 발λͺ…이 더 κ°•μ‘°λ©λ‹ˆλ‹€.

νΌμ…‰νŠΈλ‘ μ˜ 역사

νΌμ…‰νŠΈλ‘ μ€ 1943λ…„ Warren McCulloch와 Walter Pitts에 μ˜ν•΄ 처음 발λͺ…λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이것은 μ†Œν”„νŠΈμ›¨μ–΄ ν˜•νƒœκ°€ μ•„λ‹ˆλΌ IBM 704λž€ κΈ°κ³„λ‘œ κ΅¬ν˜„λœ κ²ƒμ΄μ—ˆμŠ΅λ‹ˆλ‹€. 이후, μ†Œν”„νŠΈμ›¨μ–΄λ‘œ κ΅¬ν˜„λœ Mark 1 Perceptron이 λ“±μž₯ν–ˆμŠ΅λ‹ˆλ‹€β€”μ΄λŠ” 이미지λ₯Ό λΆ„λ₯˜ν•  λͺ©μ μœΌλ‘œ 400개의 포토셀을 μž…λ ₯으둜 λ°›μ•˜μŠ΅λ‹ˆλ‹€.

Mathematical Definition

ν˜„λŒ€μ— μ™€μ„œ νΌμ…‰νŠΈλ‘ μ€ κ³„λ‹¨ν•¨μˆ˜(step function)λ₯Ό ν¬ν•¨ν•˜λŠ” 이진 λΆ„λ₯˜κΈ°μ˜ μ•Œκ³ λ¦¬μ¦˜μœΌλ‘œ μΈμ‹λ©λ‹ˆλ‹€.

f(z)=y=f[w(t)β‹…xj]f(z) = y = f[w(t)\cdot x_j]f(z)=y=f[w(t)β‹…xj​]
  • rrr은 ν•™μŠ΅λ₯ μž…λ‹ˆλ‹€. 000κ³Ό 111 μ‚¬μ΄μ˜ 값을 κ°€μ§‘λ‹ˆλ‹€. 클수둝 κ°€μ€‘μΉ˜κ°€ 크게 λ³€λ™ν•©λ‹ˆλ‹€.

  • D={(x1,d1),...,(xs,ds)}D = \left\{(x_1, d_1), ...,(x_s,d_s)\right\}D={(x1​,d1​),...,(xs​,ds​)}은 ν›ˆλ ¨ λ°μ΄ν„°μž…λ‹ˆλ‹€.

    • xjx_jxjβ€‹λŠ” nnn μ°¨μ›μ˜ μž…λ ₯ λ²‘ν„°μž…λ‹ˆλ‹€.

    • djd_jdjβ€‹λŠ” μž…λ ₯에 λŒ€ν•΄ νΌμ…‰νŠΈλ‘ μ΄ 내놓아야 ν•  좜λ ₯μž…λ‹ˆλ‹€.

  • νŠΉμ§•κ³Ό 자료의 색인은 λ‹€μŒκ³Ό 같이 ν‘œν˜„ν•©λ‹ˆλ‹€.

    • xj,ix_{j,i}xj,iβ€‹λŠ” jjj번째 μž…λ ₯의 iii번째 νŠΉμ§•μ΄λ‹€.

    • xj,0=1x_{j,0} = 1xj,0​=1

  • λ¬΄κ²ŒλŠ” λ‹€μŒκ³Ό 같이 ν‘œν˜„λ  수 μžˆμŠ΅λ‹ˆλ‹€.

    • wiw_iwiβ€‹λŠ” λ¬΄κ²Œμ—μ„œ i번째 값이며 μž…λ ₯의 iii번째 νŠΉμ§•κ³Ό κ³±ν•΄μ§‘λ‹ˆλ‹€.

    • xj,0=1x_{j,0} = 1xj,0​=1이기 λ•Œλ¬Έμ— w0w_0w0​은 μƒμˆ˜ bbb라고 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

    • μ‹œκ°„μ— λ”°λ₯Έ wwwλ₯Ό λ‚˜νƒ€λ‚΄κΈ° μœ„ν•΄ λ‹€μŒκ³Ό 같은 ν‘œκΈ°λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

      • wi(t)w_i(t)wi​(t)은 tttμ—μ„œμ˜ iii번째 무게의 값을 λ§ν•©λ‹ˆλ‹€.

  • fffλŠ” μž„κ³„ν•¨μˆ˜μž…λ‹ˆλ‹€.

Learning Step

  1. κ°€μ€‘μΉ˜λ₯Ό μ‹œμž‘ν•©λ‹ˆλ‹€. 이듀은 0 λ˜λŠ” λ‚œμˆ˜λ‘œ μ΄ˆκΈ°ν™”λ  수 μžˆμŠ΅λ‹ˆλ‹€.

  2. DDD의 각 jjj에 λŒ€ν•΄ λ‹€μŒμ˜ κ±ΈμŒμ„ μˆ˜ν–‰ν•©λ‹ˆλ‹€.

    1. 좜λ ₯을 κ³„μ‚°ν•©λ‹ˆλ‹€: yj(t)=f[w(t)β‹…xj]y_j(t) = f[w(t) \cdot x_j]yj​(t)=f[w(t)β‹…xj​]

    2. 무게λ₯Ό κ°±μ‹ ν•©λ‹ˆλ‹€: wi(t+1)=wi(t)+rβ‹…(djβˆ’yj(t))xj,iw_i(t+1) = w_i(t) + r \cdot (d_j-y_j(t))x_{j,i}wi​(t+1)=wi​(t)+rβ‹…(djβ€‹βˆ’yj​(t))xj,i​

  3. 였λ₯˜κ°€ μ—†μ–΄μ§€κ±°λ‚˜ μ–΄λ–€ μž„κ³„μ— λ‹¬ν•˜λ©΄ 발자ꡭ이 멈μΆ₯λ‹ˆλ‹€.

    1. μ΄λ•Œ νŠΉμ •ν•œ λ‹¨κ³„κΉŒμ§€ 반볡이 λ©ˆμΆ”μ§€ μ•ŠλŠ” ν•™μŠ΅μ„ μ˜€ν”„λΌμΈ ν•™μŠ΅(offline learning)라 ν•©λ‹ˆλ‹€.

μ—λ‹ˆλ©”μ΄μ…˜μ„ ν†΅ν•œ 이해

ADALINE

아달린(Adaptive Linear Neuron, Adaptive Linear Element)λŠ” λ‹¨μΈ΅μ˜ 인곡 μ‹ κ²½λ§μž…λ‹ˆλ‹€. νΌμ…‰νŠΈλ‘ μ— κ·Όκ±°ν•˜κ³  있으며 무게, 절편, 총합 ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

아달린과 νΌμ…‰νŠΈλ‘ μ˜ 차이

  • νΌμ…‰νŠΈλ‘ μ€ ν™œμ„±ν™” ν•¨μˆ˜λ₯Ό ν•™μŠ΅μ— ν¬ν•¨μ‹œν‚΅λ‹ˆλ‹€. 이런 이유둜 νΌμ…‰νŠΈλ‘ μ€ λΆˆμ—°μ†μ μΈ μ„±μ§ˆμ„ κ°€μ§€κ²Œ λ©λ‹ˆλ‹€.

  • 아달린은 ν™œμ„±ν™” ν•¨μˆ˜λ₯Ό ν•™μŠ΅μ— ν¬ν•¨μ‹œν‚€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 이런 이유둜 아달린은 연속적인 μ„±μ§ˆμ„ κ°€μ§€κ²Œ 되며; νΌμ…‰νŠΈλ‘  보닀 더 큰 μ„ ν˜•μ„±μ„ κ°€μ§‘λ‹ˆλ‹€.

    • 이와 λ”λΆˆμ–΄ ν™œμ„±ν˜Έ ν•¨μˆ˜λ‘œ κ³„λ‹¨ν•¨μˆ˜λ³΄λ‹¨ μ„ ν˜•ν•¨μˆ˜λ₯Ό μ„ νƒν•©λŠ” κ²½μš°κ°€ λŒ€λΆ€λΆ„μž…λ‹ˆλ‹€.

μŠ€νƒ ν¬λ“œ λŒ€ν•™κ΅μ˜ Bernard Widrow κ΅μˆ˜μ™€ 그의 학생 Ted Hoffκ°€ 1960년에 κ°œλ°œν•˜μ˜€μŠ΅λ‹ˆλ‹€.

μˆœμ „νŒŒλ₯Ό μ‚¬μš©ν•˜λ©° μ™„μ „ μ—°κ²°λœ 신경망을 λ§ˆλ‹¬λ¦°(Many Adaline)이라고 λΆ€λ¦…λ‹ˆλ‹€. λ§ˆλ”œλ¦°μ€ 은닉측과 좜λ ₯측에 λŒ€ν•œ ν™œμ„±ν™” ν•¨μˆ˜λ‘œ μ‹œκ·Έλ„˜ ν•¨μˆ˜(signum function)을 μ‚¬μš©ν•©λ‹ˆλ‹€. 또 각 측이 λ‹€λ₯Έ ν›ˆλ ¨ μ•Œκ³ λ¦¬μ¦˜μ„ κ°€μ§‘λ‹ˆλ‹€β€”μ΄λŠ” μ—­μ „νŒŒλ₯Ό 톡해 ν›ˆλ ¨ν•˜λŠ” κ±Έ λΆˆκ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€.

Mathematical Definition

아달린은 λ‹€μ–‘ν•œ λ…Έλ“œλ‘œ κ΅¬μ„±λœ λ‹€μΈ΅ μ‹ κ²½λ§μœΌλ‘œ μ—¬λŸ¬ μž…λ ₯을 λ°›μ•„ ν•˜λ‚˜μ˜ 좜λ ₯을 λ§Œλ“€μ–΄μ•Ό ν•©λ‹ˆλ‹€.

y=Ξ£j=0nxjwj+ΞΈy = \Sigma^{n}_{j=0}x_jw_j + \thetay=Ξ£j=0n​xj​wj​+ΞΈ
  • xxxλŠ” μž…λ ₯ λ²‘ν„°μž…λ‹ˆλ‹€.

    • x0=1x_0 = 1x0​=1μž…λ‹ˆλ‹€.

  • wwwλŠ” κ°€μ€‘μΉ˜ λ²‘ν„°μž…λ‹ˆλ‹€.

    • w0=0w_0 = 0w0​=0μž…λ‹ˆλ‹€.

  • nnn은 μž…λ ₯의 κ°―μˆ˜μž…λ‹ˆλ‹€.

  • ΞΈ\thetaΞΈλŠ” μƒμˆ˜μž…λ‹ˆλ‹€.

  • yyyλŠ” λͺ¨λΈμ˜ 좜λ ₯μž…λ‹ˆλ‹€.

Leaning Step

μ•„λ‹¬λ¦°μ˜ ν•™μŠ΅λ²•μ€ 경사 ν•˜κ°•λ²•μ˜ 일쒅인 μ΅œμ†Œ μ œκ³±λ²•(least mean squares)이 μ‚¬μš©λ©λ‹ˆλ‹€. κ°€μ€‘μΉ˜κ°€ κ°±μ‹ λ˜κΈ° μœ„ν•œ μ•Œκ³ λ¦¬μ¦˜κ³Ό κ·Έ λ³€μˆ˜λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

w←w+Ξ·(oβˆ’y)xw \leftarrow w + \eta(o-y)xw←w+Ξ·(oβˆ’y)x
  • Ξ·\etaΞ·λŠ” ν•™μŠ΅λ₯ μž…λ‹ˆλ‹€.

  • yyyλŠ” λͺ¨λΈμ˜ 좜λ ₯μž…λ‹ˆλ‹€.

  • oooλŠ” 좜λ ₯μž…λ‹ˆλ‹€.

  • E=(oβˆ’y)2E = (o-y)^2E=(oβˆ’y)2λŠ” 였λ₯˜μ— λŒ€ν•œ μ œκ³±μž…λ‹ˆλ‹€.

PreviousFoundational Work of ML: Linear/Logistic RegressionNextWhat is Deep Learning?: Artificial Neural Network to Deep Neural Network

Last updated 1 month ago