Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags
more
Archives
Today
Total
관리 메뉴

archive

Crayon: Customized On-Device LLM viaInstant Adapter Blending and Edge-Server Hybrid Inference 본문

ML_AI/논문 리뷰

Crayon: Customized On-Device LLM viaInstant Adapter Blending and Edge-Server Hybrid Inference

안정민 2025. 3. 29. 16:08

리뷰 논문 : 

https://aclanthology.org/2024.acl-long.204.pdf

2024.acl-long.204.pdf
1.42MB


1. Introduction

 

최근 LLM 의 핵심적인 동향 = 고도화된 맞춤형 LLM (customized LLM)

→ 사용자 요청에 특화된 작업을 수행할 줄 아는 맞춤형 LLM의 수요가 늘어나고 있음

 

[문제점]

  • LLM의 방대한 크기는 모든 맞춤형 LLM을 서버에 보관하기 어렵게 함
  • 사용자 맞춤 개인화 == 개인정보 문제 발생이 불가피

→점점 초점이 디바이스 내 LLM으로 이동 (개인정보 보호 및 개인에게 필요한 LLM만 보관)

 

[문제점 2]

  • 엣지 디바이스의 제한된 연산 능력 → 서버수준의 대형 모델을 그대로 사용하는 것은 비현실적

→ 이 문제를 해결하기 위해 few-shot 및 in-context learning (COT) , RAG 등의 방법론이 제안

→ 이러한 프롬프트 기반 접근법은, 프롬프트가 길고 복잡할 수록 추론 비용이 증가한다는 본질적인 문제가 존재

→ 따라서 엣지 디바이스가 가지는 제한된 연산 능력을 보완하지 못 한다

→ 파인튜닝의 경우 시간이 많이 들고 개인화된 데이터가 소량이라는 점, 연산능력이 여전히 보완 불가능하다는 점이 문제점으로 남는다

Q. 디바이스 내 학습 없이 단순히 LLM을 맞춤화 할 수 없는 것일까?
A. Crayon 제안

 

Crayon 

어댑터 풀 (adapter pool) 이라고 불리는 기본 어댑터 집합에서

실시간으로 블렌딩 된 하나의 맞춤 어댑터를 통해 

디바이스 내의 LLM 을 커스터마이징 하는 방법론을 제안

 

[논문의 목표]

1. 다양한 사용자 요구를 다루기 위해 서로 다른 데이터를 활용해, 서로 다른 기본 어댑터 여러 개를 제작한다

2. 그리고 서로 다른 어댑터를 블렌딩할 때 추가 학습 비용이 들지 않는다

3. 맞춤형 모델이 다루기 힘든 예외적인 쿼리는 서버에서 처리  디바이스-서버 하이브리드 추론 전략

4. LLM 커스터마이징 벤치마크 제시

 

 

 

2. Problem Set-up

(1) Defining & processing customized task (사용자 맞춤형 작업 정의 및 처리)

 

기존 few-shot 학습처럼 긴 프롬프트를 사용하는 대신,

사용자의 작업에 대해 맞춤형 어댑터를 서버에서 생성하고 디바이스에 배포

→ 추론 비용을 줄여주는 효과

→ 데이터 프라이버시도 보장하여 온디바이스 상황에 적합

 

(2) Baseline LLM (기준 LLM 선정)

 

auto-regressive 언어 모델에서는 GPT, LLaMA, Mistral, Falcon 등 대부분 인기있는 모델이 decoder only 아키텍처를 채택

따라서 본 연구에서는 가장 작은 LLaMA-7B를 디바이스 내 LLM의 기준 모델로 선정

→서버 수준의 대형 모델은 아니지만

→엣지 디바이스에 가장 적절한 크기

 

(3) Adapter for customized LLM (맞춤형 LLM을 위한 어댑터 설계)

 

LLM 어댑터로 채택 → LoRA (Low-rank Adaptation)

LoRA 학습은 디바이스 내에서 수행되는 것이 아닌 서버에서 훈련

 

즉, 서버에서 훈련 데이터셋 Dtr을 기반으로 N개의 기본 LoRA 들을 학습하여 LoRA 풀 (LoRA pool)을 구성

그리고 이들을 조합하여 사용자 맞춤형 목표 작업 Dc에 대한 즉석 LLM 커스터마이징을 수행하며

