Skip to content
Published on

LoRA rank를 바꾸면 학습률도 바꿔야 하나 — μA(2026)가 가른 두 레짐, 그리고 그 측정의 한계

공유하기
Authors

들어가며 — rank를 올렸더니 학습률을 다시 찾아야 했다

LoRA를 실제로 굴려 본 사람이면 겪는 일이 있습니다. rank 16에서 잘 돌던 레시피를 rank 64로 올렸더니 손실이 튀거나 학습이 멈춥니다. 학습률을 다시 쓸어 봐야 합니다. 그런데 다른 팀 이야기를 들어 보면 정반대입니다 — "rank는 그냥 올려도 돼요, 학습률은 안 건드려도 됩니다."

둘 다 실제로 관찰된 현상입니다. 그리고 이 모순은 실무자가 대충 봐서 생긴 게 아닙니다. 2026년 2월 5일 arXiv에 올라온 Learning Rate Scaling across LoRA Ranks and Transfer to Full Finetuning(Nan Chen, Soledad Villar, Soufiane Hayou, arXiv:2602.06204)은 이 두 통념이 서로 다른 설정에 대한 참인 진술이라고 말합니다. 어느 쪽인지는 당신이 쓰는 α 규약과 초기화가 결정합니다.

이 글은 그 논문이 정확히 무엇을 유도했고, 실험이 무엇을 쟀고, 무엇을 못 쟀는지를 정리합니다. 결론부터 말하면 유용한 규칙이 나옵니다. 다만 그 근거는 시드 하나(42)에 2배 간격 격자이고, 저자들 자신이 한계를 명시해 두었습니다. 그 한계까지 같이 옮기는 게 이 글의 목적입니다.

문제의 정체 — α, 초기화, rank, 학습률은 서로 묶여 있다

논문의 표기부터 맞춥시다. LoRA는 얼어붙은 사전학습 가중치에 저랭크 항을 더합니다.

W  ←  W + α·B·A

  A ∈ R^(r×n)   (down-projection)
  B ∈ R^(n×r)   (up-projection)
  n = 모델 폭(width),  r = LoRA rank,  α = LoRA 배율(multiplier)

여기서 실무자가 만지는 손잡이는 넷입니다 — rank r, 배율 α, 학습률 η, 그리고 초기화. 어댑터가 처음에 no-op이 되도록 한쪽 인자는 0으로 두고 다른 쪽만 랜덤으로 채우는데, 논문은 이 두 선택을 이렇게 부릅니다.

  • Init[A] — A는 랜덤, B = 0. 원조 LoRA가 쓰는 방식이고, 대부분의 구현 기본값입니다.
  • Init[B] — B는 랜덤, A = 0. 뒤집은 쪽입니다.

배율 α도 하나가 아닙니다. 논문 2절 정리에 따르면 원조 LoRA(Hu 등, 2022)는 업데이트 크기를 눌러 두려고 α = r의 -1제곱을 쓰고, rsLoRA(Kalajdzievski, 2023)는 큰 rank에서의 안정성을 위해 α = r의 -1/2제곱을 제안했으며, 최근 연구들은 점점 α = 1을 씁니다.

여기서 실무자가 헷갈리는 지점이 나옵니다. Hugging Face PEFT는 α를 직접 받지 않습니다. PEFT v0.17.0 소스(논문이 실제로 쓴 버전)를 열어 보면 이렇게 되어 있습니다.

# peft/tuners/lora/layer.py — update_layer()
if use_rslora:
    self.scaling[adapter_name] = lora_alpha / math.sqrt(r)
else:
    self.scaling[adapter_name] = lora_alpha / r

use_rslora=False일 때 실효 배율은 lora_alpha / r입니다. 그래서 논문의 α로 환산하면 이렇게 됩니다.

lora_alpha = 32 (rank와 무관한 상수)  ->  실효 α = 32/r   ∝ r^(-1)
lora_alpha = r  (rank에 맞춰 같이 키움) ->  실효 α = 1      (상수)
lora_alpha = 2r                        ->  실효 α = 2      (상수)

튜토리얼에 흔한 lora_alpha=32 고정과, 요즘 자주 권장되는 "lora_alpha를 rank와 같이(혹은 2배로) 맞춰라"는 조언이 서로 다른 수학적 레짐이라는 뜻입니다. 논문 1절의 표현대로, LoRA 업데이트는 A와 B에 대해 쌍선형(bilinear)이라 초기화·α·rank·η가 서로 얽혀 실효 업데이트 크기를 함께 결정합니다. 그래서 하이퍼파라미터 튜닝이 깨지기 쉽습니다.

