🚩λ”₯λŸ¬λ‹ 기초 - part07. Multi-Variate Linear Regression (닀쀑 μ„ ν˜• νšŒκ·€)

vincaΒ·2022λ…„ 10μ›” 26일
0

πŸŒ“ AI/DL - theory

λͺ©λ‘ 보기
8/24

🟒 Introduction

ν˜„μž¬κΉŒμ§€λŠ” y=wx+by=wx+b 즉 xx ν•œ 가지 λ…λ¦½λ³€μˆ˜λ₯Ό 톡해, μ’…μ†λ³€μˆ˜ yyλ₯Ό κ΅¬ν•˜μ˜€λ‹€.

  • (biasλŠ” input 데이터가 λ‚˜νƒ€λ‚΄λŠ” featureκ°€ μ•„λ‹Œ μ μ ˆν•œ 쑰정에 μ‚¬μš©λ˜λŠ” λ‹¨μˆœν•œ νŒŒλΌλ―Έν„°μ΄λ―€λ‘œ μ œμ™Έ)

예λ₯Όλ“€μ–΄, ν•™μƒμ˜ κ³΅λΆ€μ‹œκ°„ μ΄λΌλŠ” x 데이터 ν•˜λ‚˜λ§ŒμœΌλ‘œ κ³Όλͺ©μ μˆ˜ yλ₯Ό μ§€κΈˆκΉŒμ§€ μ˜ˆμΈ‘ν•œ 것이닀.

μ΄κ²ƒλ§ŒμœΌλ‘œ μΆ©λΆ„νžˆ κ³Όλͺ©μ μˆ˜ yλ₯Ό 잘 μ˜ˆμΈ‘ν•  수 μžˆμ„κΉŒ?

λ‹Ήμ—°νžˆ κ³΅λΆ€μ‹œκ°„, 결석일, 집쀑도, μ»¨λ””μ…˜.. λ“± λ§Žμ€ μš”μ†Œ 즉, feature 듀을 포함 ν•œλ‹€λ©΄ 더 μ •ν™•ν•œ κ³Όλͺ©μ μˆ˜ yλ₯Ό μ˜ˆμΈ‘ν•  수 μžˆμ„ 것이닀.

λ”°λΌμ„œ 이번 part07μ—μ„œλŠ” μ΄λŸ¬ν•œ feature값이 μ—¬λŸ¬κ°œμΈ Multi-Variate Linear Regression (닀쀑 μ„ ν˜• νšŒκ·€) λ₯Ό μ•Œμ•„λ³΄μž!

πŸ“Š 닀쀑 μ„ ν˜• νšŒκ·€

κ³΅λΆ€μ‹œκ°„, 결석일 2κ°€μ§€μ˜ feautre을 톡해 κ³Όλͺ©μ μˆ˜ yλ₯Ό μ˜ˆμΈ‘ν•˜λŠ” λͺ¨λΈμ„ λ§Œλ“ λ‹€κ³  κ°€μ •ν•˜μž.

  • 이와 같은 μƒ˜ν”Œ 데이터(ν•™μŠ΅ 데이터)λ₯Ό ν™œμš©ν•˜μ—¬ μš°λ¦¬λŠ” 닀쀑 μ„ ν˜• νšŒκ·€λ₯Ό μˆ˜ν–‰ν•˜κ³ , μ μ ˆν•œ 예츑 λͺ¨λΈμ„ λ§Œλ“œλŠ” 것이 λͺ©μ μ΄λ‹€.
  • κ·Έμ € λ³€μˆ˜κ°€ ν•˜λ‚˜ μΆ”κ°€λ˜μ—ˆμ„ 뿐, μ„ ν˜• νšŒκ·€μ™€ λ™μΌν•˜λ‹€ μ‰½κ²Œ μƒκ°ν•˜μž!

♍ μˆ˜μ‹

