전체 글
-
시간, 메모리 효율적으로 LLM 학습하기 (2) (DP, DDP, FSDP, DeepSpeed ... )AI/NLP 2024. 11. 4. 22:14
시간, 메모리 효율적으로 LLM 학습하기 (2)(DP, DDP, FSDP, DeepSpeed ... ) 모델을 학습시키다 보면 OOM 문제를 맞닥뜨리게도 되고, 또 학습하는 시간 때문에도 골머리를 앓게 된다...! 본인에게 가능한 환경에서 최대한의 퍼포먼스를 낼 수 있는 방법을 찾아보자! 본 포스트에서는 Multi GPU 환경에서 할 수 있는 방안에 대해서 살펴본다 아래의 글과 영상을 참고한다. https://huggingface.co/docs/transformers/perf_train_gpu_many Efficient Training on Multiple GPUsIf training a model on a single GPU is too slow or if the model’s weig..
-
시간, 메모리 효율적으로 LLM 학습하기 (1) (Gradient Accumulation, Gradient Checkpointing, Mixed Precision Training ... )AI/NLP 2024. 11. 4. 22:12
시간, 메모리 효율적으로 LLM 학습하기 (1) (Gradient Accumulation, Gradient Checkpointing, Mixed Precision Training ... ) 모델을 학습시키다 보면 OOM 문제를 맞닥뜨리게도 되고, 또 학습하는 시간 때문에도 골머리를 앓게 된다...! 본인에게 가능한 환경에서 최대한의 퍼포먼스를 낼 수 있는 방법을 찾아보자! 본 포스트에서는 Single GPU 환경에서 할 수 있는 방안에 대해서 살펴본다 https://huggingface.co/docs/transformers/en/perf_train_gpu_one Methods and tools for efficient training on a single GPUThis guide demon..
-
LoRA: Low-Rank Adaptation of Large Language Models 논문 리뷰 (+ Adapter, Prefix Tuning)AI/NLP 2024. 6. 4. 13:16
LoRA: Low-Rank Adaptation of Large Language Models 논문 리뷰 최근에 나온 MoRA를 읽어보기 전에 LoRA 논문을 올리지 않은 것 같아, 이번 기회에 정리! 사용 방법에 대한 코드도 함께 정리해볼 예정이다 들어가기 전에 : PeFT의 등장 배경 Fully Fine Tuning Parameter-efficient approach세타는 오리지널 파라미터보다 훨씬 적은 양의 파라미터세타_0에 아주 작은 변화량 더해준다 => 이게 LoRA의 핵심이다 Abstract & Introduction Transfer learning의 붐이 시작된 이래로 수십 개의 연구에서 parameter와 compute-efficient하게 model adaptation..
-
MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning 논문 리뷰AI/NLP 2024. 6. 4. 13:15
MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning 논문 리뷰 Abstract & Introduction https://asidefine.tistory.com/309 LoRA: Low-Rank Adaptation of Large Language Models 논문 리뷰 (+ Adapter, Prefix Tuning)LoRA: Low-Rank Adaptation of Large Language Models 논문 리뷰 최근에 나온 MoRA를 읽어보기 전에 LoRA 논문을 올리지 않은 것 같아, 이번 기회에 정리! 사용 방법에 대한 코드도 함께 정리해볼 예정이asidefine.tistory.com LoRA의 한계점 지적 Full Fine Tu..
-
Query Expansion by Prompting Large Language Models (Google, 2023) 논문 리뷰AI/NLP 2024. 5. 24. 17:43
Query Expansion by Prompting Large Language Models (Google, 2023) 논문 리뷰 Abstract + Introduction Query Expansion정의 : 원문 Query에 몇가지 용어를 추가해서 검색 시스템의 성능을 향상시키는 방법원문 Query랑 단어가 겹치지 않는 관련 document들을 뽑아내는 데 유용하다 기존의 방식 Pseudo-Revevance Feedback (PRF): 원문 Query를 입력했을 때 나오는 Document에서 키워드를 추출해서, 그 키워드를 포함한 다른 Document 반환하는 방식 한계 : 가장 위에 retrieve되는 document가 query와 관련있다고 생각하는데, 실제로 특히 query가 짧은 경우엔 ..
-
"[SK TECH SUMMIT 2023] LLM 적용 방법인 RAG VS PEFT, Domain 적용 승자는?" 영상 리뷰AI/NLP 2024. 5. 21. 20:38
"[SK TECH SUMMIT 2023] LLM 적용 방법인 RAG VS PEFT, Domain 적용 승자는?" 영상 리뷰 목차 1. LLM 배경 2. 사내 적용 시 Challenge Point3. PEFT vs RAG4. 결론 PoC(Proof of Concept)를 진행하며 발견했던 부분들에 대해서 강연 ~새로운 기술, 서비스, 프로젝트, 신약 등이 실현 가능성이 있는지 검증하는 과정 OpenAI GPT의 경우 API 형태로만 공개해서 사용 시 제약사항이 있었지만, LLaMA를 오픈소스로 풀어서 우리가 잘 쓰고 있는 중 (땡스투Meta) 아래에서 본격적으로 PoC를 진행하며 고려해야 됐던 사항들 설명되었다 Challenge Point ChatGPT (API 형태의..
-
LangChain RAG Retriever 방법 정리 (Multi-Query, Parent Document, Ensemble Retriever, ... )AI/NLP 2024. 5. 15. 19:11
LangChain RAG Retriever 방법 정리 (Multi-Query, Parent Document, Ensemble Retriever, ... ) LLM이 뛰어날 수록 Document Parsing과 Retriever 단계가 중요하다 따라서, 지난 포스트 마지막에서 언급했던 Retriever API를 좀 더 살펴볼 것이다. Retriever 기법 1. Multi-Query : 대충 질문해도 좋은 답변 원할 때 2. Parent Document : 앞뒤 문맥 잘 담아야 할 때 3. Self Query : 시맨틱 검색 말고 쿼리가 필요할 때 4. Time-Weighted : 오래된 자료를 덜 참고하면 좋을 때5. Ensemble Retriever : 검색의 정확도 높일 때 6. Lon..
-
LangChain RAG 구현 모듈 정리 (Document Loaders, Text Splitters, Text Embeddings & VectorStores , Retrievers, ... )AI/NLP 2024. 5. 14. 22:14
LangChain RAG 구현 모듈 정리 (Document Loaders, Text Splitters, Text Embeddings & VectorStores , Retrievers, ... ) 과정 Document LoadersText Spiltters Text Embeddings & VectorStores Retrievers !pip install langchain pypdf unstructured pdf2image docx2txt pdfminer sentence-transformers chromadb # a class to create a question answering system based on information retrievalfrom langchain.chains impor..