14 Mon

TIL

๊ฒฐ์ •

์ ์–ด๋„ ๋ฐฐ์šด ๊ฒƒ์„ ๊ธฐ๋ก์€ ํ•ด์•ผ TIL์˜ ์˜๋ฏธ๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ํ•˜์ง€๋งŒ ๋‚จ๋“ค์ด ๋ณด๊ธฐ์— ๋งค์šฐ ์ž์„ธํ•œ ๋‚ด์šฉ์ด ์•„๋‹ˆ๊ณ , ๋งŽ์€ ์ˆ˜์‹๊ณผ ๊ธ€ ๋Œ€์‹  ์ด๋ฅผ ๋‹ด์€ ํ•˜๋‚˜์˜ ์ด๋ฏธ์ง€๋กœ ๋Œ€์ฒด ํ•˜๋”๋ผ๋„ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์„ ์ฑ„ํƒํ•ด ์ž‘์„ฑํ•˜๊ธฐ๋กœ ํ•œ๋‹ค. TIL์— ๋„ˆ๋ฌด ๋งŽ์€ ์‹œ๊ฐ„์„ ํˆฌ์žํ•˜์ง€ ์•Š๊ณ  ์‹ถ๋‹ค. ํ•˜์ง€๋งŒ ์ž˜์€ ์“ฐ๊ณ  ์‹ถ๋‹ค. ์ตœ๋Œ€ํ•œ ์ž˜ ์ •๋ฆฌ๋Š” ํ•  ๊ฒƒ.

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค AI ์Šค์ฟจ 1๊ธฐ

3์ฃผ์ฐจ DAY 1

Git์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

์—ฌ๋Ÿฌ๋ช…์ด์„œ ํ˜‘์—…ํ•˜๋ฉด์„œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์ด๋ฉ”์ผ๋“ฑ์„ ์‚ฌ์šฉํ•˜๊ธฐ์—๋Š” ์„œ๋กœ์˜ ์ž‘์—… ์ˆœ์„œ๊ฐ€ ๊ณ ๋ ค๋˜์–ด์•ผ ๋˜๊ณ  ์•ž์‚ฌ๋žŒ์˜ ์™„๋ฃŒ ์‹œ๊ฐ„์— ์˜ํ–ฅ์„ ๋ฐ›๋Š”๋‹ค. ๋ถ„์‚ฐ ๋ฒ„์ „๊ด€๋ฆฌ ์‹œ์Šคํ…œ GIT์˜ ๋“ฑ์žฅ.

Git์€ ๋ถ„์‚ฐ ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ! ์„œ๋ฒ„์˜ ์›๊ฒฉ ์ €์žฅ์†Œ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋‘๊ณ  ๊ฐ ๊ตฌ์„ฑ์›์˜ ์ €์žฅ์†Œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌ ๋ฐ ์ถ”ํ•ฉ.

git init

git repositary๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ์‹ค์ œ๋กœ ์•„๋ฌด ๋ณ€ํ™”๊ฐ€ ์—†๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ .git ์ˆจ๊น€ํŒŒ์ผ์— ์กด์žฌํ•˜๊ณ  ์žˆ์Œ.

  • ๋กœ์ปฌ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด 3๊ฐ€์ง€์˜ ๊ณต๊ฐ„์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์žˆ์Œ.

  • Working Directory๋Š” unstaged ๋ผ๊ณ ๋„ ๋ถˆ๋ฆฌ๋ฉฐ commit์— ๋ฐ˜์˜๋˜์ง€ ์•Š์€ ๋ถ€๋ถ„์ด ์ €์žฅ๋˜์–ด ์žˆ์Œ.

  • add๋ผ๋Š” ํ–‰์œ„๋Š” ๋‹ค์Œ์— ์ปค๋ฐ‹ํ•  ๋‚ด์šฉ์„ ์ถ”๊ฐ€

  • commit์€ ์Šค๋ƒ…์ƒทํ•  ๋‚ด์šฉ์— ์ ์šฉํ•˜๋ฉฐ committed ์ƒํƒœ๋กœ ๋ฐ”๋€œ

git status

ํ˜„์žฌ branch์˜ ํŒŒ์ผ๋“ค์˜ ์ƒํƒœ๋ฅผ ์ถœ๋ ฅ

