๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋จธ์‹ ๋Ÿฌ๋‹, ๋”ฅ๋Ÿฌ๋‹/Paper Classification

4/23 ํ•ด๋ดค๋˜ ๊ฒƒ ์ •๋ฆฌ

by ํ–‰๋ฑ 2020. 4. 24.

1. RMDL ์ ์šฉ ์‹œ๋„

  • Colab์— pip ์„ค์น˜ํ•ด ํ•˜๋‹ค๊ฐ€ checkpoint ๊ฒฝ๋กœ ๋ฐ”๊ฟ”๋ณด๋ ค๊ณ  ๋‚ด ๊นƒํ—™์— forkํ•˜๊ณ  ๊ฒฝ๋กœ ๊ณ ์ณ์„œ ์ปค๋ฐ‹ํ•œ ๋‹ค์Œ git cloneํ•จ (pip ์„ค์น˜ํ•˜๊ณ ๋„ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์Œ..)
  • https://stackoverflow.com/questions/49322072/checkpoints-in-google-colab : ์ด๊ฑฐ ๋ณด๋ฉด checkpoint ๊ฒฝ๋กœ๋ฅผ /gdrive ๋‚ด๋กœ ๋ฐ”๊ฟ”๋„ ์•ˆ ๋  ์ˆ˜๋„ ์žˆ์„ ๊ฒƒ ๊ฐ™์Œ (๋ฌผ๋ก  mount ํ›„์—..)
  • https://research.google.com/colaboratory/local-runtimes.html : Colab ๋กœ์ปฌ ๋Ÿฐํƒ€์ž„ ๊ด€๋ จ document. ๋กœ์ปฌ์—์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋กœ์ปฌ ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์—‘์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•จ. ๋‹จ์ ์€ ๋กœ์ปฌ์— ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ rm -rf ๊ฐ™์€ ๋ฌด์„œ์šด ๋ช…๋ น์–ด๊ฐ€ ์‹คํ–‰๋  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฒƒ๊ณผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ƒˆ๋กœ ์„ค์น˜ํ•ด์•ผํ•  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฒƒ.
  • https://blog.nerdfactory.ai/2019/04/25/learn-bert-with-colab.html : Colab์—์„œ ํ•œ ํด๋” ์ž์ฒด๋ฅผ ๊ตฌ๊ธ€ ๋“œ๋ผ์ด๋ธŒ์™€ ์—ฐ๊ฒฐ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ๋‚˜์™€์žˆ์Œ. (!ls๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋“œ๋ผ์ด๋ธŒ์™€ ๋™์ผํ•˜๊ฒŒ ๋‚˜์˜ค๋Š”!!) 'Colab๊ณผ ๊ตฌ๊ธ€ ๋“œ๋ผ์ด๋ธŒ๋ฅผ ์—ฐ๋™' ๊ฒ€์ƒ‰.
  • ์ถ”๊ฐ€) ์ €๊ฒŒ ์˜›๋‚  ๋ฐฉ๋ฒ•์ธ ๋“ฏ. ๊ทธ๋ƒฅ ๋“œ๋ผ์ด๋ธŒ ๋งˆ์šดํŠธํ•˜๊ณ  !ls /gdrive ํ•˜๋ฉด ๋“œ๋ผ์ด๋ธŒ ํด๋”๋“ค ๋‚˜์˜ด..^^
  • checkpoint ๊ฒฝ๋กœ ๋ฐ”๊พผ ๋ฒ„์ „ + RMDL ๋ฆฌ๋“œ๋ฏธ์— ๋‚˜์™€์žˆ๋Š” IMDB ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ์‹œ๋„ํ•ด๋ดค๋Š”๋ฐ ๋žจ์ด ํ„ฐ์ง (ํ•˜๋“œ์›จ์–ด ๊ฐ€์†๊ธฐ GPU๋กœ ์„ค์ •ํ•˜๋ฉด ํ• ๋‹น๋˜๋Š” ๋žจ์ด ์ค„์–ด๋“ ๋Œ€์„œ TPU/None์œผ๋กœ๋„ ์‹œ๋„ํ•ด๋ด„)
  • https://github.com/googlecolab/colabtools/issues/253 : Colab์—์„œ (๋ˆ์„ ๋‚ด๊ณ ) ๋žจ์„ ๋” ๋งŽ์ด ์“ธ ์ˆ˜ ์žˆ๋Š๋ƒํ•˜๋Š” ์ด์Šˆ์ธ๋ฐ ๋ˆ์„ ๋‚ด๊ณ  ๋žจ์„ ๋” ๋ฐ›๋Š” ์„œ๋น„์Šค๋Š” ์—†๋‹ค๊ณ  ํ•จ. ์—ฌ๊ธฐ ๋‚˜์™€์žˆ๋Š” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ํ•œ ๋ฒˆ ๋žจ ์ตœ๋Œ€ ๋ฆฌ๋ฐ‹์„ ์น˜๋ฉด '๋žจ ์‚ฌ์ด์ฆˆ๋ฅผ ๋Š˜๋ฆฌ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?' ํ•˜๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋œจ๋ฏ€๋กœ ๊ฑฐ๊ธฐ์„œ '์˜ˆ'๋ฅผ ๋ˆ„๋ฅด๋ผ๋Š” ๊ฒƒ์ธ๋ฐ ํ˜„์žฌ๋Š” '๋žจ ์‚ฌ์ด์ฆˆ๋ฅผ ๋Š˜๋ฆด ๊ฒƒ์ธ์ง€'๋ฅผ ๋ฌป๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ์•„๋‹Œ '๋žจ ์‚ฌ์ด์ฆˆ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ–ˆ์œผ๋‹ˆ ์„ธ์…˜์ด ์ข…๋ฃŒ๋˜์—ˆ์Œ'์ด๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋œธ. ์ •์ฑ…์ด ๋ฐ”๋€๊ฑธ์ง€๋„?
  • ์ถ”๊ฐ€) Colab pro๋กœ ๋ˆ ๋‚ด๊ณ  GPU/TPU/RAM ๋Š˜๋ฆด ์ˆ˜ ์žˆ๋Š” ๋“ฏ

 