μA — 두 레짐이 갈리는 지점

논문은 폭과 rank가 동시에 무한대로 가는 극한(n, r → ∞)에서 LoRA의 한 스텝 특징 업데이트 크기를 계산합니다. 사전학습의 μP(Maximal-Update Parametrization)를 파인튜닝에 옮긴 것이라 이름이 μA(Maximal-Update Adaptation)입니다. 목표는 특징 업데이트가 발산하지도, 사라지지도 않는(Θ(1)) 학습률을 찾는 것입니다.

가정을 먼저 봐야 합니다. 논문 4절이 명시한 것은 셋입니다.

  1. 각 스텝에서 순전파 입력과 역전파 그래디언트가 Θ(1)로 유계 (가정 4.1)
  2. 옵티마이저를 모멘텀 없는 Adam = SignSGD로 근사 (가정 4.2). 실험은 실제로는 AdamW로 돌립니다.
  3. 손실은 단일 샘플 기준으로 계산 (Hayou 등, 2024b를 따름)

이 위에서 나온 결과가 두 개입니다.

Init[A] (따름정리 4.4). α = r의 -γ제곱, γ는 0과 1 사이라고 두면, 안정적 특징 학습에 필요한 학습률은

η = Θ( n^(-1/2) · r^(-(1-γ)/2) )

  γ=0   (α = 1)          ->  η ∝ n^(-1/2) · r^(-1/2)     rank 의존
  γ=1/2 (α = r^(-1/2))   ->  η ∝ n^(-1/2) · r^(-1/4)     약한 rank 의존
  γ=1   (α = r^(-1))     ->  η ∝ n^(-1/2)                rank 무관

논문의 해석을 그대로 옮기면, α = 1일 때는 rank를 4배 키우면 학습률을 절반으로 줄여야 하고, α = r의 -1제곱일 때는 rank 의존이 배율에 흡수되어 학습률이 rank에 무관해집니다.

Init[B], α = 1 (따름정리 4.6).

η = Θ( n^(-1) )      rank 무관, 폭에만 의존

여기서 논문의 핵심 관찰이 나옵니다. 같은 SignSGD 근사 아래에서 선형 층의 풀 파인튜닝(FFT)도 η ∝ n^(-1) 이라는 것입니다(부록 A.6, 정리 A.23). 폭 스케일링이 일치한다 — 이게 LoRA와 FFT 사이 학습률 전이의 필요조건입니다.

한 가지 덜 알려진 부산물도 있습니다. Init[A]에서는 rank가 커질수록 A의 기여분이 사라지고 학습이 사실상 B를 통해서만 일어납니다. 논문 표현으로는 어댑터가 점점 "A를 초기값에 고정한 랜덤 사영"처럼 행동하며, 이 불균형은 Init[A]의 모든 표준 α 선택에서 사라지지 않습니다. Init[B]에서는 정반대로, r이 n보다 훨씬 작으면 B의 업데이트가 무시할 만해지고 학습이 주로 A를 통해 일어납니다.

왜 "학습률 10배" 민담이 계속 살아남았나

이제 앞의 모순이 풀립니다.

작년 9월 29일 Thinking Machines의 LoRA Without Regret(John Schulman 등)은 이렇게 적었습니다 — 자기들은 W' = W + (α/r)BA에 α = 32를 고정해서 썼고, "1/r 스케일링 인자가 최적 학습률을 rank에 대략 무관하게 만든다"고요. 학습 초반에는 rank가 달라도 학습 곡선이 정확히 같아서, 처음엔 rank 인자가 무시되는 버그를 의심했다고까지 씁니다.

μA 좌표로 옮기면 Schulman의 설정은 실효 α = 32/r, 즉 γ=1입니다. 따름정리 4.4가 rank 무관을 예측하는 바로 그 칸입니다. 두 통념 중 "rank 무관" 쪽은 참입니다 — 고전적인 1/r 규약을 쓴다는 조건 아래에서. 그리고 lora_alpha를 rank에 맞춰 키우기 시작하는 순간 당신은 γ=0 칸으로 이동했고, 거기서는 rank를 4배 올릴 때 학습률을 절반으로 내려야 합니다. 같은 사람이 같은 라이브러리로 정반대 경험을 하는 이유가 이것입니다.

