← 최신 논문
🤖 machine learning

Compressing What Matters: Neuron Importance Meets Data-Aware Low Rank Approximation for Language Model Compression

본 논문은 뉴런 중요도와 데이터 인지형 저계수 근사를 통합하고 동적 압축률 할당을 위한 효율적인 알고리즘을 도입하여, 특히 높은 압축률에서 최첨단 성능을 달성하는 새로운 언어 모델 압축 프레임워크를 제안한다.

원저자: Athanasios Ntovas, Alexandros Doumanoglou, Petros Drakoulis, Dimitris Zarpalas

게시일 2026-07-22
📖 5 분 읽기🧠 심층 분석

원저자: Athanasios Ntovas, Alexandros Doumanoglou, Petros Drakoulis, Dimitris Zarpalas

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

인공지능의 세계를 거대하고 똑똑한 로봇들이 책을 쓰는, 북적거리는 거대한 도서관이라고 상상해 보세요. 대규모 언어 모델(LLM)이라 불리는 이 로봇들은 인간의 말을 이해하고, 이야기를 쓰고, 문제를 해결하는 데 매우 뛰어납니다. 하지만 한 가지 문제가 있습니다. 이토록 똑똑해지기 위해서 로봇들은 주머니 속에 수십억 개의 아주 작은 메모지를 가지고 있는데, 이 때문에 몸이 엄청나게 무겁습니다. 스마트폰이나 스마트워치 같은 작은 기기에서 이 무거운 로봇을 실행하려는 것은, 마치 도서관 전체를 배낭에 넣고 다니려는 것과 같습니다. 무게가 너무 많이 나가고 배터리도 순식간에 방전되어 버립니다. 과학자들은 이 로봇들이 배운 것을 잊어버리지 않게 하면서도 크기를 줄이는 방법을 찾아내기 위해 노력해 왔습니다.

이를 위해 연구자들은 "특이값 분해(Singular Value Decomposition, SVD)"라는 수학적 기술을 사용합니다. SVD는 거대하고 어지러운 메모 더미를 정리하여, 여전히 같은 이야기를 전달할 수 있는 깔끔하고 작은 더미로 만드는 방법이라고 생각하면 됩니다. 이는 500페이지짜리 소설을 모든 중요한 줄거리는 유지하면서 50페이지짜리 개요로 요약하는 것과 같습니다. 또 다른 아이디어는 "뉴런 중요도(neuron importance)"인데, 이는 "이 메모 더미 중에서 실제로 이야기에 중요한 것은 무엇이고, 어떤 것을 버려도 되는가?"라고 묻는 것과 같습니다. 마지막으로, 로봇의 각 부분을 어떻게 줄일 것인가의 문제가 있습니다. 모든 부분을 동일한 비율로 줄여야 할까요, 아니면 더 똑똑하게 덜 중요한 부분을 더 공격적으로 줄여야 할까요?

이 논문은 궁극의 사서가 되고자 하는 NIDA-SVD라는 새로운 방법을 소개합니다. 단순히 메모를 요약하거나 단순히 "중요하지 않은" 것들을 버리는 대신, 이 방법은 두 가지 아이디어를 영리하게 결합합니다. 연구진은 기존의 방식들을 단순히 섞는 것만으로는 잘 작동하지 않는다는 것을 발견했습니다. 대신, 로봇의 "뇌세포(뉴런)"가 이야기에 어떻게 반응하는지를 살펴봄으로써 모델을 훨씬 더 효과적으로 축소할 수 있었습니다. 또한, 모델의 깊이에 따라 레이어별로 로봇을 줄이는 것이 부품별로 그룹화하는 것보다 더 효과적이라는 사실을 발견했습니다. 이들은 BERT, DistilBERT, TinyBERT와 같은 모델로 테스트했을 때, 모델의 크기를 절반 이하로 줄였음에도 불구하고 지능을 거의 그대로 유지하며 이전 방식들보다 뛰어난 성능을 보였습니다.

무거운 배낭 문제

대규모 언어 모델은 현대 AI의 주인공으로, 우리와 대화하고 세상을 이해할 수 있습니다. 하지만 이토록 똑똑해지기 위해 이들은 수십억 개의 파라미터(매개변수)로 구축됩니다. 이 파라미터들을 거대한 벽을 쌓는 데 쓰이는 개별 벽돌이라고 생각해 보세요. 문제는 이 벽이 너무 무거워서 휴대폰이나 노트북 같은 작은 기기에 들어갈 수 없다는 점입니다. 과학자들은 모델의 지능을 잃지 않으면서도 더 작고 빠르게 만들기 위해 이 모델들을 압축하고자 합니다.

오래된 도구들: 요약하기와 분류하기

모델을 축소하기 위해 연구자들은 두 가지 주요 도구를 사용해 왔습니다. 첫 번째는 초효율적인 요약가 역할을 하는 수학적 방법인 SVD입니다. SVD는 거대한 행렬(숫자의 격자)을 가져와서 가장 중요한 정보는 유지하면서 나머지는 버리는 더 작은 버전으로 분해합니다. 두 번째 도구인 뉴런 중요도는 격자 안의 특정 숫자들이 쇼의 "주연"인지 파악하려고 시도합니다. 만약 어떤 숫자가 최종 결과에 별로 기여하지 않는다면, 그것은 제거 대상이 됩니다.

이전에 과학자들은 이 도구들을 각각 따로 사용했습니다. 어떤 이들은 모델이 데이터를 어떻게 "보는지"에 따라 데이터를 요약하는 데 집중했고(데이터 인식), 다른 이들은 각 특정 숫자가 최종 결과에 얼마나 중요한지에 집중했습니다(파라미터 중요도). 그러나 이 논문의 저자들은 이 두 가지 오래된 방법을 단순히 섞는 것만으로는 잘 작동하지 않으며, 오히려 모델을 더 멍청하게 만든다는 점을 주목했습니다.

