728x90 ๐ป Programming/AI & ML17 [ํํ ๋ฆฌ์ผ] ๋๊ตฌ๋ ์ฌ์ฉํ ์ ์๋ CLIP & KoCLIP ๋ชจ๋ธ ์์ | ์ฝ๋ฉ ๋ชปํด๋ ๊ฐ๋ฅํด! | ๋ฉํฐ๋ชจ๋ฌ AI ์์ | CLIP & ํ๊ตญ์ด CLIP ์๋ ํ์ธ์. ์ค๋์ ๊ธฐ๋ณธ์ ์ธ ๋ฉํฐ๋ชจ๋ฌ AI ๋ชจ๋ธ์ธ, CLIP์ ์ฌ์ฉํด ๋ณด๋ ํํ ๋ฆฌ์ผ์ ๊ฐ์ ธ์์ด์!์ฌ์ค ์์ฆ์ ๋ฅ๋ฌ๋ ํ๋ ์์ํฌ๊ฐ ๋ฐ์ ํด์ ๊ต์ฅํ ์์ฝ๊ฒ AI ๋ชจ๋ธ์ ๋ค๋ค๋ณผ ์ ์๋๋ฐ์. CLIP ๊ณผ ๊ฐ์ ํธ๋์คํฌ๋จธ ๊ธฐ๋ฐ์ ๋ชจ๋ธ๋ ํ๊น ํ์ด์ค API๋ฅผ ์ฌ์ฉํ๋ฉด ๊ต์ฅํ ์ฝ๊ฒ ์ฌ์ฉํด ๋ณผ ์ ์์ด์. ํนํ ํ์ตํ์ง ์๊ณ pre-trained(์ฌ์ ํ์ต๋) ๋ชจ๋ธ์ ์ฌ์ฉํ๋ค๋ฉด ๋๋์ฑ ์ฝ๊ฒ ์ฃ ? *CLIP : Contrastive Language-Image Pretraining ๊ทธ๋์ ์ค๋์ ์ฝ๋ฉ์ ํ ์ค ๋ชจ๋ฅด๋ ๋น๊ฐ๋ฐ์๋ ์์ฝ๊ฒ ๋ฐ๋ผํ ์ ์๋ ํํ ๋ฆฌ์ผ์ ๋ง๋ค์ด ์๋ต๋๋ค ~~ ๐ค์ฌ์ค ์ฝ๋๊ฐ ์งง์์ ๋ญ ๋ง๋ค์๋ค๊ณ ํ ์ ์๋ ์์ค๋ ์๋๊ธด ํด์ ใ ใ CLIP Model ๊ทธ๋๋ ๊ฐ๋จํ๊ฒ ๋ผ๋ CLIP ๋ชจ๋ธ์ด ๋ฌด์์ธ์ง๋ .. 2024. 7. 28. [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. [ONNX] ๋ฅ๋ฌ๋ ๋ชจ๋ธ ONNX Runtime์ผ๋ก CPU ํ๊ฒฝ์์ ๊ฐ์ํํ๊ธฐ ์์ฆ์ ์ด์ง๊ฐํ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ GPU ์์ด ๋๋ฆฌ๊ธฐ ์ด๋ ต์ง๋ง, ๋ ์์ธ๋ก ๊ฐ๋ฒผ์ด ๋ชจ๋ธ๋ค์ CPU ๋ง์ผ๋ก ๋๋ฆด ์ ์๋ค. ๊ฐ๋ฅํ๋ค๋ฉด ํด๋ผ์ฐ๋ ๋น์ฉ๋ ์ค์ผ ์ ์์ผ๋ ์จ๋ผ์ธ ์์ธก์ด ํ์ํ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด CPU ํ๊ฒฝ์์ ์ธํผ๋ฐ์คํ๋ ๊ฒ๋ ๊ณ ๋ คํด ๋ณผ ๋งํ๋ค. ๋ฌผ๋ก CPU๋ก ๋ฅ๋ฌ๋ ๋ชจ๋ธ ์ธํผ๋ฐ์ค๋ฅผ ํ๊ฒ ๋๋ฉด ์๋นํ ๋๋ฆฌ๋ค. ๋๋ฌธ์ ONNX ๋ชจ๋ธ ๋ณํ์ ํ๊ณ , ONNX runtime์ผ๋ก ์ธํผ๋ฐ์ค๋ฅผ ์ํํ๋ฉด ์กฐ๊ธ์ด๋ผ๋ ๋ชจ๋ธ ์ธํผ๋ฐ์ค ์๋๋ฅผ ํฅ์์ํฌ ์ ์๋ค. ๋ํ TensorRT์ ๋ฌ๋ฆฌ ONNX ๋ชจ๋ธ ๋ณํ์ ๊ฒฝ์ฐ ์ ๋ ฅ ํ ์ ํฌ๊ธฐ ๋ํ ๋์ ์ผ๋ก ๊ฐ์ ธ๊ฐ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค. ๋ฌผ๋ก ํ๋์จ์ด ํ๊ฒฝ์ ๋ฐ๋ผ, ๋ชจ๋ธ์ ๋ฐ๋ผ, ์ ๋ ฅ ํ ์์ ํฌ๊ธฐ์ ๋ฐ๋ผ ์๋ ํฅ์์ ์ ๋๊ฐ ๋ค๋ฅด๊ฑฐ๋, ์คํ๋ ค ์๋๊ฐ ๋๋ ค์ง ์๋ ์์ผ๋ ํ ์คํธ๋ฅผ ํด.. 2023. 11. 16. [Model Inference] Pytorch 2.0 Compile ์ฌ์ฉ ํ๊ธฐ ๋ฐ ์ฅ๋จ์ | pytorch compile ๋ชจ๋ธ ์ถ๋ก ์๋ ๊ฐ์ ํ ์คํธ Pytorch Compile ํํ ๋ฆฌ์ผ Pytorch 2.0 Overview Pytorch 2.0 compiled_model = torch.compile(model) ๊ธด ์ค๋ช ํ ๊ฒ ์์ด Pytorch 2.0 ์ดํ compile ์ด๋ผ๋ ๊ฒ์ด ์ถ๊ฐ๋์๋๋ฐ, ์ ์์์ฒ๋ผ torch.comile(model)์ด๋ผ๋ ์งง์ ์ฝ๋ ํ ์ค๋ง ์ถ๊ฐํ๋ฉด ๋ชจ๋ธ ์ธํผ๋ฐ์ค ์๋๋ฅผ ํฅ์์ํฌ ์ ์๋ค๊ณ ํ๋ค. ๊ณต์ ๋ฌธ์์ ๋ฐ๋ฅด๋ฉด A100 GPU์์ ๋ชจ๋ธ ํ์ต ์๋๋ 43% ํฅ์๋๊ณ , ๋ชจ๋ธ ์ธํผ๋ฐ์ค ์๋๋ Float32 precision์์ 21%, AMP precision์์ 51% ์ ๋ ํฅ์๋๋ค๊ณ ํ๋ค. Pytorch 2.0 Compile ๋ชจ๋ธ ์ธํผ๋ฐ์ค ํ ์คํธ torchvision์์ ์ ๊ณตํ๋ ๊ธฐ๋ณธ์ ์ธ ๋ชจ๋ธ์ธ resnet50์ผ๋ก p.. 2023. 10. 7. [Model Inference] Torch-TensorRT ์ฌ์ฉ๋ฒ | ๋ฅ๋ฌ๋ ๋ชจ๋ธ ์ต์ ํ ๋ฐ ์ธํผ๋ฐ์ค ๊ฐ์ํ Torch-TensorRT๋ PyTorch์ NVIDIA์ TensorRT๋ฅผ ํตํฉํ์ฌ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ์ต์ ํํ๊ณ ๊ฐ์ํํ๋ ๋ฐ ์ฌ์ฉ๋๋ PyTorch/TorchScript/FX์ฉ ์ปดํ์ผ๋ฌ์ด๋ค. Torch-TensorRT๋ PyTorch ์ต์คํ ์ ์ผ๋ก ๋์ํ๋ฉฐ JIT(Just In Time) ๋ฐํ์์ ์ํ ํ๊ฒ ํตํฉ๋๋ ๋ชจ๋์ ์ปดํ์ผํ๋ค. NVIDIA TensorRT๋ NVIDIA GPU์์ ๋ชจ๋ธ์ ๋ ๋น ๋ฅด๊ฒ ์คํํ๊ธฐ ์ํ ์ต์ ํ๋ ๋ฐํ์ ์์ง์ผ๋ก, ํนํ ๋ฅ ๋ฌ๋ ๋ชจ๋ธ์ ๋ฐฐํฌ ํ๊ฒฝ์์ ๋ ํจ์จ์ ์ผ๋ก ์คํํ๊ณ ์ถ๋ก (inference) ์ฑ๋ฅ์ ํฅ์์ํค๋ ๋ฐ ์ฌ์ฉ๋๋ค. ๊ธฐ์กด์ ํ์ด์ฌ์ผ๋ก TensorRT๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์คํ์์ค ์ปค๋ฎค๋ํฐ์์ ๊ฐ๋ฐํ torch2trt ํจํค์ง๋ฅผ ์ฌ์ฉํด์ pytorch ๋ชจ๋ธ์ tenso.. 2023. 10. 2. [pytorch] Multi-GPU Training | ๋ค์ค GPU ํ์ต ์์| Distributed Data Parallel (DDP) | Data Parallel (DP) Multi-GPU Training Multi-GPU Training (๋ค์ค GPU ํ์ต)์ ์ฌ๋ฌ ๊ฐ์ GPU๋ฅผ ์ฌ์ฉํ์ฌ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ํ์ตํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ์ ์ ์ปค์ง๊ณ ๋ฐ์ดํฐ์ ์ ํฌ๊ธฐ ๋ํ ๋ฐฉ๋ํ๊ธฐ ๋๋ฌธ์ ๋ค์ค GPU๋ฅผ ์ฌ์ฉํ์ฌ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ํ์ตํ๋ ๊ฒ์ ์ฌ์ค์ ํ์์ ์ธ ๊ธฐ์ ์ด๋ผ ๋ณผ ์ ์๋ค. Pytorch์์๋ multi-gpu ํ์ต์ ์ํ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค. Data Prarallel (DP) # DataParallel ๋ชจ๋๋ก ๋ชจ๋ธ ๊ฐ์ธ๊ธฐ model = nn.DataParallel(model) torch.nn.DataParallel ๋ชจ๋์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ผ๋ก, ๊ต์ฅํ ๊ฐ๋จํ๊ฒ ๋์ํ์ง๋ง ๋ช ๊ฐ์ง ์น๋ช ์ ์ธ ๋จ์ ์ด ์กด์ฌํ๋ ๋ฐฉ๋ฒ์ด๋ค. ์ฅ์ ์์ฃผ ๊ฐ๋จํ๋ค (๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ํด๋น ํจ์๋ก ๊ฐ.. 2023. 4. 17. ์ด์ 1 2 3 ๋ค์ 728x90