그런데 μA가 풀지 못한 게 하나 남습니다. Schulman이 보고한 유명한 규칙 — "LoRA의 최적 학습률은 같은 응용에서 FullFT의 10배"입니다. 그 근거는 이렇습니다. Tulu3 데이터셋 위에서 Llama와 Qwen 계열 14개 모델에 대해 LoRA와 FullFT 학습률을 각각 쓸었고, 최적 학습률을 hidden size와 모델 계열(Llama/Qwen)로 예측하는 함수를 적합했습니다. 그 최적화가 찾아낸 LoRA 배수는 9.8이었고, LoRA의 hidden size 의존 지수는 FullFT와 같았습니다(적합 결과 LoRA pow = 0). 짧은 런에서는 배수가 더 크다는 예비 관찰(~15배, 각주에 "일화적 근거이며 대략 100스텝 이하에서 유효")도 함께 적어 두었습니다.

이 규칙에 대해 Schulman 본인이 붙인 문장이 중요합니다 — "우리는 이 관찰에 대한 적절한 이론적 설명을 아직 갖고 있지 않다." 실제로 블로그의 미해결 질문 목록 2번이 "LoRA와 FullFT 학습률의 비율을 설명하는 더 완전한 이론"입니다.

μA는 그 질문에 답하지 않습니다. 논문 2절은 Schulman의 결과를 "휴리스틱 규칙(예: LoRA 학습률을 10으로 나눠 FFT 학습률을 얻기)"이라고만 언급하고 지나갑니다. 대신 μA가 하는 일은 우회입니다 — 비율을 설명하는 대신, 비율이 1이 되는 설정을 찾아냅니다.

우회 — LoRA에서 FFT로 학습률을 그대로 옮기기

Init[B] + α = 1이 그 설정입니다. 논문의 논리는 이렇습니다. 이 설정의 필요 학습률은 η ∝ n^(-1), 선형 층 FFT의 필요 학습률도 η ∝ n^(-1). 폭 스케일링이 같으니 최적 학습률이 정렬될 수 있고, 그렇다면 LoRA에서 튜닝한 학습률을 FFT에 그대로 쓸 수 있습니다.

실험은 이 예측을 대체로 지지합니다. 논문 5.2절의 표현을 그대로 옮기면 — 대부분의 모델에서 Init[B] (α=1)의 최적 학습률이 FFT의 최적 학습률과 근접하게 정렬됩니다. 예외는 RoBERTa-large로, FFT가 Init[B]보다 약간 작은 학습률을 선호했습니다. 논문은 이를 추가된 분류 헤드 탓으로 돌립니다 — 헤드의 학습률은 10의 -3제곱으로 고정했지만, 어댑터와 함께 학습되면서 최적점을 흔들 수 있다는 것입니다.

저자들이 제안하는 실무 워크플로가 여기서 나옵니다. GRPO로 Llama-3.1-8B를 GSM8k에 맞춘 RLVR 실험에서 FFT는 LoRA(r=256)보다 GPU 메모리를 2배 넘게 썼고, 그 초과분 대부분이 그래디언트 버퍼와 옵티마이저 상태였습니다(같은 실험에서 스텝당 벽시계 시간은 둘이 비슷했습니다). 그러니 상대적으로 구하기 쉬운 중급 GPU에서 Init[B] (α=1)로 학습률을 쓸고, 그 값을 큰 하드웨어의 FFT로 옮기면 재튜닝 비용을 아낀다 — 이게 논문이 파는 물건입니다.

여기서 두 가지를 정직하게 짚어야 합니다.

첫째, 논문 6절 한계가 못 박습니다 — 이 분석은 학습률 전이의 필요조건을 세운 것이고, 충분조건을 찾아 증명하는 것은 향후 과제입니다. 폭 스케일링이 같다는 건 "정렬될 수 있다"이지 "정렬된다"가 아닙니다. 실험이 정렬을 보여 주지만, 실험은 실험입니다.