git add <์ถ”๊ฐ€ ํŒŒ์ผ>

์ปค๋ฐ‹์— ๋ฐ˜์˜ํ•  ํŒŒ์ผ์„ ์ง€์ • : unstaged -> staged

git commit -m <๋ฉ”์‹œ์ง€>

์ปค๋ฐ‹์„ ๋‚จ๊ธฐ๊ฒ ๋‹ค๋Š” ๋ช…๋ น์–ด์ด๋ฉฐ -m ์˜ต์…˜์„ ๋ถ™์ด๋ฉด ํ•ด๋‹น ๋ฉ”์‹œ์ง€๋ฅผ ์ปค๋ฐ‹ ๊ธฐ๋ก์œผ๋กœ ๋‚จ๊ธธ ์ˆ˜ ์žˆ๋‹ค.

git log

์ปค๋ฐ‹์— ๋Œ€ํ•œ ๊ธฐ๋ก์„ ์—ด๋žŒ

Git branch

์ฝ”๋“œ์˜ ํ๋ฆ„์„ ๋ถ„๋ฆฌํ•˜๊ณ  ๋ถ„๊ธฐ๋ฅผ ์„ธ์šฐ๋Š” ๊ฒƒ. ๊ธฐ๋ณธ์ ์œผ๋กœ "master" branch๊ฐ€ ์กด์žฌํ•œ๋‹ค.

git branch <branch_name>

branch_name์„ ๊ฐ€์ง„ ์ƒˆ๋กœ์šด branch๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ช…๋ น์–ด.

git branch -v

ํ˜„์žฌ ์กด์žฌํ•˜๋Š” branch๋ฅผ ์ถœ๋ ฅ

git log

์กด์žฌํ•˜๋Š” branch๋ฅผ ์—ด๋žŒ

git checkout <branch_name>

branch๋ฅผ ์ „ํ™˜ํ•˜๋Š” ๋ช…๋ น์–ด

HEAD -> branch

ํ˜„์žฌ ์ž‘์—…์ค‘์ธ branch๋ฅผ ์˜๋ฏธ

git merge <branch_name> (HEAD -> master)

ํ•ด๋‹น ๋ธŒ๋žœ์น˜๋ฅผ HEAD ๋ธŒ๋žœ์น˜์™€ ๋ณ‘ํ•ฉํ•œ๋‹ค.

git branch -d <branch_name>

ํ•ด๋‹น ๋ธŒ๋žœ์น˜๋ฅผ ์‚ญ์ œํ•œ๋‹ค.

Git๊ณผ Git hub

git remote add <๋ณ„์นญ> <์›๊ฒฉ์ €์žฅ์†Œ ์ฃผ์†Œ>

์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ช…๋ น์–ด. ๋ณ„์นญ์—๋Š” ๋ณดํ†ต origin์„ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค.

git remote -v

์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค€๋‹ค.

git push <remote_repo_name> <branch_name>

๋กœ์ปฌ ์ €์žฅ์†Œ์˜ ๋‚ด์šฉ์„ ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๋‚ด์šฉ์œผ๋กœ ์ „์†กํ•œ๋‹ค.

git branch -M main

๋ธŒ๋žœ์น˜์˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๋ฉฐ -M์˜ ์ธ์ž๊ฐ€ ํ•œ๊ฐœ์ผ ๊ฒฝ์šฐ ํ˜„์žฌ ๋ธŒ๋žœ์น˜์˜ ์ด๋ฆ„์„ ํ•ด๋‹น ์ธ์ž๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค.

git clone <remote_repo> <directory_name>

์›๊ฒฉ์ €์žฅ์†Œ๋ฅผ ๋กœ์ปฌ์ €์žฅ์†Œ๋กœ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ช…๋ น์ด๋‹ค. remote_repo๋Š” ์›๊ฒฉ์ €์žฅ์†Œ์˜ ์ฃผ์†Œ์ด๋ฉฐ directory_name์ด ์—†์„ ๊ฒฝ์šฐ default๋กœ ์›๊ฒฉ์ €์žฅ์†Œ์˜ ํด๋” ์ด๋ฆ„์œผ๋กœ ์ง€์ •๋œ๋‹ค.

1๊ฐ• Numpy์˜ ์—ฐ์‚ฐ

2๊ฐ• Numpy์™€ ์„ ํ˜•๋Œ€์ˆ˜

์ด ๋•Œ, eye์˜ default type์€ float์ด๋‹ค.

์—ญํ–‰๋ ฌ์ด ์—†์„ ๊ฒฝ์šฐ Singular matrix ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

๋ฐ‘๋ฐ”๋‹ฅ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๋”ฅ๋Ÿฌ๋‹

4์žฅ ์‹ ๊ฒฝ๋ง ํ•™์Šต

๋ณ€์ˆ˜๊ฐ€ ์—ฌ๋Ÿฟ์ธ ํ•จ์ˆ˜์— ๋Œ€ํ•ด ๋ณ€์ˆ˜๊ฐ€ ํ•˜๋‚˜๋ฟ์ธ ํ•จ์ˆ˜๋กœ ์ •์˜ํ•ด์„œ ๊ตฌํ•˜๋Š” ๋ฏธ๋ถ„์„ ํŽธ๋ฏธ๋ถ„์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ด ๋•Œ ๋ชจ๋“  ๋ฒกํ„ฐ์˜ ํŽธ๋ฏธ๋ถ„์„ ๋ฒกํ„ฐ๋กœ ์ •๋ฆฌํ•œ ๊ฒƒ์„ ๊ธฐ์šธ๊ธฐ ๋ผ๊ณ  ํ•œ๋‹ค.

ํ•™์Šต : ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ๊ฐ€์ค‘์น˜ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ตœ์ ๊ฐ’์„ ์ž๋™์œผ๋กœ ํš๋“ํ•˜๋Š” ๊ฒƒ

4.1 ๋ฐ์ดํ„ฐ์—์„œ ํ•™์Šตํ•œ๋‹ค!

์‹ ๊ฒฝ๋ง์˜ ํŠน์ง• : ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ณ  ํ•™์Šต. ์ฆ‰, ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ๊ฒฐ์ •. ์ด๊ฒƒ์ด ํผ์…‰ํŠธ๋ก ๊ณผ์˜ ์ฐจ์ด์ด๋‹ค. (ํผ์…‰ํŠธ๋ก  ์ˆ˜๋ ด ์ •๋ฆฌ์— ๋”ฐ๋ฅด๋ฉด ์„ ํ˜• ๋ถ„๋ฆฌ ๊ฐ€๋Šฅ ๋ฌธ์ œ๋Š” ์œ ํ•œ ๋ฒˆ์˜ ํ•™์Šต์„ ํ†ตํ•ด ํ’€ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋น„์„ ํ˜• ๋ถ„๋ฆฌ ๋ฌธ์ œ๋Š” ์ž๋™์œผ๋กœ ํ•™์Šต์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.)

์†๊ธ€์”จ ์ˆซ์ž '5'๋ฅผ ์ œ๋Œ€๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์€ ์–ด๋ ต๋‹ค. ์‚ฌ๋žŒ์€ ์–ด๋ ต์ง€ ์•Š๊ฒŒ ์ธ์‹ํ•˜์ง€๋งŒ, ๊ทœ์น™์„ฑ์„ ๋ช…ํ™•ํ•œ ๋กœ์ง์œผ๋กœ ํ‘œํ˜„ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ. ๋”ฐ๋ผ์„œ ์„ค๊ณ„ํ•˜๋Š” ๋Œ€์‹  ๋ฐ์ดํ„ฐ์˜ ํŠน์ง•์˜ ํŒจํ„ด์„ ํ•™์Šต. ์ปดํ“จํ„ฐ ๋น„์ „ ๋ถ„์•ผ์—์„œ๋Š” SIFT, SURF, HOG ๋“ฑ์˜ ํŠน์ง•์„ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋ฉฐ, SVM, KNN ๋“ฑ์œผ๋กœ ํ•™์Šตํ•œ๋‹ค.

SIFT