μˆ˜μ‹μ€ λ‹€μŒκ³Ό κ°™λ‹€.

  • μ˜ˆμΈ‘μ— μžˆμ–΄ ν•˜λ‚˜μ˜ featureκ°€ μžˆμ„ λ•ŒλŠ” λ‹¨μˆœνžˆ λ³€μˆ˜λ‘œ μ“°λ‚˜, 2κ°œμ΄μƒμ˜ λ³€μˆ˜κ°€ μ‚¬μš©λ  λ•ŒλŠ” 이듀을 λ¬Άμ–΄ 벑터화 μ‹œν‚€κ³  WXWX λŒ€λ¬Έμžλ‘œ ν‘œν˜„ν•œλ‹€.
  • WXWXλ₯Ό λœ―μ–΄λ³΄λ©΄ 별 κ±° μ—†λ‹€.
    λ‹¨μˆœνžˆ 길게 μ“°κΈ° μ‹«μ–΄μ„œ 쀄인 거라 μƒκ°ν•˜λ©΄ λœλ‹€.

    feture x1x1, x2x2μ—λŠ” 각각의 weightκ°€ λΆ™λŠ”λ‹€. (쑰정될 κ°’μ΄λ‹ˆκΉŒ λ‹Ήμ—°)

βœ… 벑터λ₯Ό μ‚¬μš©ν•œ ν‘œν˜„μ˜ λ‹¨μˆœν™”

벑터화가 μ–΄λ–»κ²Œ 이루어 쑌길래, μ € 식이 μ €μ‹μ΄λž‘ 같은 것인지 κΆκΈˆν•˜μ§€ μ•Šμ€κ°€?

κ·Έλ ‡λ‹€ λ‚˜λ„ μ•ˆ κΆκΈˆν•˜λ‹€. κ·Έλž˜λ„ feautreκ°€ λ§Žμ•„μ§€λŠ”λŒ€λ‘œ, κ·Έκ±Έ 길게 끝도 없이 μ“Έ μˆ˜λŠ” μ—†λ‹€.
그렇기에 μ•Œμ•„μ•Ό ν•  것이닀. μ•Œμ•„λ‘λ„λ‘ ν•˜μž.

1. bλ₯Ό μƒλž΅ν•˜κ³  벑터화

μ‰½κ²Œ μ΄ν•΄ν•˜κΈ° μœ„ν•΄ bλ₯Ό μƒλž΅ν•˜κ³  μƒκ°ν•΄λ³΄μž
weight와 biasλ₯Ό λ₯Ό 각각 λ¬Άμ–΄ ν–‰λ ¬ κ³± ν˜•νƒœμ™€ μœ μ‚¬ν•˜κ²Œ λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€. μ΄λŠ” μ—°μ‚°κ²°κ³Ό λ™μΌν•˜λ‹€λŠ” 것을 보인닀.
이후 μ΄λŸ¬ν•œ 뢀뢄을 Bold체둜 W, X둜 ν‘œν˜„ν•˜λ©΄, 이것이 벑터화이닀.

2. biasλ₯Ό ν¬ν•¨μ‹œμΌœμ„œ 벑터화λ₯Ό ν•œλ‹€λ©΄?

λ³„λ°˜ λ‹€λ₯Ό κ±° μ—†λ‹€!

biasλ˜ν•œ κ°±μ‹ λ˜λŠ” νŒŒλΌλ―Έν„°μ΄λ―€λ‘œ WW의 ν–‰λ ¬κ³Ό ν•¨κ»˜ λ¬Άκ³ ,
feature augmentation을 톡해 μƒμˆ˜ν•­ 1을 feature을 λ‚˜νƒ€λ‚΄λŠ” xnx_ n 행렬에 μΆ”κ°€ν•œλ‹€.

  • feature augmentation
    μ‰½κ²Œ μƒκ°ν•΄μ„œ, 연산을 μœ„ν•΄μ„œλŠ” biasλž‘ 짝을 λ§žμΆ°μ•Ό ν•˜λ―€λ‘œ, λ‹¨μˆœνžˆ feature 뢀뢄에 1을 μΆ”κ°€ν•œ 것이닀.

