전체 글
-
테이퍼링(Tapering)이란 무엇인가?경제 관련 2023. 11. 7. 15:58
경제학에서 중앙은행의 정책 변화를 이해하기 경제학의 세계에서 '테이퍼링'이라는 용어는 중앙은행, 특히 연방준비제도(Fed, 미국 중앙은행) 같은 기관들이 통화정책을 변경할 때 자주 사용됩니다. 테이퍼링은 기본적으로 중앙은행이 경제를 자극하기 위해 실시했던 양적 완화 정책을 천천히 줄여나가는 과정을 의미합니다. 이 포스트에서는 테이퍼링이 무엇인지, 왜 중요한지, 그리고 그것이 우리의 경제와 투자에 어떤 영향을 미치는지에 대해 자세히 살펴보겠습니다. 테이퍼링의 배경: 양적 완화 테이퍼링을 이해하기 위해서는 먼저 양적 완화의 개념을 이해할 필요가 있습니다. 양적 완화는 중앙은행이 금융위기와 같은 비상 상황에서 시장에 유동성을 공급하고 경제 활동을 촉진하기 위해 대규모로 자산을 매입하는 정책입니다. 이러한 자산..
-
How to Optimize FastAPI for ML Model ServingProgramming/Python 2023. 10. 4. 10:14
https://luis-sena.medium.com/how-to-optimize-fastapi-for-ml-model-serving-6f75fb9e040d How to Optimize FastAPI for ML Model Serving If you do I/O alongside ML model serving, this will definitely make your FastAPI service faster. luis-sena.medium.com
-
Docker Image 경량화 방법 - 1부Programming/Docker 2023. 8. 8. 12:41
제가 사용하는 방식은 Develop Image의 용량이 너무 커서, 줄이는 방법을 고안하면서 터득했던 방법론을 공유하고자 합니다. 실제 개발에 사용하고 있고, 많은 테스트를 진행한 결과입니다. 3부작으로 나누었습니다. 1부 일반적인 패키지 관리 방법 2부 멀티스테이징 빌드 3부 ENTRYPOINT를 활용한 마지막 경량화 대부분 Deploy 이미지를 구축하는 방법에 대해서는 많은 레퍼런스가 있기 때문에 그런 부분부터 보고 오시면 조금 더 이해가 쉬울 수 있습니다. 일단 Docker Image는 다수의 이미지 레이어의 결합체입니다. 예를들어서, 이런 이미지와 FROM ubuntu:20.04 RUN apt-get update --yes RUN apt-get install --yes --no-install-re..
-
Transformer의 설명이 좋은 글 공유Machine Learning 2023. 8. 4. 09:10
https://deeprevision.github.io/posts/001-transformer/ AI Research Blog - The Transformer Blueprint: A Holistic Guide to the Transformer Neural Network Architecture A deep dive into Transformer a neural network architecture that was introduced in the famous paper “attention is all you need” in 2017, its applications, impacts, challenges and future directions deeprevision.github.io 사실상 LLM의 기초가 되는..
-
빈 컨테이너 실행 방법 - docker image debugOS 2023. 8. 4. 08:25
Docker Image를 만들다 보면 이게 잘 만들어졌는지 테스트가 필요할 때가 많은데, 이럴 때마다 entrypoint를 실행하기까지 조금 부담스러울 때, 사용되는 방법입니다. 파일이 어떤 형식으로 배치 되었는지, 불필요한 파일과 필요한 파일을 분리하거나, 필요없는 dependency가 설치되었는지, 내가 원하는 실행 파일이 설치 되었는지 확인이 필요할 때가 많습니다. 아무것도 실행하지 않는 도커 컨테이너를 실행하는 방법은 여러 가지가 있습니다. 아래의 방법 중 하나를 선택하여 사용할 수 있습니다. 빈 컨테이너 실행: 가장 간단한 방법은 빈 컨테이너를 실행하는 것입니다. 이렇게 하면 실행 중인 프로세스가 없는 컨테이너가 생성됩니다. docker run -d --name empty_container ub..
-
LLM Model의 새로운 Fine-tuning 방식 - LoRA TuningMachine Learning 2023. 7. 28. 09:47
사실 이 개념은 나온지는 오래된 개념이지만 Bert, RoBERTa처럼 그렇게 크지 않은 모델을 사용할 때는 그냥 Full-fine tuning을 진행하지 굳이 LoRA를 사용하지는 않았습니다. Bert-Base: 450M, RoBERTa: 1.3GB 정도입니다. Llama가 나오면서 이 모델들을 Full Fine tuning을 하기에는 컴퓨팅 소스가 매우 크기 때문에 LoRA가 빛을 발했다고 저는 생각합니다. 개념은 기존의 Pre-trained Layer의 가중치는 고정을 한체, 새로운 레이어의 가중치만을 학습을 시키는데도, 실제 성능의 차이가 많지 않다고 합니다. 동작 방식은 기존 LLM Model은 RAM에 저장을 하고 CPU inference만 진행하고, LoRA 가중치는 GPU에 저장을 해서 학..
-
LLM Model을 가정 GPU에서 사용하는 방법 - Quantization 방법론 - GPTQMachine Learning 2023. 7. 28. 09:32
Model 32bit 4bit 32g Llama 7B 13GB 4GB Llama 13B 26GB 8GB Llama 30B 66GB 19.4GB 이미 파라미터 수가 13B 넘어서는 순간부터는 가정에서 쓰이는 GPU로는 돌릴 수가 없는 모델이죠 4090 기준으로도 GPU Memory는 24GB이기 때문에 이론상 7B Model만 사용 가능합니다. 하지만 Quantization 기술을 활용하면 성능을 조금 포기하고, 매우 큰 LLM Model도 GPU에 Load하여 사용할 수 있습니다. 실제로도 HuggingFace에 "TheBloke" 라는 이름으로 매번 새로운 Fine-tune 모델들이 올라오면 Quantization 한 후에 prompt까지 제공을 해주는 아주 고마운 분들이 있죠, 덕분에 저희는 이미 Q..
-
Llama 2 설명 및 ChatGPT를 활용한 논문 요약Machine Learning 2023. 7. 19. 09:17
2023년 7월 18일 Meta에서 Llama 2 버전을 출시하였습니다. 1 버전과 다른 점은 "진짜" 오픈소스라는 점! 공개된 버전은 7B, 13B, 70B Token의 수는 1 버전보다 늘어난 4096 학습된 Token의 수는 1조개에서 늘어난 2조개..ㄷㄷㄷ Fine-tuning 방식도 RLHF + Human Feedback을 추가했다고 하네요. 그리고 이번에는 Chat Model도 출시가 됐기 때문에 Queatization만 잘하면 바로 사용도 가능한 모델이라고 생각됩니다. 4Bit, 128g 나오면 바로 써봐야 겠네요 ㅎㅎ 휴먼 피드백에서 민감한 내용은 제외하게 학습을 해서, 모델 자체도 안전해졌다고 하네요. 꼭 한번 읽어보시길 바랍니다. 아쉽지만 학습된 데이터는 거의 영어네요..ㅠㅠ 성능 자체..