2. RNN ๊ธฐ๋ฐ˜ ๋‹ค๋ฅธ ๋ชจ๋ธ ์‹œ๋„

  • https://buomsoo-kim.github.io/keras/2019/07/12/Easy-deep-learning-with-Keras-19.md/ : ์—ฌ๊ธฐ์— ๋‚˜์™€์žˆ๋Š” ๊ธฐ๋ณธ์ ์ธ RNN ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์„ ์‹œ๋„ํ•ด๋ด„. Input shape ์„ค์ •์—์„œ ์ฒจ์— ์˜ค๋ฅ˜๊ฐ€ ๋‚ฌ์—ˆ๋‹ค๊ฐ€ X_label (N, 100, 1)๋กœ reshapeํ•˜๊ณ  input shape์„ (100, 1)๋กœ ํ•˜๋‹ˆ ์˜ค๋ฅ˜๋Š” ์‚ฌ๋ผ์ง. Y_label๋„ ์›ํ•ซ์œผ๋กœ ํ•จ. ๊ทธ๋Ÿฌ๋‚˜ Test ๊ฒฐ๊ณผ๊ฐ€ ๋„ˆ๋ฌด ํ˜•ํŽธ ์—†์—ˆ์Œ. (๋‹ค์ธต LSTM Epoch 15๋ฒˆ์— Train acc๋Š” 53%, Test acc๋Š” 41%) RNN์œผ๋กœ ๋Œ๋ฆฌ๊ฑฐ๋‚˜ Epoch๋ฅผ ๋Š˜๋ ค๋„ ๋˜‘๊ฐ™์•˜์Œ. ์˜ค๋ฒ„ํ”ผํŒ…์ธ๊ฐ€..?_? Train acc๊ฐ€ ๊ทธ๋‹ค์ง€ ๋†’์ง€ ์•Š์€๋ฐ๋„ ์˜ค๋ฒ„ํ”ผํŒ…์ด ์˜ฌ ์ˆ˜ ์žˆ๋Š”๊ฑธ๊นŒ? ๋ฐ์ดํ„ฐ๊ฐ€ ๋„˜ ์ ์–ด์„œ ๊ทธ๋Ÿฐ๊ฐ€ ์‹ถ๊ธฐ๋„ ํ•˜๋‹ค..
  • https://stackoverflow.com/questions/39117878/keras-simplernn-input-shape-and-masking : Input shape ๋งž์ถ”๋Š” ๋ฒ•
  • https://buomsoo-kim.github.io/blog/categories/ : ์—ฌ๊ธฐ์— ๋‹ค๋ฅธ RNN ๊ธฐ๋ฐ˜ ๋ชจ๋ธ๋„ ์žˆ์œผ๋‹ˆ ์ฐธ๊ณ ํ•ด๋ณด๊ธฐ
  • https://www.tensorflow.org/tutorials/keras/text_classification : Keras๋ฅผ ์ด์šฉํ•ด text classificationํ•˜๋Š” ์˜ˆ์ œ (TF ๊ณต์‹๋ฌธ์„œ)

๋Œ“๊ธ€