๐ก ๋ณธ ๋ฌธ์๋ 'Google Colab์ ์ํ ํ'์ ๋ํด ์ ๋ฆฌํด๋์ ๊ธ์ ๋๋ค.
Google Colab์ ์ฌ์ฉํ๋ฉฐ ํ์ํ ๊ธฐ๋ฅ์ ๋ํด ์ ๋ฆฌํ์์ผ๋ ์ฐธ๊ณ ํ์๊ธฐ ๋ฐ๋๋๋ค.
1. ์ธ์ ์ ์ง
colab์ ๊ฐ๋งํ ๋๋๋ฉด ์ธ์ ์ด ๋๊ฒจ๋ฒ๋ฆฌ๊ธฐ ๋ง๋ จ์ด๊ธฐ์, ๊ฐ๋จํ colab ์ธ์ ์ ์งํ๋ ์ฝ๋๋ฅผ ๊ณต์ ํฉ๋๋ค :)
์๋ ์ฝ๋๋ฅผ Chrome์ฐฝ console command์ ์ ๋ ฅํ๋ฉด, ์ฐ์ธก ์๋จ์ ๋ฆฌ์์ค ํญ(๋์คํฌ, RAM ์ฌ์ฉ๋)์ ๊ณ์ ๋๋ ค์ฃผ๋ ๊ฒ๊ณผ ๋์ผํ ํจ๊ณผ๋ฅผ ์ฃผ๊ฒ ๋์ด ์ธ์ ์ด ์ ์ง๋ฉ๋๋ค. (console์ F12๋ฅผ ๋๋ฅด๋ฉด ํ์ธํ์ค ์ ์์ต๋๋ค.)
function ConnectButton(){
console.log("Connect pushed");
document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click()
}
setInterval(ConnectButton,60000);
2. GPU/TPU ํ ๋น
2.1 ํ๋์จ์ด ๊ฐ์๊ธฐ ํ ๋น
Colab์์ ๋ฐํ์ > ๋ฐํ์ ์ ํ ๋ณ๊ฒฝ > ํ๋์จ์ด ๊ฐ์๊ธฐ์์ 'GPU'/'TPU' ์ ํ
2.2 ํ๋์จ์ด ๊ฐ์๊ธฐ ์ค์ ํ์ธ
TPU ์ฌ์ฉ์ ์์ด ์ถ๊ฐ์ ์ธ ํ์ ์ป๊ณ ์ถ๋ค๋ฉด [Wikidocs] 18-01 ์ฝ๋ฉ(Colab)์์ TPU ์ฌ์ฉํ๊ธฐ ๋ฅผ ์ฐธ์กฐํ์๊ธฐ ๋ฐ๋๋๋ค.
3. Google Drive ์ฐ๋ํ๊ธฐ
google drive์ ์ฐ๋ํ์ฌ ๋๋ผ์ด๋ธ์ ์๋ ํ์ผ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ผ์ชฝ ์๋จ์ ๋๋ผ์ด๋ธ ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๊ฐ ์์ฑ๋๋ฉฐ, ์ด๋ฅผ ์คํํ ๊ฒฝ์ฐ ๊ตฌ๊ธ ๋๋ผ์ด๋ธ์ ์ฐ๋๋ฉ๋๋ค.
# ๊ตฌ๊ธ๋๋ผ์ด๋ธ ์ฐ๋
from google.colab import drive
drive.mount('/content/gdrive')
4. Package Updata ๋ฐ์
์๋ก์ด ๋ฒ์ ์ ๋ชจ๋์ ์ค์นํ์ผ๋ฉด, runtime์ ์ฌ์์ํด์ฃผ์ด์ผ ํฉ๋๋ค.
Runtime(๋ฐํ์) > Restart runtime(์ธ์ ๋ค์ ์์)
runtime์ restartํ ๊ฒฝ์ฐ local variable ๊ฐ์ ์ ๋ณด๋ ์ฌ๋ผ์ง์ง๋ง, ํ์ฌ ํ๊ฒฝ ์ ๋ณด (๋ด๊ฐ ์ค์นํ ๋ชจ๋ ๋ฒ์ ๋ฑ) ์ ๊ฐฑ์ ๋๊ฒ ๋ฉ๋๋ค.
์ฐธ๊ณ
- [Blog] Google Colab session ์ ์ง: https://modernflow.tistory.com/12
- [Wikidocs] 18-01 ์ฝ๋ฉ(Colab)์์ TPU ์ฌ์ฉํ๊ธฐ: https://wikidocs.net/119990
- [stackoverflow] need to restart runtime before import an installed package in colab: https://stackoverflow.com/questions/57831187/need-to-restart-runtime-before-import-an-installed-package-in-colab