새로운 해결책: NIDA-SVD

저자들은 NIDA-SVD(Neuron Importance Driven Data-Aware SVD)라고 불리는 새로운 접근 방식을 제안합니다. 무엇을 남길지 결정하기 위해 개별 숫자를 보는 대신, 이들은 뉴런(숫자들의 기능적 집단)을 보고 다음과 같이 묻습니다. "이 뉴런의 출력값이 최종 작업에 얼마나 중요한가?"

당신이 영화를 편집한다고 상상해 보세요. 예전 방식은 모든 프레임을 하나하나 보며 중요한지 결정하는 것이었습니다. 새로운 방식은 장면을 보고 "이 장면이 줄거리를 전개시키는가?"라고 묻는 것입니다. 만약 장면이 결정적이라면 상세하게 유지하고, 그저 채우기용이라면 축소하는 식입니다. 단순히 생짜 숫자(raw numbers)가 아니라 뉴런의 출력값에 대한 중요도에 집중함으로써, 이 새로운 방법은 크기가 급격히 줄어들어도 모델의 성능을 높게 유지합니다.

스마트한 축소: 동적 랭크 할당

논문은 또한 모델의 각 부분을 얼마나 줄일 것인지 결정하는 두 번째 문제도 다룹니다. 과거에는 종종 모든 부분을 동일한 양으로 줄이거나(균등 할당), 직업별로(예: 모든 "어텐션" 부분들을 함께) 그룹화했습니다. 저자들은 이것이 너무 경직되어 있다고 주장합니다.

그들은 모델의 서로 다른 레이어들이 서로 다른 요구 사항을 가지고 있다는 것을 발견했습니다. 어떤 레이어들은 건물의 기초와 같아서, 너무 많이 줄이면 건물 전체가 무너질 수 있습니다. 반면 어떤 레이어들은 벽에 칠하는 페인트와 같아서, 집을 망치지 않고도 더 단순화할 수 있습니다. 저자들은 모델을 레이어별로(깊이 인덱스에 따라) 살펴보고 각 레이어에 특정 "축소 제한"을 할당하는 동적 랭크 할당(dynamic rank allocation) 알고리즘을 개발했습니다. 이는 가장 민감한 레이어는 더 많은 공간을 확보하고, 덜 민감한 레이어는 더 꽉 짜내도록 보장합니다.

결과: 더 작고, 더 빠르고, 더 똑똑하게

연구진은 BERT, DistilBERT, MobileBERT, TinyBERT를 포함한 여러 유명 모델을 대상으로 이들의 방법을 테스트했습니다. 그들은 문장 이해 및 질문 답변과 같은 다양한 작업에 대해 NIDA-SVD를 기존의 최신 방식들(SVD-LLMv2 등)과 비교했습니다.

결과는 인상적이었습니다. 표준 BERT 모델에 대한 테스트의 **87.5%**에서 NIDA-SVD는 기존의 최첨단 방식들보다 더 나은 성능을 보였습니다. 높은 압축률(모델이 아주 많이 줄어들었을 때)에서는 그 차이가 더욱 극명했습니다. 예를 들어, 모델을 50% 압축했을 때(파라미터를 절반만 남겼을 때), NIDA-SVD는 특정 작업에서 기존 방식들에 비해 성능을 최대 **6.41%**까지 향상시켰습니다.

이미 매우 컴팩트한 TinyBERT와 같은 가장 작은 모델에서도 새로운 방법은 제 실력을 발휘했습니다. Tiny-BERT는 너무 작아서 더 줄이면 보통 실패하게 되지만, NIDA-SVD는 이를 **30%**만큼 압축하면서도(1,430만 개의 파라미터에서 1,000만 개로) 강력한 성능을 유지했습니다. 실제로 TinyBERT에 대한 테스트의 94%에서 이 새로운 방법이 우수했습니다.

비용 없는 효율성

이렇게 똑똑해지려면 추가적인 컴퓨팅 파워가 필요할까 봐 걱정될 수도 있습니다. 하지만 저자들은 그들의 방법이 다른 방법들만큼 빠르다는 것을 보여줍니다. 총 파라미터 수가 동일하기 때문에(압축률을 동일하게 맞추는 것이 목표이므로), 연산 비용(MFLOPS/token으로 측정됨)은 거의 동일합니다. "마법"은 더 많은 일을 하는 데 있는 것이 아니라, 일을 더 똑똑하게 분배하는 데 있습니다.

예를 들어, DistilBERT 모델의 경우, 50% 압축을 통해 연산 비용을 86 MFLOPS/token에서 약 19 MFLOPS/token으로 줄였습니다. TinyBERT의 경우, 30%의 크기 감소가 연산 비용의 90% 급감을 가져와서 1 MFLOP/token 미만으로 떨어뜨렸습니다.

결론

요약하자면, 이 논문은 AI 모델을 효과적으로 줄이기 위해서는 단순히 생짜 숫자를 보거나 모델의 모든 부분을 똑같이 취급해서는 안 된다는 것을 시사합니다. 대신, 어떤 "뇌세포"가 핵심적인 역할을 하는지 이해하고, 각 레이어가 감당할 수 있는 정도에 따라 레이어별로 모델을 줄여야 합니다. 저자들의 새로운 방법인 NIDA-SVD는 이러한 접근 방식이 우리가 배운 것을 잊지 않으면서도 이 거대한 똑똑한 로봇들을 더 작은 배낭에 담을 수 있게 해준다는 것을 증명하며, 일상적인 기기에서 강력한 AI를 사용할 수 있는 길을 열어줍니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →