IN DEPTH CAKE (40) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [๋ชจ์ ๋๊ณ ๋งํด๋ณด์] ์ ๋ ฌ์๊ณ ๋ฆฌ์ฆ ์ ๋ ฌ์ด ํ์ํ ์ด์ = ํ์ ๋ฐ์ดํฐ๊ฐ ์ ๋ ฌ๋์ด ์๋ค๋ฉด '์ด์ง ํ์'์ ์ฌ์ฉํ ์ ์๋ค. ์ด์ง ํ์ ์๊ณ ๋ฆฌ์ฆ์ ์ต์ ์ ๊ฒฝ์ฐ์์ O(log n)์ ์ฑ๋ฅ์ ๋ณด์ด๊ธฐ ๋๋ฌธ์ ๊ฐ๋ ฅํ๋ฉฐ, ์ด๋ฅผ ์ํด์๋ ์ ๋ ฌ์ด ์ ํ๋์ด์ผํ๋ค. ๋ํ์ ์ธ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ [Bubble Sort] ํ๊ท ์คํ ์๊ฐ : $O(n^2)$ / ์ต์ ์คํ ์๊ฐ : $O(n^2)$ / ๋ฉ๋ชจ๋ฆฌ $O(1)$ ํ ๋ฒ iteration์ ๋๋๋ง๋ค ํ๋์ ๊ฐ์ ์ ๋ ฌํ๋ค. ํ ๋ฒ์ iteration์์ ์ฒซ๋ฒ์งธ, ๋๋ฒ์งธ๋ฅผ ๋น๊ต, ๋๋ฒ์งธ์ ์ธ๋ฒ์งธ๋ฅผ ๋น๊ต ... ์ด๋ฐ ํํ๋ก $n-1$๋ฒ์งธ์ $n$๋ฒ์งธ๋ฅผ ๋น๊ตํจ์ผ๋ก์จ ๋ง์ง๋ง ๊ฐ์ ์ ๋ ฌํ ํ ๋ค์ ์์์๋ถํฐ ๋น๊ตํด์ $n-1$๋ฒ์งธ ๊ฐ์ ์ ๋ ฌํ๋ ํํ๋ก ๋์ํ๋ค. ์ต์ ์ ๊ฒฝ์ฐ์ ๋งค iteration๋ง๋ค ์ฒ์๋ถํฐ ๋๊น์ง ๋ค .. sphinx-js ๋ก javascript ์ฝ๋ ๋ฌธ์ํํ๊ธฐ ๋ธ๋ก๊ทธ ๊ธ ์๋จ/ํ๋จ์ ๊ฐํ์ ์ผ๋ก ๋จ๋ ๊ด๊ณ ๋ ๋ธ๋ก๊ทธ ๊ฐ์ธ ์์ต๊ณผ ๊ด๋ จ ์๋ ํฐ์คํ ๋ฆฌ ์ธก ๊ด๊ณ ์ ๋๋ค ์๊ฐ ์๋ ํ์ธ์. ์ค๋์ javascript๋ก ์ฝ๋ฉ๋ ํ๋ก์ ํธ์ ๋ฌธ์ํ๋ฅผ ์ํ sphinx-js๋ฅผ ์ค๋ช ํด๋๋ฆฌ๋ ค๊ณ ํฉ๋๋ค. sphinx๋ python ํ๋ก์ ํธ์ ๋ฌธ์ ์๋ํ๋ฅผ ์ํ ํด์ ๋๋ค. python ํ๋ก์ ํธ์ ํจ์, ๋ชจ๋๋ค์ ํน์ ๋ฌธ๋ฒ์ ๋ฐ๋ผ ์ฃผ์์ ์์ฑํด ๋๋ฉด ์๋์ผ๋ก latex ๋ฌธ์, html๋ก ๋น๋ํด ์ฃผ๋ ํด์ด์์. ์คํ ์์ค ํ๋ก์ ํธ์ ๋ฌธ์ํ ๋ฑ์ ๋ง์ด ์ฌ์ฉํฉ๋๋ค. javascript์ฉ์ผ๋ก ์ ์ฌํ ํด jsdoc ์ด ์์ง๋ง, read-the-docs ์ ์ฐ๋ํด์ ๋น๋ํ๊ณ ์ถ์ด์ ์ฐพ๊ฒ ๋ ๊ฒ ๋ฐ๋ก sphinx-js์์. GitHub - mozilla/sphinx-js: Autodoc-style ex.. No module named 'tensorboard' ํด๊ฒฐ [์ฆ์] ์ ์ฌ์ฉ์ค์ด๋ conda ํ๊ฒฝ์์ tensorboard๋ฅผ ์ฌ์ฉํ ์ ์๋ค๊ณ ์๋ฌ๊ฐ ๋ด๋ค. ๋ค๋ฅธ ๊ฐ์ ํ๊ฒฝ๋ค์์๋ ๋ชจ๋ ๋์ผํ ์๋ฌ ๋ฉ์์ง๊ฐ ๋ฐ๊ฒฌ๋์๋ค. pip ๋ conda๋ก tensorboard ํจํค์ง ์ญ์ ๋ฅผ ํด์คฌ๋๋ฐ๋ ์๋ฌ๊ฐ ๊ณ์ ๋ด๋ค. Traceback (most recent call last): File "~/.local/bin/tensorboard", line 7, in line 7, in from tensorboard.main import run_main ImportError: No module named 'tensorboard' [ํด๊ฒฐ] bin ํด๋๋ฅผ ์์ ์ญ์ ํ๋ค rm -rf ~/.bin/tensorboard ๋ค์ conda ํ๊ฒฝ ์์ ๋ชจ๋์ ์ฌ ์ค์นํด์ฃผ์๋ค. pip install.. [pytorch] RuntimeError: one_hot is only applicable to index tensor import torch.nn.functional as F bs = 10 F.one_hot(torch.ones(bs)*2, 5) 2์ ๋์๋๋ ์ ์ฒด ํฌ๊ธฐ๋ 5์ธ one hot encoding vector๋ฅผ batch size๊ฐ์๋งํผ ๋ง๋ค๊ณ ์ถ์ด์ ์์ ๊ฐ์ด ์ฝ๋๋ฅผ ์์ฑํ๋ฉด ๋ฐํ์ ์๋ฌ๊ฐ ๋ฌ๋ค. RuntimeError: one_hot is only applicable to index tensor. one_hot ํจ์๋ index tensor (ํ์ ๋ช ์ด torch.int64)๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ๋ ์๋ฌ์ด๋ค. ๋ค์๊ณผ ๊ฐ์ด ์์ ํด์ฃผ๋ฉด ๋๋ค. >>> torch.nn.functional.one_hot((torch.ones(bs)*2).to(torch.int64), 5) tensor([[0, 0, 1, 0.. [python] Anaconda ํ๊ฒฝ yamlํ์ผ export ๋ฐ import (ํ๊ฒฝ ์์ฑ create, ํ์ฑํ activate ๋ฑ) Anaconda ๋ python ํจํค์ง ๊ด๋ฆฌ๋ฅผ ์ง์ํ๋ ํ๋ ์์ํฌ์ ๋๋ค. Anaconda๋ฅผ ์ฌ์ฉํ๋ ๊ฐ์ฅ ํฐ ์ฅ์ ์ค์ ํ๋๋, ์ฉ๋์ ๋ง์ถ์ด ๊ฐ์ ํ๊ฒฝ์ ๋ง๋ค๊ณ ๊ทธ ํ๊ฒฝ ๋ด์์๋ง ํจํค์ง ์์กด์ฑ์ ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค๋ ์ ์ ๋๋ค. ์ด๊ฒ ์ ํฐ ์ฅ์ ์ด ๋๋๋, ์ด ๊ฐ์ ํ๊ฒฝ (environment)๋ง ์ฎ๊ฒจ์ฃผ๋ฉด ํด๋น ์ฝ๋๋ฅผ ๊ทธ๋๋ก ์คํํ ์ ์๊ธฐ ๋๋ฌธ์ด์ฃ . ์ด๋ฌํ ๊ธฐ๋ฅ์ ์ฝ๋ ๋ฐฐํฌ๋ฅผ ๊ฐํธํ๊ฒ ๋ง๋ค์ด์ค๋๋ค. ๊ณต๊ฐ ์ํํธ์จ์ด๋, ๋ด ๋ ผ๋ฌธ์ ๊ตฌํ ์ฝ๋๋ฅผ ๊ณต๊ฐํ๊ณ ์ํ ๋, ๊ฐ๋ฐํ๊ณ ์ํ๋ ์์ฉ์์ํ ์ ์ฉ ํ๊ฒฝ์ ๋ง๋ค๊ณ , ๊ทธ ํ๊ฒฝ์ ๊ทธ๋๋ก ์ค์นํ ์ ์๋๋กํ๋ ์์กด์ฑ ์ ๋ณด๋ง ๋ฐฐํฌํด์ฃผ๋ฉด ๋๊ตฌ๋ ์ง ๋์ผํ ํ๊ฒฝ์ ์ฌํํ ์ ์์ต๋๋ค. ์ค๋์ ๊ฐ์ ํ๊ฒฝ ๊ด๋ฆฌ์ ๊ด๋ จ๋ ๋ช๊ฐ์ง๋ฅผ ๊ฐ๋ตํ ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค. ๋ชฉ์ฐจ 1. conda ํ๊ฒฝ .. [C++] reference ๋ณ์์ ๋ํ ์ดํด (pointer์ ๋น๊ต) ๋ธ๋ก๊ทธ ๊ธ ์๋จ์ ๊ฐํ์ ์ผ๋ก ๋จ๋ ๊ด๊ณ ๋ ๋ธ๋ก๊ทธ ๊ฐ์ธ ์์ต๊ณผ ๊ด๋ จ ์๋ ํฐ์คํ ๋ฆฌ ์ธก ์์ต ๊ด๊ณ ์ ๋๋ค C์์ ์ฃผ์๋ฅผ ๋ค๋ฃจ๋ ๋ฐฉ์์ผ๋ก pointer๊ฐ ์ ๊ณต๋๋ค. pointer๋ ๊ทธ ์ด๋ฆ๋ง์ผ๋ก๋ ๊ดํ ๋ง์์ ๋ถํธํ๊ฒ ํ๋ค. ๊ดํ ์๋ชป ์ฐ๋ฉด dangling pointer ๋ฌธ์ ๊ฐ ์ผ์ด๋ ๊ฒ ๊ฐ๊ณ , ๋ง ๊ทธ๋ ๋ค. C++์์๋ ์ด๋ฐ ๊ฐ๋ฐ์๋ค์ ์ฌ์ ๋ถ๋ด์ ๋์ด์ฃผ๊ธฐ ์ํด ์ฃผ์๋ฅผ ํธ๋ค๋งํ ์ ์๋ ๋ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก reference๋ผ๋ ๋ฐฉ์์ ์ ๊ณตํ๋ค. ๊ทธ๋ฌ๋ฉด, pointer์ reference์ ์ฐจ์ด๋ ๋ฌด์์ผ๊น? ์ฐ๋ ๋ฌธ๋ฒ์ด ๋ค๋ฅด๋ค๋ ์์ํ ๋ต๋ณ ๋ง๊ณ , reference๋ง์ ์ฅ์ ์ ๋ถ๊ฐํ ์ ์๋ ์์ ๋ฅผ ํ๋ฒ ๋ณด๊ณ ๋์ด๊ฐ๋ฉด ์ข๋ค. (๊ทธ๋์ผ C++์์ reference๋ผ๋ ๊ธฐ๋ฅ์ ๋์ ํ ์ด์ ๋ฅผ ์ ๋๋ก ์ดํดํ ์ ์๋ค) ๋ชฉ.. <ML๋ ผ๋ฌธ> CVAE์ ๋ํ์ฌ (feat. ๋๊ฐ ์ง์ง CVAE์ธ๊ฐ? ํ๋์ ์ด๋ฆ, ๋ ๊ฐ์ ๊ธฐ๋ฒ) ๋ณธ ๊ธ์ ๋ ผ๋ฌธ์ ์์ธ ๋ด์ฉ์ ๋ค๋ฃจ๋ ํฌ์คํ ์ ์๋์์. ๋ค๋ง, ๋ ๊ฐ์ ๋ ผ๋ฌธ์ด ํ๋์ ์ด๋ฆ์ผ๋ก ๋ถ๋ฆฌ๊ณ ์๊ธธ๋, '์ด์ ๋ํ ํผ์ ์ ์ ๋ฆฌํ๋ ๊ธ์ ์จ๋ณด์'ํ๋ ๋ง์์ผ๋ก ๊ธ์ ์ผ์ต๋๋ค. ๋ฌผ๋ก ๊ฐ๋ตํ๊ฒ ๊ฐ๊ฐ์ ๋ ผ๋ฌธ ๋ด์ฉ์ ๋ค๋ฃจ๊ณ ์๊ธฐ๋ ํฉ๋๋ค๋ง, ์์ธํ ๋ด์ฉ์ ๊ฐ ๋ ผ๋ฌธ ๋ด์ฉ์ ์ค๋ช ํ๋ ๊ธ์ ์ฐธ๊ณ ํด์ฃผ์ธ์. ๊ฐ์ฌํฉ๋๋ค. ์๋ ํ์ธ์. ์ค๋์ ๊ฐ์ธ์ ์ผ๋ก ํฅ๋ฏธ๋ก์ ๋ ํ์์ ๋ํด ์ ์ด๋ณผ๊น ํฉ๋๋ค. ์ด ๋ณธ๋ฌธ์ ์ฝ๊ณ ๊ณ์ 99.9 % ์ ๋ถ๋ค์ "CVAE"๋ผ๋ ํค์๋๋ฅผ ๊ฒ์ํ์ จ์ ๊ฒ ๊ฐ์์. ์ฌ๋ฌ๋ถ์ด ์ด ๊ธ์ ํด๋ฆญํ์ค ๋ ์๊ฐํ์ CVAE๋ ์ด๋ค ๋ ์์ธ๊ฐ์? ์ง๋ฌธ์ด ์ด์ํ์ฃ ? ์ ๊ฐ ์ค๋ ์ด ๊ธ์ ์ฐ๊ธฐ๋ก ๋ง์๋จน์ ๋ฐ๋ ์ด์ ๊ฐ ์์ต๋๋ค. ์ ๊ฐ ๊ฒ์์ ํ๋ค๊ฐ ๋ฐ๊ฒฌํ ํ์์ด ์๋๋ฐ, ๋ฐ๋ก ๋ ๊ฐ์ (์ ๊ดํ์ง๋ง ์๋ก ๋ค๋ฅธ) ๋ ผ๋ฌธ์ด .. <VSCode ๋ฅผ C++ IDE๋ก ์ฐ๊ธฐ> Mac์์ C++ ๊ฐ๋ฐํ๊ธฐ ์ผ๋ฐ์ ์ผ๋ก C++ ๊ฐ๋ฐํ๋ค๊ณ ํ๋ฉด ๋ํ์ ์ผ๋ก ์ฐ๋ IDE๊ฐ Visual Studio์ด์ง๋ง, ๋งฅ์์๋ Visual Studio๊ฐ C++ ๊ฐ๋ฐํ๊ฒฝ์ ์ง์ํด์ฃผ์ง ์๋๋ค. ๊ทธ๋์ ๋์ฒด์ ๋ก ๋ง์ด ์ฐ๋๊ฒ VSCode๋ค. โผโผโผ VS Code ์ค์น๋ ์๊ธฐ โผโผโผ Download Visual Studio Code - Mac, Linux, Windows Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefined code editor, optimized for building and debugging modern we.. ์ด์ 1 2 3 4 5 ๋ค์