둘째, Init[B]는 PEFT의 기본값이 아닙니다. v0.17.0 소스의 reset_lora_parameters를 보면 기본 경로(init_lora_weights=True)는 lora_A에 kaiming_uniform_, lora_B에 zeros_를 넣습니다 — 즉 Init[A]입니다. 게다가 논문은 0이 아닌 쪽 인자에 Kaiming normal을 써서 Init[A]는 A 성분 분산 1/n, Init[B]는 B 성분 분산 1/r을 맞췄다고 밝힙니다. PEFT 기본은 Kaiming uniform입니다. 정리하면, 이 논문의 설정을 재현하려면 LoraConfig 플래그 몇 개로는 안 되고 초기화 코드를 직접 건드려야 합니다.

실험이 실제로 잰 것, 그리고 안 잰 것

이 부분이 이 글에서 제일 중요합니다.

무엇을 돌렸나. 다섯 개 SFT 설정 — Llama-3.2-1B / Tulu-3 SFT 혼합(학습 320k, 검증 32k, 최대 1024토큰), Qwen2.5-3B-Instruct / OpenThoughts-114k(71k / 6k, 8192토큰 패킹), RoBERTa-large / ANLI(163k / 3k), ViT-Huge/14 / ImageNet-1K(1.28M / 50k), Qwen3-VL-2B-Instruct / LLaVA-Instruct-Mix(198k / 17k). 여기에 RLVR로 Llama-3.1-8B / GSM8k(GRPO의 DAPO 변형), 그리고 확산 모델로 Stable Diffusion v1.5 / Naruto-BLIP-Captions(1.2k쌍, 10,000스텝). 하드웨어는 H200 4장 노드. 언어·비전·비전언어·이미지 생성·강화학습을 모두 훑는다는 점에서 커버리지는 확실히 넓습니다.

그런데 통계는 이렇습니다.

  • 논문 부록 B.1: "랜덤 시드는 모든 실험에서 42로 설정한다." 시드는 하나입니다. 신뢰구간도, 오차 막대도, 시드 간 분산도 보고되지 않습니다.
  • 학습률 격자는 log2 스케일에 정수 지수만, 즉 인접점이 2배 차이입니다. 보고된 "최적점"은 이 이산 격자 위의 최선값입니다.
  • rank는 설정당 5개뿐입니다. Init[A]는 4, 16, 64, 256, 1024. Init[B]는 SFT에서 16, 32, 64, 128, 256. RLVR과 확산 모델의 Init[A]는 1, 4, 16, 64, 256.
  • RLVR 학습은 GSM8k에서 문제 500개(테스트 50개)를 뽑아 씁니다.

논문 5.1절이 이 한계를 스스로 적어 둡니다. 스케일링 규칙은 (n, r) → ∞의 선행항 의존성이고, 유한한 폭과 rank에서는 상수항과 저차항이 최적점을 밀 수 있으며 그 영향은 작은 rank에서 더 큽니다. 그리고 "손실 지형이 최적점 근처에서 평평하면 인접 격자점의 성능이 비슷해서, 어느 쪽이 최선으로 보이는지를 학습 노이즈가 결정할 수 있다." 그래서 저자들은 정확한 수치 일치가 아니라 정성적 경향으로 평가한다고 선언합니다 — rank 무관이 예측되는 설정은 최적점들이 격자 한 칸(2배) 안에 모이면 합격, rank 의존 설정은 최적점이 rank에 따라 단조롭게 움직이고 여러 격자점에 걸치면 합격.

즉 이 논문의 "rank 무관"은 "시드 하나에서, 2배 간격 격자의 한 칸 안"이라는 뜻입니다. 유용한 주장이지만, 정밀한 주장은 아닙니다. 그리고 논문은 이걸 숨기지 않습니다 — 숨기지 않는 게 이 논문의 미덕입니다.

논문이 스스로 보고한 어긋남도 있습니다. Qwen2.5-3B-Instruct의 Init[A] (α=1)에서 r=16과 r=64가 같은 학습률에서 최소 손실을 냈습니다(예측은 서로 달라야 함). 논문은 격자 이산화 탓으로 돌립니다. 그리고 Init[A] (α=r의 -1제곱)에서는 작은 rank(r=4)가 큰 rank보다 약간 작은 학습률을 선호했는데, 이건 α=1에서 관찰된 경향과 반대 방향입니다. 논문은 유한 크기 효과로 설명합니다. 두 경우 모두 설명이 사후적이라는 점은 짚어 둘 만합니다.