πŸ’₯ 문제점 - λ²‘ν„°λŠ” 기본적으둜 열벑터

μœ„μ— 그림듀이 ν‘œν˜„μ„ μœ„ν•΄μ„œ μ €λ ‡κ²Œ ν–ˆμ§€λ§Œ...사싀..λ²‘ν„°λŠ” 기본적으둜 μ—΄ 벑터이닀..

  • 열벑터와 행벑터

λ”°λΌμ„œ (1x3) x (3x1)κ°€ μ•„λ‹Œ μ‹€μ œλ‘œλŠ” (3x1) x (3x1)의 μ—°μ‚°μ΄λ―€λ‘œ μ΄λŠ” 이루어 질 수 μ—†λ‹€. (ν–‰λ ¬ 곱의 κ°œλ…)

그렇기에 행렬을 WTW^T 즉 Transpose ν•΄μ£Όκ²Œ 되면 ν•΄κ²°λœλ‹€.

  • transpose의 예
  • μ΄λ ‡κ²Œ ν‘œκΈ°ν•¨μœΌλ‘œμ¨ ν•΄κ²°λ˜μ—ˆλ‹€!

πŸ‘¨β€πŸ’Ό μ—¬λŸ¬ μƒ˜ν”Œμ— λŒ€ν•œ ν‘œν˜„μ˜ λ‹¨μˆœν™”

자 μ•žμ„  μ˜ˆμ‹œλ“€μ€ ν•˜λ‚˜μ˜ μƒ˜ν”Œ 즉, μ‚¬λžŒ ν•œλͺ…μ˜ x1(κ³΅λΆ€μ‹œκ°„), x2(결석), x3(κ³ μ•‘ κ³Όμ™Έ 횟수)의 freature에 λŒ€ν•΄μ„œ 식을 μ„Έμ› λ‹€.

근데 μƒ˜ν”Œ(μ‚¬λžŒ) dataλŠ” λ‹Ήμ—°νžˆ 1κ°œκ°€ μ•„λ‹Œ μˆ˜μ‹­ μˆ˜λ°±κ°œκ°€ 될 μˆ˜μžˆλ‹€. (ν•™μŠ΅μ„ data ν•˜λ‚˜λ‘œ ν•  μˆ˜λŠ” 없지 μ•Šμ€κ°€?)

그럼 μ–΄λ–»κ²Œ λ‚˜νƒ€λ‚΄λ©΄ 될까?

각 μ‚¬λžŒμ˜ feature κ°’λ“€ " x1(κ³΅λΆ€μ‹œκ°„), x2(결석), x3(κ³ μ•‘ κ³Όμ™Έ 횟수)" 의 μ’…λ₯˜λŠ” λͺ¨λ“  μ‚¬λžŒμ΄ λ™μΌν•˜λ―€λ‘œ, weight의 경우 λ”°λ‘œ 해쀄 μ΄μœ λŠ” μ—†λ‹€.

각 feature 별 ν•˜λ‚˜μ”©λ§Œ 있으면 되기 λ•Œλ¬Έμ΄λ‹€.

λ”°λΌμ„œ λ³€κ²½λ˜λŠ” 뢀뢄은 각 μ‚¬λžŒλ§ˆλ‹€ λ‹€λ₯Έ x1(κ³΅λΆ€μ‹œκ°„), x2(결석), x3(κ³ μ•‘ κ³Όμ™Έ 횟수)" 의 κ°’ 이닀.

  • ν•΅μ‹¬λ§Œ 보자.
    100개의 μƒ˜ν”Œ(μ‚¬λžŒ)이 μžˆλŠ” 경우 4x1 크기의 XX κ°€ 100λͺ…μ˜ λͺ¨λ“  feature 값을 ν‘œν˜„ν•΄μ•Όν•˜λ―€λ‘œ 4x100 크기가 λœλ‹€. 끝

πŸ“‰ μ†μ‹€ν•¨μˆ˜μ™€ λΉ„μš©ν•¨μˆ˜

