Popular Posts
-
[yongggg's] FSDP: Fully Sharded Data Parallel
안녕하세요 이번 장에서는 LLM의 등장으로 모델 학습의 어려움이 커지면서 DDP의 병렬 분산 처리 학습으로 담을 수 없는 큰 모델을 학습하기 위한 방법인 Fully Sharedd Data Parallel(이하 FSDP)에 대해 설명을 드리겠습니다. 원문은 아래에 있으니, 아래를 참고하시는 것도 추천합니다! https://engineering.fb.com/2021/07/15/open-source/fsdp Large AI 모델을 쉽게 학습하기 위한 infra로는 intra-layer model parallelism, pipeline model parallelism, optimizer state+gradient sharding, and mixture of experts 등의 방법이 있습니다. 이 중에서 아래 ..
-
[yongggg's] DeepSpeed + Zero 둘러보기
안녕하세요 이번 장에서는 효율적인 Deep Learning training 툴인 Deepspeed에 대해 간단히 살펴보겠습니다.간략하게 핵심부터 말씀드리자면, GPU에 모델 학습 parameter를 복제하는 기존의 비효율 시스템을 효율적으로 구동할 수 있도록 만든 framework라고 할 수 있습니다. 아래는 DeepSpeed + Zero와 그렇지 않은 모듈의 GPU 사용량 및 여러 장점들을 나타냅니다.지금부터 짧게 DeepSpeed + Zero에 대해 설명하겠습니다.1. Introduction현재 딥러닝 trend가 LLM으로 들어오면서, 해당 모델의 크기는 점점 커지며 좋은 데이터, 큰 모델의 시너지는 굉장히 powerful하다는 것이 입증되고 있다. 모델의 두 가지 조건 중에서 큰 모델의 학습은 점..
-
[Python] pip install 'SSLCertVerificationError' 해결 방법
pip install 로 특정 모듈을 설치할 때, 다음의 error 가 발생할 수 있다. Could not fetch URL https://download.pytorch.org/whl/cu121/torch/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='download.pytorch.org', port=443): Max retries exceeded with url: /whl/cu121/torch/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed..
-
[yongggg's] ChipNeMO: Domain-Adapted LLMs for Chip Design Review
안녕하세요 이번 장에서는 LLMs 모델을 Domain Adataion 하는 방법에 대해서 설명드리고자 합니다. 요즘 많은 LLMs은 General 한 자연어처리는 사람 혹은 사람보다 더 그럴 듯하게 생성해내고 있습니다. 하지만, 금융, 법률 혹은 이러한 구체적인 분야에서는 틀린 자연어(환각, 오류 , 거짓말 등)를 생성했을 때, 이 문제가 치명적일 수 있습니다.따라서, 각 분야의 정보만을 가지고 자연어를 생성할 수 있어야하는데요, 이를 도와주는 것이 Domain Adaptation이며, 이는 자연어 뿐만 아니라 이미지등의 시각 분야에도 많이 연구가 되고 있습니다.저는 그 중에서 LLMs을 위한 ChipNeMo 논문을 소개하고자 합니다. 먼저 이 논문에서 말하는 Chip에 대해 간단히 설명드리자면, 다음과..
Latest post
-
[yongggg's] Audio Domain (소리의 기초)domain 2025.04.23 09:53
* 소리의 기초(1) Sound소리는 일반적으로 진동으로 인한 공기의 압축에서 생성된다.(2) Wave공기의 압축이 얼마나 됐는지에 따라 표현한 것을 wave(파동)이라고 한다. $/rightarrow$ 파동은 진동 하며, 공간(매질)을 전파해 나가는 현상이다.(3) Frequency(주파수)파동의 초당 진동수를 주파수라고 하며, 헤르츠(Hz) 단위로 표기한다.소리가 얼마나 압축되어 있는지를 나타내며, 1초 동안의 진동 횟수를 나타낸다.주파수가 높다면, 높은 소리를 내고 낮다면, 낮은 소리를 낸다.주파수는 다음 세 가지의 요소를 가진다. (4) Amlitude(진폭)소리의 크기와 관련이 되어 있는 요소이다. 진폭이 클수록 큰 소리가 되며, 작을수록 작은 소리가 된다."bel"이라는 소리 크기(음압)에 대..
-
[yongggg's] A Survey on Audio Diffusion Models: Text To Speech Synthesis andEnhancement in Generative AI 요약(1)Machine & Deep Learning 2025.04.22 10:43
안녕하세요 요즘 TTS 연구에 필수로 들어간다고해도 과언이 아닌 Diffusion model의 survey 논문을 소개 해드리겠습니다. Diffusion model은 vision model에서 연구가 먼저 되었지만, 음성 합성 분야에 많이 쓰이는 model입니다.다른 Survey이의 Diffusion model은 vison 쪽에 focus 되어 있지만 이 논문에는 Audio 쪽에 focus가 되어 있어서 audio 쪽 diffusion model에 관심이 있으신 분은 한 번 읽어보시면 좋을 것 같습니다! 그럼 요약 시작하겠습니다!AbstractText-to-Speech 변환 과제에서는 모델이 적용되는 단계에 따라 세 가지 범주로 나뉜다.acoustic model (음향 모델)vocoderend-to-en..
-
[yongggg's] Mixture of Experts (MoE) LLMSMachine & Deep Learning 2025.04.16 15:43
MoE는 효율성과 성능을 동시에 향상시키기 위해 사용되는 신경망이며, 모델 architecture에 희소성을 도입하여 모델 크기를 크게 증가시키면서도 컴퓨팅 비용을 증가시키지 않는다는 장점을 갖고 있습니다. 이 내용을 공부하면서 간단한 아이디어이지만, 그 아이디어에서 나오는 문제까지 집요하게 해결할 수 있는 눈을 길러야 겠다는 생각을 했습니다. 지금부터 설명을 시작하겠습니다.1. MoE를 공부하기 위한 기본 지식1-1. LLMMoE 기반 LLM은 Decoder 전용 transformer architecture를 기반으로 한다. 이 Decoder 전용 LLM의 한 Block에서는 Normalization(LayerNorm, RMSLayerNorm 등), Masked multi-headed self-atte..
-
[yongggg's] Speech To Text (STT; whisper로 갖고 놀기)Machine & Deep Learning 2025.03.12 13:24
안녕하세요, 이번 장에는 음성을 텍스트로 바꿔주는 기술에 대해 이야기해보려고 합니다.STT opensource 모델인 구글의 whisper로 이를 구현해보았는데,mac M1 칩(16GB memory)에서도 돌아가니 관심이 있으시다면, 한 번 시도해보셔도 좋을 것 같습니다! 이제 설명 시작하겠습니다!1. STTSTT는 'Speech-to-Text'의 줄임말으로 쉽게 말하자면, 사람이 말하는 소리를 듣고 그걸 텍스트로 변환해주는 기술이다.예를 들어, 너가 "안녕"이라고 말하면 그걸 "안녕"이라는 글자로 바꿔주는 것이다. 이 기술은 스마트폰 음성 비서, 회의 기록, 자막 생성 같은 데서 유용하게 쓰이며, AI가 발전하면서 정확도 또한 높아져 실생활에서 점점 더 자주 사용되는 추세이다.2. Whisper Moe..
-
[yongggg's] Kubernetes 에서 Job 이란?kubernetes & Docker 관련 2025.02.18 14:45
이번 장에서는 Kubernetes에서 testing 시 이용하는 Job에 대해 설명 드리겠습니다.Job은 특정 작업(배치 작업, 데이터 처리 등)을 수행하고 종료하는 일회성 작업을 위해 사용됩니다.** (vs. Pod) Pod은 일반적으로 웹 서버처럼 계속 동작하는 Application을 실행할 때, 사용됩니다.Kubernetes의 Job에 대해서 더 자세히 알아보겠습니다!1. Kubernetes JobKubernetes Job은 일회성(One-time) 작업을 실행하는 데 사용되는 Kubernetes 리소스이며, Job의 역할은 Pod을 실행하고, 해당 작업이 완료되면 종료되도록 설계되었다. 주로 배치 작업(Batch Processing) 또는 데이터 처리 작업에서 활용된다.📌 1. Job의 특징 •..