그리고 이 논문이 재지 않은 것. 이건 "LoRA가 FFT만큼 잘한다"는 논문이 아닙니다. 재는 대상은 최적 학습률이 어디에 놓이는지이지, LoRA가 FFT의 최종 손실에 도달하는지가 아닙니다. 학습률 스윕의 U자 곡선에서 바닥의 위치를 다루지, 바닥의 깊이를 주장하지 않습니다. RLVR 부록 D.1에서 "rank가 달라도 최고 성능이 비슷하다"고 관찰하며 Schulman과 일치한다고 적은 대목 정도가 예외인데, 이건 부수 관찰이지 이 논문의 주장이 아닙니다. LoRA가 언제 FFT에 못 미치는지는 여전히 LoRA Learns Less and Forgets Less(Biderman 등, TMLR 2024) 같은 별도 근거를 봐야 합니다 — 그쪽은 프로그래밍과 수학 도메인에서 표준 저랭크 설정의 LoRA가 풀 파인튜닝에 상당히 못 미치되, 대상 도메인 밖 성능은 더 잘 지킨다고 보고합니다.

또 하나. 디코더 전용 LM에서 LoRA를 MLP에만(gate_proj, up_proj, down_proj) 붙였습니다. 이건 결함이라기보다 현재 최선 관행과 맞습니다 — Schulman의 블로그는 어텐션 전용 LoRA가 MLP 전용보다 확연히 못하고 MLP 위에 어텐션을 더해도 이득이 없다고 보고했고, Biderman 등도 같은 결과를 얻었다고 적습니다. 다만 스케일링 규칙이 다른 배치 전략에서도 성립하는지는 이 실험이 답하지 않습니다.

폭 스케일링에서 두 결과가 갈린다

여기는 제가 두 출처를 나란히 놓고 읽은 결과이고, 어느 논문도 상대를 이 지점에서 다루지 않는다는 걸 먼저 밝혀 둡니다.

Schulman의 설정은 μA 좌표로 Init[A], α ∝ r의 -1제곱입니다. μA의 표 1은 그 칸에서 η ∝ n^(-1/2)를 줍니다. 그리고 μA의 정리 A.23은 FFT가 η ∝ n^(-1)이라고 합니다. 두 개를 나누면 LoRA/FFT 학습률 비율이 n의 1/2제곱에 비례한다는 예측이 나옵니다 — 즉 모델이 넓어질수록 비율이 커져야 합니다.

그런데 Schulman의 적합 결과는 정반대입니다. 14개 모델에 대해 최적화가 찾은 값은 LoRA pow = 0, 즉 LoRA의 hidden size 의존이 FullFT와 동일하고 배수는 9.8로 고정입니다.

이 둘은 그대로는 맞지 않습니다. 다만 성급하게 "한쪽이 틀렸다"고 말하면 안 되는 이유가 있습니다.

  • μA의 이론은 점근적입니다. 논문 6절 한계가 "우리 이론은 점근적이고 유한한 (n, r)에서는 노이즈에 민감할 수 있다"고 직접 적어 둡니다.
  • 산수를 해 보면 n의 1/2제곱은 hidden size가 4배 벌어져야 비율이 2배 변합니다. 2배는 log2 격자에서 정확히 한 칸입니다. 즉 이 예측된 차이는 두 연구 어느 쪽의 측정 해상도로도 잡히지 않는 크기일 수 있습니다.
  • Schulman의 적합은 Llama/Qwen 계열마다 별도의 지수를 따로 두었으므로, 순수한 폭 스케일링 검정이라고 보기도 어렵습니다.

정직한 결론은 이겁니다 — 이 불일치를 정리한 숫자는 아직 발표되지 않았습니다. μA는 10배 규칙을 설명하지 않고, Schulman의 적합은 μA의 폭 지수를 검정하도록 설계되지 않았습니다. 누가 두 좌표계를 맞춰 놓고 넓은 hidden size 범위를 여러 시드로 쓸어야 답이 나옵니다. 그 실험은 제가 아는 한 없습니다.

그래서 실무에서 뭘 해야 하나

1. α 규약부터 확인하세요. 이게 이 글에서 가장 값싸고 가장 확실한 이득입니다.

lora_alpha 고정(32 등) + use_rslora=False   ->  실효 α ∝ r^(-1)
   => rank를 바꿔도 학습률 유지. (Schulman이 본 그림)

lora_alpha = r 또는 2r                       ->  실효 α = 상수
   => μA 예측: rank 4배마다 학습률 절반.