디바이스 내의 추가학습은 필요 없게 된다

 

(4) Device-server hybrid inference (디바이스-서버 하이브리드 추론)

 

디바이스 내 모델이 아무리 사용자 지정 작업에 잘 맞추어져 있다고 하더라도

디바이스 LLM 과 서버 수준의 LLM 간에는 불가피한 성능 격차가 존재할 수밖에 없게 된다

*입력이 목표 작업 범위를 벗어날 경우* 디바이스 내 LLM의 성능 저하는 더 심해진다

→ 디바이스-서버 하이브리드 추론 전략 고안

디바이스 내 LLM 출력의 신뢰도가 낮은 경우, 해당 출력은 서버의 대형 모델이 생성한 결과로 대체

→ 서버 LLM의 빈번한 사용을 줄이기 위해, 디바이스 내부 LLM의 출력 신뢰도 판단하는 로직을 개발

 

 

 

3. Methodology

(1) Overall Framework (Crayon의 전체 구조)

 

[구성요소]

Dtr 다양한 작업들로 구성된 학습데이터
Φ₀ 커스터마이징 이전의 초기 가중치 
M_Φ₀ 초기 가중치를 가지는 기준 LLM 
서버에서 기본 LoRA 학습
→ 서로 다른 특성과 지식을 갖도록 공동 학습
→ 각 LoRA 에 할당되는 지시자 (indicator) 도 함께 학습

LoRA들은 LoRA pool 로서 서버에 저장됨
c_n LoRA n에 할당되는 지시자 indicator

indicator 들은 디바이스에 저장됨

 

이후 소규모 맞춤형 데이터셋 Dc 가 사용자로부터 주어지면,

디바이스 상에서 indicator 들과 Dc 간의 유사도를 계산하여 LoRA pool 과 Dc의 관계를 파악

 

유사도는 서버로 전송되며, 커스터마이징된 LoRA 를 구성하기 위한 기본 LoRA 들의 가중치를 결정하는데 활용

이 맞춤형 LoRA 는 최종적으로 사용자 디바이스에 배포

 

Dc 자체가 서버로 전송되지 않고 indicator 들과의 유사도만 업로드 됨

→ 개인정보 친화적 !

 

 

(2) Crayon : LoRA Pool Construction (LoRA pool 구축 과정)

[STEP 1 : indicator 설정]

Dtr의 모든 데이터 x에 대해 중간 임베딩은 다음의 식과 같이 얻게 된다

 

클러스터링 이전 PCA를 통한 임베딩 차원 축소 노이즈를 줄이고 주요 특징에 집중

Dtr의 텍스트에는 별도의 태스크 레이블이 없기 때문에 q_x 를 기반으로 비지도 k-mean 클러스터링 (k = N) 을 적용

k-means 로부터 나온 N개의 중심점 c_n을 각 base LoRA 에 할당하여 이를 indicator로 사용

 

→ 즉, 클러스터링을 통해 선별된 각 클러스터의 가장 대표성을 띄는 중간 임베딩을

 각 클러스터의 데이터로 학습될 LoRA의  indicator로 활용

 

[STEP 2 : Base LoRA 학습]

 

학습으로 활용될 입력데이터 x ∈ Dtr 에 대해 q_x 추출

그 후 q_x 와 각 base LoRA indicator 간의 코사인 유사도 계산

그런 다음 입력 x에 맞는 LoRA l_Θ 를 얻기 위해 각 base LoRA를 가중치로 하여 선형결합

코사인 유사도 기반의 가중치 업데이트 파라미터가 완성이 됨

즉, 각 입력 x에 대해 알맞은 LoRA 할당을 위해 코사인 거리를 가중치로 활용

→ 코사인 유사도가 높을 수록 높은 가중치 할당

→ 많은 N개의 LoRA 중 가장 유사한 task를 수행할 LoRA에 더 높은 가중치 할당

 

기존 LoRA의 방법대로 base LLM의 가중치는 고정하고 LoRA들만 학습

 

이를 기반으로 위와 같이 LLM을 업데이트

 

[요약]

입력 기준 LLM, LoRA들, 학습데이터 Dtr
1단계 중간 임베딩 추출
2단계 k-means 클러스터의 중심으로 indicator 생성
3단계 각 LoRA 와의 유사도 계산 (코사인 유사도) → 유사도와 결합된 LoRA θₓ 생성
4단계 θₓ 기반으로 base LoRA 가중치 학습
결과 다양한 지식을 내포한 base LoRA pool 완성

 

 

 

(3) Crayon: Generation of Customized LoRA (맞춤형 LoRA 생성)

 

사용자가 맞춤형 작업을 설명하는 사용자 데이터 Dc를 제공한다면

LoRA pool에서 즉시 맞춤형 LoRA를 생성해낼 수 있다는 것이 이 논문의 아이디어이다

 

이를 위해 먼저 Dc 내의 쿼리 임베딩을 평균을 내어

customized task를 대표하는 사용자 임베딩 qc를 디바이스에서 계산

 

그 다음 위 방정식을 다시 가지고 와서

qc와 base LoRA indicator cn 간의 코사인 유사도를 통해 조합 가중치 α_i_c 를 계산

 dc 자체는 서버에 보내지 않고 α_i_c 들만 업로드하므로 사용자 개인정보를 보호할 수 있음

서버에서는 base LoRA 가중치

 

 

입력 base LoRA들, indicator들, 기준 LLM, 사용자 맞춤 데이터 Dc
디바이스 1단계 Dc 에서 임베딩 추출
디바이스 2단계 평균 임베딩 qc 계산 ​→ 사용자 customized task 대표하는 값
디바이스 3단계 각 indicator 와의 코사인 유사도 ​ 계산
서버 단계 LoRA 풀의 A_i, B_i αic로 weighted sum → θ^ 생성
결과 customized LoRA 완성 후 디바이스에 배포

 

 

 

(4) Device-Server Hybrid Inference (디바이스-서버 하이브리드 추론)

 

사용자가 맞춤형 작업 범위를 벗어난 질문을 할 수 있음

또한 맞춤형 작업에 속하는 질문이더라도 온디바이스 모델은 크기가 작아 성능이 base 모델과 차이가 큼

계산 비용이 높은 서버 기반 대형 LLM (LLaMA-30B 채택) 을 간헐적으로 사용

 커스터마이징은 되어있지 않으나 일반적인 성능이 더 뛰어남

 

[STEP 1 : 서버 라우팅 판단]

 

입력 쿼리 x를 서버로 보낼지 결정할 때에는 서버 LLM 인 MΦs 를 직접 활용할 수 없음

대신 에 대해 서버 LLM의 출력을 미리 계산하여 프로토타입 집합 S 를 만듦

이 S는 customized LoRA θ^ 와 함께 서버에서 디바이스로 전송

 

 

[STEP 2 : 라우팅 점수 계산]

 

실제 출력과 S를 비교

디바이스 내에서 실제 출력과 와 S 간 코사인 유사도를 평균 내어 라우팅 점수 r_를 계산

 

 

[STEP 3 : 최종 라우팅 결정]

 

라우팅 임계값 r_th는 경험적으로 설정됩니다.

이면 x를 서버 LLM으로 라우팅하고, 그렇지 않으면 on-device 출력 결과를 그대로 사용


간단한 예시는 다음과 같다

위 전 과정을 더 쉽게 이해하기 위해

예시의 경우 GPT-4o 를 활용하여 생성하였음


 

4. Experiment

(1) On-device Customization Benchmark

 

벤치마크 데이터셋 선정 : QA 데이터셋과 작업일반화 검증 데이터셋 선정

 

세가지 벤치마크 QA 데이터셋 선택 (질의응답 QA 데이터셋 → LLM 평가에 널리 활용됨)

  • SIQA : 사람들의 행동 및 사회적 의미에 대한 추론 데이터셋
  • MedMCQA : 의학 입시 문제 데이터셋
  • Openbook QA : 사람의 주제 이해도 평가 오픈북 시험 데이터셋

작업 일반화를 검증하기 위해, MMLU 데이터셋 선정

→ STEM, 인문학, 사회과학 등을 포함하는 57개 과목을 다룬 데이터셋

→ 이를 57명의 각기 다른 사용자가 자신만의 맞춤형 작업을 수행한다고 가정하고 맞춤형 작업 구성

→ 이를 바탕으로 정확도 (Acc) 기준으로 맞춤화 결과를 정량적으로 평가 가능

→ 모든 사용자의 맞춤형 데이터셋 크기를 10으로 설정하였음

 

 

(2) Main Result