hye-log

[๋ถ€์ŠคํŠธ์บ ํ”„ AI Tech]WEEK 02_DAY 10 ๋ณธ๋ฌธ

Boostcourse/AI Tech 4๊ธฐ

[๋ถ€์ŠคํŠธ์บ ํ”„ AI Tech]WEEK 02_DAY 10

iihye_ 2022. 9. 30. 18:31

๐ŸŽ€ ๊ฐœ๋ณ„ํ•™์Šต


[10] PyTorch Troubleshooting

1. OOM(Out Of Memory)

1) batch size๋ฅผ ์ค„์ด๊ณ  -> GPU๋ฅผ ๋น„์šฐ๊ณ  -> Run

2) GPU Util ์‚ฌ์šฉํ•˜๊ธฐ

- nvidia-smi, Colab ๋“ฑ์—์„œ GPU ์ƒํƒœ ํ™•์ธ

- iter๋งˆ๋‹ค ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋Š˜์–ด๋‚˜๋Š”์ง€ ํ™•์ธํ•  ๊ฒƒ

3) torch.cuda.empty_cache()

- ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ GPU ์ƒ cache๋ฅผ ์ •๋ฆฌํ•ด์„œ ๊ฐ€์šฉ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ™•๋ณด

4) training loop์— tensor๋กœ ์ถ•์ ๋˜๋Š” ๋ณ€์ˆ˜ ํ™•์ธํ•˜๊ธฐ

- tensor๋กœ ์ฒ˜๋ฆฌ๋œ ๋ณ€์ˆ˜๋Š” GPU ์ƒ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ

- ํ•ด๋‹น ๋ณ€์ˆ˜๊ฐ€ loop ์—ฐ์‚ฐ์— ์žˆ์œผ๋ฉด computation graph๋ฅผ ์ƒ์„ฑ

5) del ๋ช…๋ น์–ด ์ ์ ˆํžˆ ์‚ฌ์šฉํ•˜๊ธฐ

6) ๊ฐ€๋Šฅํ•œ batch ์‚ฌ์ด์ฆˆ ์‹คํ—˜ํ•ด๋ณด๊ธฐ

- batch size 1๋กœ ํ•ด์„œ ์‹คํ—˜ํ•ด๋ณด๊ธฐ

7) torch.no_grad() ์‚ฌ์šฉํ•˜๊ธฐ

 

2. ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€

1) CUDNN_STATUS_NOT_INIT, device-side-assert ๋“ฑ

- ์ ์ ˆํ•œ ์ฝ”๋“œ ์ฒ˜๋ฆฌ๊ฐ€ ํ•„์š”ํ•จ

2) colab์—์„œ ๋„ˆ๋ฌด ํฐ ์‚ฌ์ด์ฆˆ๋Š” ์‹คํ–‰ํ•˜์ง€ ๋ง ๊ฒƒ(linear, CNN, LSTM)

3) CNN์˜ ๋Œ€๋ถ€๋ถ„์˜ ์—๋Ÿฌ๋Š” ํฌ๊ธฐ๊ฐ€ ์•ˆ ๋งž์•„์„œ ์ƒ๊ธฐ๋Š” ๊ฒฝ์šฐ(torchsummary ํ™œ์šฉ)

4) tensor์˜ float precision์„ 16bit๋กœ ์ค„์ผ ์ˆ˜ ์žˆ์Œ



๐ŸŽ€ ์˜ค๋Š˜์˜ ํšŒ๊ณ 