논문은 α가 2일 때와 4일 때도 같은 스케일링이 유지되는지 부록 C.1에서 확인했습니다. 즉 "lora_alpha를 rank에 맞춰 키워라"는 조언을 따르는 순간, 함께 따라와야 하는 학습률 규칙이 있는데 그 조언에는 대개 빠져 있습니다.

2. FFT 학습률을 싸게 찾고 싶다면 Init[B] + α=1이 후보입니다. 다만 (a) 필요조건일 뿐이고, (b) PEFT 기본값이 아니라 초기화 코드를 직접 써야 하고, (c) 근거는 시드 하나입니다. 분류 헤드가 붙는 모델에서는 논문 스스로 어긋남을 보고했습니다. 시작점으로 쓰되 검증은 하십시오.

3. RL에서는 학습률 실수가 두 번 비쌉니다. 논문 5.3절이 관찰한 게 이겁니다 — SFT에서는 학습률이 너무 작으면 그냥 수렴이 느려지지만, RLVR에서는 너무 크든 너무 작든 학습 보상이 크게 망가집니다. 게다가 벽시계 시간까지 물립니다. 부록 D.2의 사례 연구를 보면, 최적 학습률(2의 -18제곱)에서는 모델이 초기 탐색 구간(완성 길이가 상한 1024토큰에 붙음)을 100스텝쯤에 빠져나와 200토큰 안팎의 간결한 풀이로 넘어가고 스텝당 45초가 걸립니다. 반면 준최적 학습률(2의 -16제곱)에서는 탐색 구간에 갇혀 계속 최대 길이를 뽑아내며 스텝당 1522초 — 3~5배입니다. 보상은 0 근처로 붕괴합니다. 저자들은 반대 방향 실패도 하나 적어 뒀습니다: Init[B], α=1에 더 높은 학습률(2의 -15제곱)을 주면 모델이 2토큰쯤 만들고 생성을 멈춰 버려서 역시 스텝이 빨라집니다. 스텝이 빨라졌다고 좋아할 일이 아니라는 뜻입니다.

언제 이게 필요 없나. rank를 바꿀 일이 없고 지금 레시피가 돌고 있다면 이 논문은 당신에게 아무것도 주지 않습니다. 모델과 태스크가 하나로 고정돼 있다면, n, r → ∞의 점근 규칙보다 이미 돌려 놓은 스윕이 낫습니다. 그리고 규칙들은 전부 Θ(·)입니다 — 지수를 알려 줄 뿐 상수는 알려 주지 않습니다. 어느 경우든 기준점을 잡는 스윕 한 번은 여전히 당신 몫입니다. μA가 줄여 주는 건 그 스윕을 몇 번 반복하느냐이지, 스윕 자체가 아닙니다.

마치며

정리하면 이렇습니다. "LoRA rank를 바꾸면 학습률을 다시 찾아야 하나"에 대한 2026년 2월 시점의 답은 "당신의 α 규약에 달렸다"입니다. 고전적인 1/r 규약이면 안 바꿔도 되고, lora_alpha를 rank에 맞춰 키우는 요즘 방식이면 rank 4배마다 절반으로 내려야 합니다. 그리고 Init[B] + α = 1이라는 덜 쓰이는 설정에서는 최적 학습률이 풀 파인튜닝과 같은 폭 스케일링을 가져서, LoRA에서 튜닝한 값을 FFT로 옮기는 게 원리적으로 가능합니다.

동시에 이 근거의 크기도 정확히 알아야 합니다. 시드 42 하나, 2배 간격 격자, 설정당 rank 5개, 점근 이론, 그리고 저자들이 명시한 "필요조건일 뿐"이라는 단서. 저자들은 정확한 수치 일치가 아니라 정성적 경향으로 평가한다고 스스로 선언했고, 그 기준을 통과했습니다. 그 이상을 이 논문에서 읽어 내면 안 됩니다.

그리고 아직 아무도 모르는 게 하나 남아 있습니다. Schulman이 관찰한 "LoRA 학습률은 FullFT의 10배"는 여전히 설명되지 않았습니다. μA는 그 비율을 설명하는 대신 비율이 1이 되는 좌표계로 옮겨 갔습니다. 실용적으로는 충분히 영리한 우회지만, Schulman의 미해결 질문은 그대로 열려 있습니다. LoRA는 2021년부터 우리가 매일 쓰는 도구인데, 그 학습률이 왜 그 값이어야 하는지는 2026년 중반에도 아직 완전히 설명되지 않았습니다.

참고 자료