์ดˆ๊ธฐ์— ์‚ฌ๋žŒ์ด ์ƒ๊ฐํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋„์ถœ๋œ๋‹ค๋ฉด ์ดํ›„์—๋Š” ์‚ฌ๋žŒ์ด ์ƒ๊ฐํ•œ ํŠน์ง•(SIFT, HOG ๋“ฑ)์„ ํ†ตํ•ด ๊ธฐ๊ณ„ ํ•™์Šต(SVM, KNN ๋“ฑ)์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋„์ถœ๋œ๋‹ค. ์ตœ์ข…์ ์œผ๋กœ ์‹ ๊ฒฝ๋ง์€ ์ด๋ฏธ์ง€๋ฅผ ์žˆ๋Š” ๊ทธ๋Œ€๋กœ ํ•™์Šตํ•œ๋‹ค. ์‚ฌ๋žŒ์ด ํŠน์ง•์„ ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ๊ธฐ๊ณ„ ์Šค์Šค๋กœ ํŠน์ง•์„ ํ•™์Šตํ•œ๋‹ค. ์ด๋ฅผ ์ข…๋‹จ๊ฐ„ ๊ธฐ๊ณ„ํ•™์Šต ์ด๋ผ๊ณ ๋„ ํ•˜๋ฉฐ ์ž…๋ ฅ๋ถ€ํ„ฐ ์ถœ๋ ฅ๊นŒ์ง€ ์‚ฌ๋žŒ์˜ ๊ฐœ์ž…์ด ์—†๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.

๊ธฐ๊ณ„ ํ•™์Šต์€ ๋ฐ์ดํ„ฐ๋ฅผ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์™€ ์‹œํ—˜ ๋ฐ์ดํ„ฐ๋กœ ๋‚˜๋ˆ  ํ•™์Šต๊ณผ ์‹คํ—˜์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ์ด ๋•Œ ๋ฒ”์šฉ ๋Šฅ๋ ฅ์„ ์œ„ํ•ด ๋‘ ๋ฐ์ดํ„ฐ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ. ๋ฒ”์šฉ ๋Šฅ๋ ฅ์€ ์•„์ง ๋ณด์ง€ ๋ชปํ•œ ๋ฐ์ดํ„ฐ ๋ฌธ์ œ๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ’€์–ด๋‚ด๋Š” ๋Šฅ๋ ฅ์ด๋‹ค. ํ•œ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ๋งŒ ํ•™์Šต๊ณผ ํ‰๊ฐ€๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์€ ์˜ฌ๋ฐ”๋ฅธ ํ‰๊ฐ€๊ฐ€ ๋  ์ˆ˜ ์—†์œผ๋ฉฐ ํ•œ ๋ฐ์ดํ„ฐ์…‹์—๋งŒ ์ง€๋‚˜์น˜๊ฒŒ ์ตœ์ ํ™” ๋˜์–ด ์˜ค๋ฒ„ํ”ผํŒ…์ด ๋ฐœ์ƒํ•œ๋‹ค.

4.2 ์†์‹ค ํ•จ์ˆ˜

์‹ ๊ฒฝ๋ง ํ•™์Šต์—์„œ๋Š” ํ˜„์žฌ์˜ ์ƒํƒœ๋ฅผ ํ•˜๋‚˜์˜ ์ง€ํ‘œ๋กœ ํ‘œํ˜„ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ์ง€ํ‘œ๋ฅผ ๊ฐ€์žฅ ์ข‹๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ๊ฐ€์ค‘์น˜ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ํƒ์ƒ‰ํ•œ๋‹ค. ์‹ ๊ฒฝ๋ง ํ•™์Šต์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ง€ํ‘œ๋Š” ์†์‹ค ํ•จ์ˆ˜๋ผ๊ณ  ํ•˜๋ฉฐ ์ผ๋ฐ˜์ ์œผ๋กœ ํ‰๊ท  ์ œ๊ณฑ ์˜ค์ฐจ์™€ ๊ต์ฐจ ์—”ํŠธ๋กœํ”ผ ์˜ค์ฐจ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

ํ‰๊ท  ์ œ๊ณฑ ์˜ค์ฐจ

E=12โˆ‘(ykโˆ’tk)2 E ={1\over2} \sum(y_k - t_k)^2

๊ต์ฐจ ์—”ํŠธ๋กœํ”ผ ์˜ค์ฐจ

E=โˆ’โˆ‘ktklnykE = -\sum\limits_{k} t_k ln y_k

์œ„ ์‹๋“ค์€ ๋‹จ์ผ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์†์‹ค ํ•จ์ˆ˜์ด๋ฉฐ ๋‹ค ๋ฐ์ดํ„ฐ์ผ ๊ฒฝ์šฐ๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์†์‹คํ•จ์ˆ˜์˜ ๊ฐ’์˜ ํ•ฉ์„ ์ง€ํ‘œ๋กœ ์‚ผ๋Š”๋‹ค.

E=โˆ’1Nโˆ‘Nโˆ‘ktnklnynkE = -{1\over N}\sum\limits_N\sum\limits_{k} t_{nk} ln y_{nk}

๋งˆ์ง€๋ง‰์— N์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๊ณผ์ •์„ ํ†ตํ•ด ์ •๊ทœํ™”๋ฅผ ํ•œ๋‹ค. N์œผ๋กœ ๋‚˜๋ˆ”์œผ๋กœ์จ 'ํ‰๊ท  ์†์‹ค ํ•จ์ˆ˜'๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์œผ๋ฉฐ ์ด๋Š” ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜์™€ ๊ด€๊ณ„์—†์ด ํ†ต์ผ๋œ ์ง€ํ‘œ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๊ฒŒ๋œ๋‹ค.

์ด ๋•Œ ๋ฐ์ดํ„ฐ๊ฐ€ 6๋งŒ๊ฐœ(๋˜๋Š” ๊ทธ ์ด์ƒ)๋ผ๋ฉด ๋ชจ๋“  ๋ฐ์ดํ„ฐ์˜ ์†์‹ค ํ•จ์ˆ˜์˜ ํ•ฉ์„ ๊ตฌํ•˜๊ธฐ๋Š” ๋งŽ์€ ์‹œ๊ฐ„์ด ์†Œ์š”๋œ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ ์ผ๋ถ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๋ ค ์ „์ฒด์˜ '๊ทผ์‚ฌ์น˜'๋กœ ์ด์šฉํ•œ๋‹ค. ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ ์ค‘ ์ผ๋ถ€๋งŒ ๊ณจ๋ผ ํ•™์Šต์„ ์ˆ˜ํ–‰ํ•˜๋ฉฐ ์ด๋ฅผ ๋ฏธ๋‹ˆ ๋ฐฐ์น˜ ๋ผ๊ณ  ํ•œ๋‹ค.

์ด ๋•Œ MNIST ๋ฐ์ดํ„ฐ์…‹์„ ์ฝ์–ด์™€ 6๋งŒ๊ฐœ์˜ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์ค‘ 10๊ฐœ๋ฅผ ๋ฝ‘๋Š” ๊ณผ์ •์—์„œ numpy๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

np.random.choice(train_size, batch_size)๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, 0์ด์ƒ train_size๋ฏธ๋งŒ์˜ ์ˆ˜ ์ค‘์—์„œ ๋ฌด์ž‘์œ„๋กœ batch_size ๋งŒํผ์˜ ๊ฐฏ์ˆ˜์˜ ์ˆ˜๋ฅผ ๊ณจ๋ผ๋‚ธ๋‹ค.

์ •ํ™•๋„ ๋Œ€์‹  ์†์‹คํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ์ด์œ 

์†์‹คํ•จ์ˆ˜๋Š” ๋ฏธ๋ถ„๊ฐ’์„ ํ† ๋Œ€๋กœ ์–‘์˜ ๋ฐฉํ–ฅ ๋˜๋Š” ๊ทธ ๋ฐ˜๋Œ€๋กœ ์ง„ํ–‰ํ•˜๋Š”๋ฐ ๋น„ํ•ด ์ •ํ™•๋„๋Š” ๋ฏธ๋ถ„๊ฐ’์ด 0์ผ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„ ์ง„ํ–‰์„ ๋ฉˆ์ถœ ๋•Œ๊ฐ€ ๋งŽ๋‹ค. ๊ทธ๋Ÿผ ์™œ 0์ผ ๋–„๊ฐ€ ๋งŽ์„๊นŒ? ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ์กฐ๊ธˆ ๋ณ€ํ•˜๋ฉด ์†์‹ค ํ•จ์ˆ˜๋Š” ์—ฐ์†์ ์œผ๋กœ ๋ณ€ํ•˜๊ฒŒ ๋˜์ง€๋งŒ ์ •ํ™•๋„๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๋ฏธ์†Œํ•œ ๋ณ€ํ™”์—๋Š” ๊ฑฐ์˜ ๋ฐ˜์‘์„ ๋ณด์ด์ง€ ์•Š์œผ๋ฉฐ ๋ฐ˜์‘์ด ์žˆ๋”๋ผ๋„ ๊ทธ ๊ฐ’์ด ๋ถˆ์—ฐ์†์ ์œผ๋กœ ๋ณ€ํ™”ํ•œ๋‹ค. ๊ณ„๋‹จ ํ•จ์ˆ˜๋ฅผ ํ™œ์„ฑํ™” ํ•จ์ˆ˜๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋„ ์ด์™€ ๊ฐ™๋‹ค.