์˜ค์ „์—๋Š” ๋‚จ์€ ํŒŒ์ดํ† ์น˜ ๊ฐ•์˜ ํ•˜๋‚˜ ๋“ฃ๊ณ ! ๋“œ๋””์–ด ํŒŒ์ดํ† ์น˜ ์ฃผ๊ฐ„์ด ๋๋‚ฌ๋‹ค~ ํ•˜์ง€๋งŒ ๋ถ€๋•์ด๋ž‘ ๋ฐ์ดํ„ฐ์…‹&๋ฐ์ดํ„ฐ๋กœ๋” ๋ถ€๋ถ„ ๋ณต์Šตํ•˜๊ณ  ์ด๋ฒˆ ์ฃผ ๋งˆ๋ฌด๋ฆฌ ํ•˜๋Š”๊ฑธ๋กœ...! ์˜ค๋Š˜์€ 1์‹œ๊ฐ„์”ฉ ์คŒ 3๊ฐœ๋ฅผ ์—ฐ๋‹ฌ์•„ ํ•˜๋ ค๋‹ˆ ์กฐ๊ธˆ์€ ํž˜๋“  ๋‚ ..^..ใ…  ์ฒ˜์Œ์œผ๋กœ ์ŠคํŽ˜์…œ ํ”ผ์–ด์„ธ์…˜์„ ์ง„ํ–‰ํ–ˆ๋Š”๋ฐ, ๋‹ค๋ฅธ ์กฐ์— ์žˆ๋Š” ์บ ํผ๋ถ„๋“ค๊ณผ ๋žœ๋ค์œผ๋กœ ๋ชจ์—ฌ์„œ ์ด์•ผ๊ธฐ ๋‚˜๋ˆ„๋Š” ์‹œ๊ฐ„์ด์—ˆ๋‹ค. ์ฒ˜์Œ ๋ณด๋Š” ์บ ํผ๋“ค๋„ ์žˆ์–ด์„œ ์–ด์ƒ‰ํ•จ ์†์— ์ž๊ธฐ์†Œ๊ฐœ๋„ ํ•˜๊ณ , ํ”ผ์–ด์„ธ์…˜ ๋•Œ ์–ด๋–ค ๊ฒƒ์„ ํ•˜๋Š”์ง€, ๋ฉ˜ํ† ๋ง ์‹œ๊ฐ„์—๋Š” ๋ฌด์—‡์„ ํ•˜๋Š”์ง€ ์งˆ๋ฌธํ•˜๋ฉด์„œ ์‹œ๊ฐ„์„ ๋ณด๋ƒˆ๋‹ค. ๋‚ด๋ฉด์—์„œ ๊ฐ€๋” ๋‚˜์˜ค๋Š” 19%์˜ E ์„ฑํ–ฅ์„ ๊บผ๋‚ด์„œ ๋‚˜๋ฆ„(?) ์ ๊ทน์ ์œผ๋กœ ์งˆ๋ฌธํ–ˆ๋‹ค.. ๋‹ค๋ฅธ ์บ ํผ๋ถ„๋“ค ๋•๋ถ„์— ์˜ค๋””์˜ค ์•ˆ ๋น„๊ณ  1์‹œ๊ฐ„ ๋™์•ˆ ์œ ์ตํ•œ ์‹œ๊ฐ„์ด์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ๋‹ค์‹œ ํ”ผ์–ด์„ธ์…˜์œผ๋กœ ๋Œ์•„์™€์„œ ๊ฐ์ž ์ŠคํŽ˜์…œ ํ”ผ์–ด์„ธ์…˜์—์„œ ๋‚˜๋ˆˆ ์ด์•ผ๊ธฐ๋“ค ๊ณต์œ ํ•˜๋Š”๋ฐ ๊ณตํ†ต์ ์œผ๋กœ ๋งŽ์•˜๋˜ ํ™œ๋™ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋…ผ๋ฌธ์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ ์กฐ๋„ ๋…ผ๋ฌธ ์ฝ๊ธฐ๋ฅผ ์‹œ์ž‘ํ•ด๋ณด๋ ค๊ณ  ํ•˜๋Š”๋ฐ, ์‚ฌ์‹ค ๊ฐ•์˜๋‚˜ ๊ณผ์ œ ์–‘์„ ๋ณด๋ฉด ์ƒ๊ฐ๋ณด๋‹ค ํ•  ์ผ์ด ๋งŽ์•„์„œ(ใ… ใ… ) ๋‹ค ์†Œํ™”ํ•˜๋Š”๋ฐ ๋ฌด๋ฆฌ๊ฐ€ ์žˆ์ง€ ์•Š์„๊นŒํ•ด์„œ ๊ธฐ์ˆ ์ ์ธ ๋…ผ๋ฌธ์„ ์ฝ๊ธฐ๋ณด๋‹ค๋Š” ์ปดํ“จํ„ฐ ๋น„์ „์˜ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ๋“ค(detection, segmentation, GAN ๋“ฑ..) ์œ„์ฃผ๋กœ ๋…ผ๋ฌธ์„ ์ฝ์–ด๋ณด๊ธฐ๋กœ ํ–ˆ๋‹ค!! ๋งˆ์Šคํ„ฐํด๋ž˜์Šค์—์„œ๋Š” ๋™์˜์ƒ์œผ๋กœ๋งŒ ๋ณด๋˜ ์ตœ์„ฑ์ฒ  ๊ต์ˆ˜๋‹˜๊ป˜์„œ Data Centric AI๋ผ๋Š” ์ฃผ์ œ๋กœ ๊ฐ•์—ฐ์„ ํ•ด์ฃผ์…จ๋Š”๋ฐ, ์ •๋ง ์žฌ๋ฏธ์žˆ๋Š” PPT์™€ ์ธ์ƒ ๊ตํ›ˆ๋“ค์„ ๋‚จ๊ฒจ์ฃผ์‹œ๋ฉด์„œ ๋งˆ๋ฌด๋ฆฌํ•ด์ฃผ์…จ๋‹ค. WEEK 02๋„ ๋ฒŒ์จ ๋! ๋‹ค์Œ ์ฃผ๋Š” 10์›”์ด๋‹คใ…Ž-ใ…Ž

728x90
Comments