이 λ˜ν•œ μ΅œμ†Œν•œμ˜ 였차λ₯Ό κ°€μ§€λŠ” λͺ¨λΈμ„ λ§Œλ“œλŠ” 것이 λͺ©μ μ΄λ―€λ‘œ, 였차λ₯Ό μ΄μš©ν•˜μ—¬ 졜적의 λͺ¨λΈμ„ λ§Œλ“ λ‹€.

이λ₯Ό μœ„ν•΄μ„œλŠ” λ‹€μ€‘μ„ ν˜• νšŒκ·€λ˜ν•œ μ„ ν˜•νšŒκ·€μ™€ λ™μΌν•˜κ²Œ 손싀/λΉ„μš© ν•¨μˆ˜κ°€ ν•„μš”ν•˜λ‹€.

  • ν•˜λ‚˜μ˜ data에 λŒ€ν•΄μ„œ Lossλ₯Ό κ²°μ •ν•˜λŠ” μ†μ‹€ν•¨μˆ˜
  • λͺ¨λ“  data에 λŒ€ν•΄μ„œ Loss의 평균을 κ΅¬ν•˜λŠ” λΉ„μš©ν•¨μˆ˜

🎒 Multi-Variate Gradient Descent

μ΅œμ†Œμ˜ Costλ₯Ό κ°€μ§€λŠ” μ„ ν˜• νšŒκ·€μ‹μ„ λ§Œλ“€κΈ° μœ„ν•œ Gradient Descentλ₯Ό μˆ˜ν–‰!.

이전 ν•˜λ‚˜μ˜ feature에 λŒ€ν•˜μ—¬ Gradeint Descentλ₯Ό μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄μ„œλŠ” wwνŽΈλ―ΈλΆ„, bbνŽΈλ―ΈλΆ„μ„ ν†΅ν•΄μ„œ μš°λ¦¬λŠ” weight, biasλ₯Ό 각각 κ°±μ‹ ν–ˆλ‹€.

μ΄λ²ˆμ—λŠ” feature값이 N개(2 이상)이고, 이에따λ₯Έ weightλ˜ν•œ 같은 N개(2 이상)κ°€ λ˜λŠ” Multi-Variateν•œ 상황이닀.

μ–΄λ–»κ²Œ ν•΄μ•Όν• κΉŒ?

별 수 μžˆλ‚˜..닀해야지

  • 각 w1,w1,w1,....wNw _1, w _1, w _1, ....w _N 에 λŒ€ν•΄μ„œ λ‹€ νŽΈλ―ΈλΆ„μ„ λ”°λ‘œ ν•œ λ’€, 각 feaute에 λŒ€ν•œ weightλ₯Ό μ—…λ°μ΄νŠΈ ν•΄μ€˜μ•Όν•œλ‹€..

λͺ¨λ“  weight에 λŒ€ν•΄μ„œ gradient desent(κ²½μ‚¬ν•˜κ°•λ²•)λ₯Ό μˆ˜ν–‰ν•œλ‹€.

πŸ“‰ Multi-Variate μΌλ•Œμ˜ κ·Έλž˜ν”„

  • featureκ°€ 1κ°œμΌλ•ŒλŠ” 2차원 평면에 ν‘œν˜„ν–ˆλ‹€.
  • 2개둜 λŠ˜μ–΄λ‚¬μœΌλ‹ˆ 3차원 평면에 ν‘œν˜„ν•˜κ²Œ λœλ‹€.
  • 4차원 이상은 μ΄ˆν‰λ©΄μ΄λΌκ³  ν•œλ‹€.

μ΄κ²ƒμœΌλ‘œ Multi-Variate Linear Regression (닀쀑 μ„ ν˜• νšŒκ·€) λ₯Ό λ§ˆμΉœλ‹€.

profile
뢉은 λ°° μ˜€μƒ‰ 딱닀ꡬ리 개발자 πŸ¦ƒCloud & DevOps

0개의 λŒ“κΈ€