4.3 ์ˆ˜์น˜ ๋ฏธ๋ถ„

์•„์ฃผ ์ž‘์€ ์ฐจ๋ถ„์œผ๋กœ ๋ฏธ๋ถ„ํ•˜๋Š” ๊ฒƒ์„ ์ˆ˜์น˜ ๋ฏธ๋ถ„์ด๋ผ๊ณ  ํ•œ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๋ฐ˜์˜ฌ๋ฆผ ์˜ค์ฐจ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์–ด ์ตœ์ข… ๊ณ„์‚ฐ ๊ฒฐ๊ณผ์— ์˜ค์ฐจ๊ฐ€ ๋ฐœ์ƒ๋œ๋‹ค.

ํ•œ ์ˆ˜์‹์„ ์ „๊ฐœํ•ด ๋ฏธ๋ถ„ํ•˜๋Š” ๊ฒƒ์€ ํ•ด์„์ ์ด๋ผ๊ณ  ํ•˜๋ฉฐ y=x2 y = x^2 ์˜ ๋ฏธ๋ถ„์€ dydx=2x {dy \over dx} = 2x ๋กœ ํ’€์–ด๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ํ•ด์„์  ๋ฏธ๋ถ„์€ ์˜ค์ฐจ๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๋Š” ๊ฐ’์„ ๊ตฌํ•ด์ค€๋‹ค.

์ˆ˜์น˜ ๋ฏธ๋ถ„์—๋Š” ์˜ค์ฐจ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉฐ ์˜ค์ฐจ๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด x+h ์™€ x-h์ผ ๋•Œ์˜ ์ฐจ๋ถ„์„ ๊ณ„์‚ฐํ•˜๊ธฐ๋„ ํ•œ๋‹ค. x๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ๊ทธ ์ „ํ›„์˜ ์ฐจ๋ถ„์„ ๊ณ„์‚ฐํ•œ๋‹ค๊ณ  ํ•˜์—ฌ ์ค‘์‹ฌ ์ฐจ๋ถ„ ํ˜น์€ ์ค‘์•™ ์ฐจ๋ถ„์ด๋ผ๊ณ  ํ•œ๋‹ค. x+h์™€ x์˜ ์ฐจ๋ถ„์€ ์ „๋ฐฉ ์ฐจ๋ถ„์ด๋ผ๊ณ  ํ•œ๋‹ค.

Coursera ML

OCTAVE/MATLAB TUTORIAL

Normal Equation ์— ๋Œ€ํ•œ ์„ ํ˜• ๋Œ€์ˆ˜ ์ฆ๋ช…

๊ฐ•์˜๋‚ด์šฉ

์˜ฅํƒ€๋ธŒ๋ฅผ ์ด์šฉํ•ด์„œ ์—ฌ๋Ÿฌ ์ˆ˜ํ•™์  ์—ฐ์‚ฐ๊ณผ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด์„ ๊ฐ„๋‹จํžˆ ํ‘œํ˜„ ๊ฐ€๋Šฅ.

๋ฒกํ„ฐํ™”ํ•˜๋ฉด ๊ฐ„๋‹จํžˆ ํ–‰๋ ฌ ์—ฐ์‚ฐ์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์–ธ๋ฒกํ„ฐํ™”์˜ ๊ฒฝ์šฐ ๋ฐ˜๋ณต ์—ฐ์‚ฐ์œผ๋กœ ์ง„ํ–‰ํ•ด์•ผํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์™€ ์†๋„์˜ tradeoff๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์‚ฌ๋ก€์ธ ๋“ฏ.

Last updated