AI | 딥러닝22 [Microsoft DeepSpeed] ZeRO paper series 리뷰 Abstract현존하는 거대한 Language Model들은 학습하는 것에 문제가 있음.학습을 빠르게 하고싶다 = 많은 GPU + 큰 Batch size → Data Parallelism엄청 큰 모델을 학습하고 싶다 → 모델을 쪼개자 → Model Parallelism위 두 가지와 모두 호환 가능하면서 GPU 메모리 부족 문제로 어려운 초대형 모델 training을 가능하게 함.즉, GPU 메모리 사용량을 줄여줌.→ "ZeRO: Zero Redundancy Optimizer"DP/MP에서 발생하는 Memory Redundancy를 제거Communication cost를 최소화 ZeRO OverviewZeRO는 메모리 소비 스펙트럼을 분석하여 Model States와 Residual States로 나누어.. 2024. 10. 18. [Python] 3x3 depthwise convolution 코드 # loading the layer file layer_name = 'intro.conv1.convs.2' inp = np.load(f'npy/{layer_name}_inp.npy') wgt = np.load(f'npy/{layer_name}_wgt.npy') try: bias = np.load(f'npy/{layer_name}_bias.npy') except: bias_flag = False else: bias_flag = True out = np.load(f'npy/{layer_name}_out.npy') # mapping fixed point inp_fxp = inp.astype(np.int64) wgt_fxp = wgt.astype(np.int64) psum_fxp = np.zeros_like(o.. 2023. 9. 9. [Python] 1x1 point convolution 코드 # loading the layer file layer_name = 'intro.conv1.convs.1' inp = np.load(f'npy/{layer_name}_inp.npy') wgt = np.load(f'npy/{layer_name}_wgt.npy') try: bias = np.load(f'npy/{layer_name}_bias.npy') except: bias_flag = False else: bias_flag = True out = np.load(f'npy/{layer_name}_out.npy') # changing to fixed point inp_fxp = inp.astype(np.int64) wgt_fxp = wgt.astype(np.int64) psum_fxp = np.zeros_li.. 2023. 9. 9. NeurIPS 2022 Conference Comment(후기) in New Orleans, USA NeurIPS (Neural Information Processing Systems) NeurIPS는 올해로 36주년을 맞았으며 2022년에 총 2905편의 논문을 accept 하고 약 10,000여명의 사람이 학회장으로 모이는 국제 최대 AI 학회이다. 내가 지금껏 다녔던 Machine Vision 혹은 HW IC Chip 학회와는 규모가 족히 2배이상 차이난다. 특히나 구글, 애플, 아마존, Meta 등 자원이 빵빵한 기업들도 함께 paper를 쓰고 따로 기업 부스를 열어 그들의 AI 기술과 관련 인턴쉽 홍보도 하기에 분위기는 더 달아오른다. 여담으로 paper author를 대상으로 기업별 social dining도 있다. 나는 이번 학회에 논문을 따로 내지 않았기에 그 내막을 자세히 알진 못하지만.. 2022. 12. 5. [뉴스 스크랩] 점점 커져가는 초거대 NLP AI 모델들의 크기 초거대 AI 모델 2020년 이전에는 NLP 모델 중에서 거대한 크기의 모델이 없었다. CNN 모델에 비하여 파라미터 수가 현저히 낮은 작은 크기의 모델만 존재하였다. 그러다 2020년 6월 OpenAI가 'GPT-3'라는 transformer 기반의 NLP 모델을 발표하면서 판을 뒤집었다. 초거대 AI 모델의 의미 모델의 크기가 커진다는 것은 어떤 의미일까? 모델의 크기, 즉, 학습된 신경망의 규모는 신경망이 가진 파라미터(parameter, 매개변수) 수로 측정할 수 있다. 개략적으로 말해서 AI 모델의 파라미터 수가 많을수록 모델이 학습 데이터에서 더 많은 정보를 받아들일 수 있고, 새로운 데이터에 대해서도 더 정확한 예측을 할 수 있다는 의미이다. 대분류 모델 명 Parameter(매개변수) 수 .. 2022. 3. 15. [Pytorch 프로젝트] CNN(Convolutional Neural Network)으로 MNIST 데이터 분류하기 🔊 해당 포스팅에서 사용된 컨텐츠는 위키독스의 PyTorch로 시작하는 딥러닝 입문 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 포스팅은 CNN(Convolutional Neural Network) 기법을 이용하여 MNIST 데이터를 분류하였다. 같은 MNIST 데이터로 softmax regression과 MLP(multi-layer perceptron) 방식으로도 MNIST 데이터를 분류하였으니 참고하면 좋다. 2021.10.24 - [AI | 딥러닝/Project] - [Pytorch] Softmax regression으로 MNIST 데이터 분류하기 2021.10.24 - [AI | 딥러닝/Project] - [Pytorch 프로젝트] MLP.. 2021. 10. 25. [Pytorch 프로젝트] MLP(Multi-Layer Perceptron)으로 MNIST 데이터 분류하기 🔊 해당 포스팅에서 사용된 컨텐츠는 위키독스의 PyTorch로 시작하는 딥러닝 입문 내용을 기반으로 했음을 알립니다. 설명에서 사용된 자료는 최대한 제가 직접 재구성한 자료임을 알립니다. 아래 포스팅은 Softmax regression 기법을 이용하여 MNIST 데이터를 분류하였다. 아래 방식과 차이점을 비교하여 이번 포스팅을 보면 훨씬 이해하는 데 도움이 될 것이다. 2021.10.24 - [AI | 딥러닝/Project] - [Pytorch] Softmax regression으로 MNIST 데이터 분류하기 사용 Framework: Pytorch 사용 기법: MLP(Multi-Layer Perceptron) 사용 함수: nn.Sequential() 사용 데이터: MNIST (손글씨 숫자) 모델링을 할 .. 2021. 10. 24. 이전 1 2 3 4 다음