728x90 ๐ป Programming83 ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ๋ถ์์ NumPy์ Pandas๊ฐ ํ์์ธ ์ด์ !? ์ค๋์ ๋ฐ์ดํฐ ๋ถ์๊ณผ ๋จธ์ ๋ฌ๋ ํ๋ก์ ํธ์์ ํ์์ ์ผ๋ก ์ฌ์ฉ๋๋ ๋ ๊ฐ์ง ํ์ด์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, NumPy์ Pandas์ ๋ํด ์ด์ผ๊ธฐํด๋ณด๋ ค๊ณ ํด์. ์ ์ด ๋ ๊ฐ์ง ํด์ ์ฌ์ฉํด์ผ ํ๋์ง ๊ถ๊ธํ์ง ์๋์? ์ NumPy์ Pandas๋ฅผ ์ฌ์ฉํ ๊น?ํ์ด์ฌ์ ๊ทธ ์์ฒด๋ก ๊ฐ๋ ฅํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ง๋ง, ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ๋ถ์์๋ ์กฐ๊ธ ๋ถ์กฑํ ์ ์์ด์. ์ด๋ NumPy์ Pandas๋ฅผ ์ฌ์ฉํ๋ฉด ๋ณต์กํ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฒ ๋ค๋ฃฐ ์ ์๋ต๋๋ค. ๊ทธ๋ผ ์ ๋ง์ ๋ฐ์ดํฐ ์ฌ์ด์ธํฐ์คํธ์ ๊ฐ๋ฐ์๋ค์ด ์ด ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ๋ํ๋์ง ์ดํด๋ด ์๋ค!๐ NumPy: ๋น ๋ฅด๊ณ ํจ์จ์ ์ธ ์์น ๊ณ์ฐ!NumPy๋ ๊ณ ์ฑ๋ฅ ์์น ๊ณ์ฐ์ ์ํ ํ์ ๋๊ตฌ์์. ๊ณ ์ฑ๋ฅ ์์น ๊ณ์ฐ๋น ๋ฅธ ์ฐ์ฐ ์๋: NumPy๋ ๋ฐฐ์ด ์ฐ์ฐ์ C๋ก ๊ตฌํํด์ ํ์ด์ฌ ๊ธฐ๋ณธ ๊ธฐ๋ฅ๋ณด๋ค ํจ์ฌ .. 2024. 7. 7. [python] 3์ฐจ์ ๊ณต๊ฐ ํ์ ๋ณํ | scipy Rotation scipy์ Rotation ํด๋์ค๋ 3D ๊ณต๊ฐ์์์ ํ์ ๋ณํ์ ๋ค๋ฃจ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ํ์ ์ ๋ํ๋ด๋ ํ๋ ฌ๋ก๋ถํฐ ํ์ ์ ์ํํ๊ฑฐ๋, ํ์ ์ ๋ํ๋ด๋ ์ถ๊ณผ ๊ฐ๋๋ฅผ ์ฌ์ฉํ์ฌ ํ์ ์ ์ํํ ์ ์์ด์ 3D geometry๋ฅผ ๋ค๋ฃฐ ๋ ํด๋น ํด๋์ค๋ฅผ ์์ฃผ ์ฌ์ฉํ๊ณ ์๋ค. ๊ทธ ์ค์๋ Rotation.apply() ๋ฉ์๋๋ฅผ ์์ฃผ ์ฌ์ฉํ๋๋ฐ, ์ด ๋ฉ์๋๋ ํ์ ๋ ๋ฒกํฐ๋ฅผ ๋ฐํํ๋ค. ํด๋น ๋ฉ์๋์ ๊ธฐ๋ฅ์ ๋ฒกํฐ์ ํ์ ํ๋ ฌ์ ๊ณฑํ๋ ๊ฒ์ด๋ฉฐ, ์์์ ์ผ๋ก๋ ์์ ๊ฐ์ด ๊ธฐ์กด ๋ฒกํฐ์ ํ์ ํ๋ ฌ(R)์ ๊ณฑํ๋ ๊ฒ๊ณผ ๊ฐ๋ค. ํ์ ํ๋ ฌ์ ๋ฒกํฐ์ ๊ณฑํจ์ผ๋ก์จ ํ์ ๋ ๋ฒกํฐ๋ฅผ ์ป์ ์ ์๋ค. Rotation.inv().apply() ๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ ํ๋ ฌ์ ์ญํ๋ ฌ์ ๋ฒกํฐ์ ์ ์ฉํ์ฌ ํ์ ํ๋ ฌ์ ๋ฐ๋๋ฐฉํฅ์ผ๋ก ํ์ ์ํฌ ์๋ ์๋ค. ์ฝ๋ ์์ fr.. 2024. 3. 29. [python] ํ์ด์ฌ ๋ณ๋ ฌ ์ฒ๋ฆฌ | joblib ์ฌ์ฉ๋ฒ | ๋ฉํฐํ๋ก์ธ์ฑ | ๋ฉํฐ์ฐ๋ ๋ฉ joblib์ ํ์ด์ฌ์์ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ๊ฐํธํ๊ฒ ์ํํ ์ ์๋๋ก ๋์์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. Parallel ํด๋์ค Parallel ํด๋์ค๋ ๋ณ๋ ฌ๋ก ํจ์๋ฅผ ์คํํ๊ฑฐ๋ ๋ฐ๋ณต ๊ฐ๋ฅํ ์์ ์ ์ฒ๋ฆฌํ ๋ ์ฌ์ฉ - n_jobs n_jobs ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ๋์์ ์คํํ ์์ ์ ์๋ฅผ ์กฐ์ ํ ์ ์์ผ๋ฉฐ ์ผ๋ฐ์ ์ผ๋ก CPU์ ์ฝ์ด ์๋ฅผ ์ฌ์ฉํ๋ฉด ํจ๊ณผ์ ์ด๋ค. n_jobs=-1์ ์์คํ ์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ์ฝ์ด๋ฅผ ํ์ฉํ์ฌ ์ต๋ํ ๋ณ๋ ฌ๋ก ์คํํ๋ผ๋ ์๋ฏธ - backend ๋ฐฑ์๋๋ ์ด๋ป๊ฒ ๋ณ๋ ฌ ์์ ์ ์ฒ๋ฆฌํ ์ง๋ฅผ ๊ฒฐ์ ํ๋ ํต์ฌ ์ญํ ์ ํ๋ฉฐ, loky ๋ฐฑ์๋๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉ๋๋ค. loky (๊ธฐ๋ณธ ๋ฐฑ์๋) loky๋ ํ์ด์ฌ์ concurrent.futures๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋ฐฑ์๋๋ก, ๋ฉํฐํ๋ก์ธ์ฑ์ ํ์ฉ ํ๋ก์ธ์ค ํ๋ง์ ํตํด ํจ.. 2024. 1. 19. [python] ๋ฉํฐํ๋ก์ธ์ฑ Process ์ฌ์ฉ๋ฒ ๋ฐ ์ฝ๋ ์์ | multiprocessing.Process | ์ฌ๋ฌ ํ๋ก์ธ์ค์ ์๋ก ๋ค๋ฅธ ์์ ์ ํ ๋น [python] ๋ฉํฐํ๋ก์ธ์ฑ Pool ์ฌ์ฉ๋ฒ ๋ฐ ์ฝ๋ ์์ | multiprocessing.Pool | python ์๋ ํฅ์ ๋ฉํฐํ๋ก์ธ์ฑ์ ์ฌ๋ฌ ๊ฐ์ ๋ ๋ฆฝ์ ์ธ ํ๋ก์ธ์ค๋ฅผ ์์ฑํ์ฌ ๊ฐ๊ฐ์ ํ๋ก์ธ์ค๊ฐ ๋ณ๋ ฌ๋ก ์์ ํ๋๋ก ํ๋ ๋ฐฉ์์ด๋ค. ๊ฐ ํ๋ก์ธ์ค๋ ๋ ๋ฆฝ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ง๋ฉฐ, ํ๋ก์ธ์ค ๊ฐ ํต์ (Inter-Process Co mvje.tistory.com ์ ํฌ์คํ ์์ ํ์ด์ฌ์ผ๋ก ๋ฉํฐํ๋ก์ธ์ฑ์ ์ฌ์ฉํ๊ธฐ ์ํด multiprocessing.Pool ์ฌ์ฉ๋ฒ์ ๋ํด ์ดํด๋ดค๋ค. ์ด๋ฒ์๋ multiprocessing.Process๋ฅผ ํ์ฉํ ๋ฉํฐํ๋ก์ธ์ฑ ๋ฐฉ๋ฒ๊ณผ Pool, Process ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฐจ์ด์ ์ ๋ํด ์์๋ณด๊ณ ์ ํ๋ค. multiprocessing.Pool๊ณผ multiprocessing.Process๋.. 2024. 1. 7. [python] ๋ฉํฐํ๋ก์ธ์ฑ Pool ์ฌ์ฉ๋ฒ ๋ฐ ์ฝ๋ ์์ | multiprocessing.Pool | python ์๋ ํฅ์ ๋ฉํฐํ๋ก์ธ์ฑ์ ์ฌ๋ฌ ๊ฐ์ ๋ ๋ฆฝ์ ์ธ ํ๋ก์ธ์ค๋ฅผ ์์ฑํ์ฌ ๊ฐ๊ฐ์ ํ๋ก์ธ์ค๊ฐ ๋ณ๋ ฌ๋ก ์์ ํ๋๋ก ํ๋ ๋ฐฉ์์ด๋ค. ๊ฐ ํ๋ก์ธ์ค๋ ๋ ๋ฆฝ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์ง๋ฉฐ, ํ๋ก์ธ์ค ๊ฐ ํต์ (Inter-Process Communication, IPC) ๋ฉ์ปค๋์ฆ์ ํตํด ๋ฐ์ดํฐ๋ฅผ ๊ตํํ ์ ์๋ค. ํ์ด์ฌ์์ ๋ฉํฐํ๋ก์ธ์ฑ์ ๊ตฌํํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ์ฃผ์ ๋ชจ๋์ multiprocessing์ด๋ค. multiprocessing ๋ชจ๋์ ํ์ด์ฌ์์ ๋ค์ค ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ๋ ฌ ์์ ์ ์ํํ๋ ๋ฐ ๋์์ด ๋๋ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋๋ฐ, threading ๋ชจ๋๊ณผ ๋ฌ๋ฆฌ Global Interpreter Lock (GIL)์ ์ํฅ์ ๋ฐ์ง ์์ผ๋ฏ๋ก CPU-bound ์์ ์ ํจ๊ณผ์ ์ด๋ค. multiprocessing.Pool multiprocessing.P.. 2024. 1. 7. [pytorch] ๋ชจ๋ธ ์ผ๋ถ๋ถ๋ง ์ ์ฅํ๊ธฐ/๋ถ๋ฌ์ค๊ธฐ PyTorch์์๋ ๋ชจ๋ธ์ ์ผ๋ถ๋ถ๋ง ์ ์ฅํ๊ฑฐ๋ ๋ถ๋ฌ์ฌ ์ ์๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ชจ๋ธ์ ํน์ ๋ถ๋ถ์ ๋ํ ์ ๊ทผ ๊ถํ์ ์ ์ดํ๊ณ ๋ชจ๋ธ์ ์ผ๋ถ๋ถ๋ง์ ๊ด๋ฆฌํ๊ณ ์ ํ ๋ ์ ์ฉํ๋ค. ๋ชจ๋ธ์ ํน์ ๋ถ๋ถ์ ์ ์ฅํ๊ณ ๋ถ๋ฌ์ค๊ธฐ ์ํด PyTorch์์๋ state_dict์ ํน์ ํค๋ฅผ ์ฌ์ฉํ ์ ์๋ค. (state_dict๋ ๋ชจ๋ธ์ ๊ฐ์ค์น์ ํธํฅ ๋ฑ์ ํฌํจํ๋ ์ฌ์ (dictionary)์ด๋ค) ๋ค์์ ๋ชจ๋ธ์ ํน์ ๋ถ๋ถ์ ์ ์ฅํ๊ณ ๋ถ๋ฌ์ค๋ ๊ฐ๋จํ ์์ ์ด๋ค. import torch import torch.nn as nn # ์์ ๋ชจ๋ธ ์ ์ class ExampleModel(nn.Module): def __init__(self): super(ExampleModel, self).__init__() self.layer1 = nn.Line.. 2023. 12. 9. ์ด์ 1 2 3 4 5 6 ยทยทยท 14 ๋ค์ 728x90