TL;DR
- 새로운 프로젝트의 코드에서 발견되는 이상한 조건문과 우회책이 왜 존재하는지 알려면 코드 자체뿐 아니라 변경 이력을 살펴야 하듯, AI 모델도 학습 과정을 알아야 내부 구조와 작동 방식을 이해할 수 있다는 주장임.
- 하버드 Kempner Institute의 연구자 Naomi Saphra는 완성된 모델을 분석하는 대신 확률적 경사 하강법(stochastic gradient descent)을 통한 학습 과정에 주목함.
- 학습 중 형성된 특정 뉴런이 이미지 분류에 필수적으로 보이더라도, 해당 뉴런이 생기지 않도록 하면 모델 성능이 향상되는 사례가 있어 겉보기 구조가 실제 역할을 보장하지 않음.
- 구조화된 텍스트에서 비격식 텍스트로 학습 순서를 바꾸면 모델이 일반 규칙 대신 예외를 외우고 회복하지 못할 수 있으며, 이는 소프트웨어의 초기 기술 부채와 닮은 양상임.
- 학습 실행 간 무작위 변동은 구조와 행동의 연관성을 시험하는 도구가 될 수 있지만, 기업이 중간 체크포인트를 거의 제공하지 않아 학습 과정 분석이 제한됨.
Saphra의 관점
- Naomi Saphra는 언어 모델 내부에서 무슨 일이 벌어지는지 밝히려는 분야인 해석 가능성(interpretability)을 연구함.
- 이 분야의 많은 연구는 학습이 끝난 모델을 살펴보고, 프랑스어 텍스트 전에 활성화되는 뉴런을 찾거나 관찰된 결과를 설명하는 방식임.
- Saphra는 완성된 모델보다 학습 과정 자체를 살펴봐야 한다고 봄.
- 신경과학보다 진화생물학을 비유로 들며, 유전학자 Dobzhansky의 유명한 말을 AI에 적용함. AI의 어떤 것도 확률적 경사 하강법의 관점에서 보지 않으면 이해할 수 없다는 주장임.
- 확률적 경사 하강법은 학습 중 모델의 연결을 반복적으로 조금씩 조정하는 알고리즘임.
- 모델이 어떤 과정을 거쳐 만들어졌는지 이해하지 못하면, 모델 안의 요소가 왜 작동하는지도 이해할 수 없다는 관점임.
20년간 소프트웨어 분야에서 이어진 생각
- 이 주장은 소프트웨어 저장소 마이닝(mining software repositories)의 핵심 전제와 맞닿아 있음. 코드베이스는 현재 상태만으로 이해할 수 없으며, 커밋 이력도 살펴야 함.
- 어떤 파일이 함께 바뀌는지, 어떤 모듈이 반복해서 수정되는지, 이상한 우회책이 언제 추가됐는지, 당시 무엇이 고장 났는지를 확인해야 함.
git blame은 결과물인 코드가 스스로를 설명하지 못하기 때문에 존재함.- AI 연구자가 인접 분야에서 이미 도구를 개발한 방법론적 관점에, 반대편에서 도달한 사례라는 점이 눈에 띔.
흔적으로 남은 구조
- Saphra의 대표 사례는 이미지 분류 모델의 뉴런임. 고양이 사진처럼 특정 범주에서만 강하게 활성화되는 뉴런은 중요하고 필수적인 작동 원리처럼 보임.
- 그러나 학습 중 해당 뉴런이 형성되지 않도록 개입하자 모델 성능이 향상됨.
- 필수적으로 보인 구조는 실제로 필수적이지 않았으며, 초기 학습의 흔적으로 남아 더는 제 역할을 하지 않을 뿐 아니라 모델을 제약하고 있었음. Saphra는 이를 진화생물학의 용어인 흔적 기관(vestigial)이라고 부름.
- 소프트웨어에서는 이를 죽은 코드(dead code)나 카고 컬트 코드(cargo cult code)라고 부를 수 있음. 코드를 작성한 사람이 떠난 뒤에도 테스트가 통과해 모두가 피해 다니는 코드 블록과 같은 양상임.
- 어떤 요소가 존재하고 의미 있어 보인다는 사실만으로 실제 기능을 수행한다고 볼 수 없음.
초기 결정은 되돌리기 어려움
- Saphra는 먼저 깔끔하고 구조화된 텍스트로 모델을 학습한 뒤, 더 복잡하고 비격식적인 텍스트로 전환하는 방식을 설명함. 쉬운 단계부터 시작해 어려운 단계로 넘어가는 합리적인 접근처럼 보임.
- 하지만 모델은 쉬운 해결책에 고착되고 일반 규칙을 배우는 대신 예외를 외우기 시작하며, 나중에는 이를 제대로 회복하지 못함.
- 소프트웨어 관점에서 이는 기술 부채에 대한 설명과 닮음. 문제가 단순해 보일 때 내린 작은 결정이 시스템의 향후 가능 범위를 조용히 결정하며, 이를 알아차릴 때쯤이면 구조가 굳어 있음.
두 가지 추가 관찰
- 많은 연구는 학습 실행 간 무작위 변동이 없는 것처럼 다루지만, 같은 설정으로 두 번 실행해도 서로 다른 모델이 만들어짐.
- 같은 구조와 행동이 여러 무작위 실행에서 함께 나타난다면, 단 하나의 완성된 모델을 보는 것보다 둘이 연결돼 있다는 근거가 강해짐. 무작위성은 잡음이 아니라 분석 도구가 될 수 있음.
- 기업은 연구자에게 학습 중간 체크포인트를 거의 제공하지 않음. 따라서 연구자는 최종 상태만 확보하는 경우가 많음.
- 중간 기록 없이 충돌 결과만 보고 원인을 찾으려는 디버깅과 같은 제약임.
여기서 얻는 생각
- 신경망에는 커밋 이력이 없음. 모델이 지금과 같은 모습이 된 이유를 기록한 사람도 없으며, Saphra와 같은 연구자는 얻을 수 있는 흔적을 바탕으로 과정을 재구성해야 함.
- 소프트웨어에는 날짜와 작성자, 메시지가 남은 이력이 있음. 다만 그 기록을 자주 읽지는 않음.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요