레플리
글 수 283

LLM의 새로운 기법 - Merge와 DPO

조회 수 1152 추천 수 0 2024.01.02 19:20:40


요즘 LLM에서 Merge와 DPO가 많이 쓰이고 있습니다. 얼마 전 공개된 업스테이지 SOLAR-10.7B도 이 두가지 기법을 사용했습니다.

 

 

 

Merge는 두 개 이상의 모델을 섞어서 하나의 모델로 만드는 방법입니다. SOLAR는 instruction tuning과 alignment tuning으로 학습한 모델들을 Merge하여 성능을 높였습니다. Merge는 학습이 아니기 때문에 CPU 계산만으로 매우 빠르게 수행할 수 있다는 장점이 있습니다.

 

K-002_1.jpg

 

 

 

DPO(Directly Preference Optmization)는 RLHF(Reinforcement Learning from Human Feedback)를 대체할 수 있는 방법입니다. RLHF는 같은 질문에 대해 여러 LLM의 대답 중 사람이 선택한 데이터로 보상 함수를 만듭니다. 그리고 보상 함수로 강화학습을 수행하여 모델 성능을 향상시킵니다. DPO 역시 선호 데이터를 사용하지만 보상 함수 없이 바로 학습을 합니다.

 

K-001_1.jpg

 

 

 

요즘 리더보드에 이 두가지 방법을 통해 높은 순위를 얻는 경우가 많아지고 있습니다. 대표적으로 Sakura-SOLAR-Instruct가 있습니다. 먼저 SOLAR-10.7b-Instruct-v1.0와 SauerkrautLM-SOLAR-Instruct 모델을 Merge합니다. 다음으로 다양한 DPO 데이터셋을 사용해서 DPO 학습을 했습니다. 이 과정만으로 리더보드 1위를 달성했다고 합니다.

 

다운로드_1.jpg

 

 

 

예전 머신러닝 시절에는 여러 모델을 앙상블하여 하나의 결과를 내는 방식이 주로 쓰였습니다. Merge도 약간 비슷한 느낌이 드네요.

 

 

 

< MergeKit >

https://github.com/cg123/mergekit

 

< Sakura-SOLAR >

https://kyujinpy.tistory.com/122

 

< DPO 논문 리뷰 >

https://hi-lu.tistory.com/entry/Paper-DPO-%EB%85%BC%EB%AC%B8-%EB%A6%AC%EB%B7%B0

 

List of Articles
제목 글쓴이 날짜 조회 수sort
Jay Alammar의 트랜스포머 한글 번역글 깊은바다 2019-05-09 1063
한국어 LLM 민주화의 시작 KoAlpaca file 깊은바다 2023-07-17 1060
Seq2Seq와 어텐션 기법을 애니메이션으로 쉽게 설명한 글 깊은바다 2018-10-12 1055
GPT-3의 다섯 가지 한계 깊은바다 2020-08-23 1050
단어를 벡터로 변환하는 Word2Vec 깊은바다 2017-05-04 1039
추천시스템이 word2vec을 만났을때 깊은바다 2018-08-22 1032
Meme 자동 생성기 깊은바다 2020-05-11 1023
딥러닝 기반 자연어처리 기법의 최근 연구 동향 [2] 깊은바다 2017-12-17 1020
딥러닝과 자연어처리의 집중 메커니즘 깊은바다 2018-09-08 1019
페르소나에 따라 대화를 하는 딥러닝 챗봇 by Hugging Face 깊은바다 2020-03-06 1008
프로그램을 작성하는 딥마인드의 알파코드 file 깊은바다 2022-02-04 1005
7B의 Alpaca가 175B의 GPT-3.5와 동급의 성능을 보임 file 깊은바다 2023-03-14 978
가짜뉴스를 생성 또는 판별하는 딥러닝 모델 - Grover 깊은바다 2019-06-01 969
OpenAI의 대화전용 딥러닝 모델 - ChatGPT file 깊은바다 2022-12-02 965
End-To-End Memory Networks - 자연어 질문에 대답하는 모델 [2] 깊은바다 2017-08-21 962