Offcanvas

AI / 머신러닝|딥러닝 / 빅데이터 | 애널리틱스 / 오픈소스

칼럼 | '오픈소스' AI에 대해 다시 생각해야 할 때

2023.09.06 Matt Asay  |  InfoWorld
대규모 언어 모델의 라이선스 권한은 어디까지이며, 제한 사항은 무엇일까? 그 라이선스를 과연 가중치(weight)와 심층 신경망(DNN) 아키텍처에도 적용할 수 있을까?
 
ⓒ Getty Images Bank

대규모 언어 모델(LLM)에 대한 논의에서 라마2(Llama2) 같은 모델에는 ‘오픈소스’라는 용어가 자주 쓰인다. 하지만 ‘오픈소스’가 무엇을 의미하는지는 분명하지 않다. 레드몽크(RedMonk)의 스티브 오그레이디와 다른 이들이 논쟁을 벌였던 것처럼 메타(Meta)가 라마2의 라이선스를 설명할 때 ‘오픈소스’ 대신 ‘공유소스(Shared Source)’라는 용어를 써야 한다는 의미가 아니다. 훨씬 근본적인 논쟁이 있다. 말하자면 이렇다. LLM(과 기초 모델)이 기존 소프트웨어와 전혀 다른 방식으로 개발, 사용, 배포되는 세상에서 ‘오픈소스’는 과연 어떤 의미를 가질 수 있을까?

AI 기반의 엔터프라이즈 검색 엔진을 혁신하려는 스텔스 스타트업 아린(Aryn)의 설립자 겸 CEO 메훌 샤는 인터뷰에서 이 문제를 처음 언급했다. 아마존 오픈서치 서비스(AOSS)를 주도하기도 했던 샤는, AI와 오픈소스 모두에 기대를 걸었다. 둘이 함께 어울릴 수 있을까? 생각만큼 간단하지 않다. 실제로 소프트웨어가 클라우드로 이동하면서 오픈소스 정의(OSD)가 ‘배포(distribution)’ 같은 핵심 용어를 재고해야 했듯이, LLM이 다루는 부동소수점 숫자(floating-point numbers)에 오픈소스 정의를 대입할 때 발생하는 불일치의 문제도 해결해야 할 것이다. 

1과 0 그 이상
오픈소스와 AI에 대한 장문의 게시물에서 깃허브(GitHub)의 개발자 정책 책임자 마이크 링스베이어는 “오픈소스 AI에 대해 확실한 정의는 정립되지 않았다”라고 말했다. 그의 말이 맞다. 정립되지 않았을 뿐만 아니라 거의 논의되지도 않았다. 이제는 바뀌어야 한다. 

샤는 인터뷰에서 “AI 모델은 표면상 소프트웨어 프로그램일 뿐이지만, 개발, 사용, 배포 방식은 소프트웨어와 다르다”라고 강조했다. 이러한 불일치가 있는데도 불구하고 라마2와 같은 모델이 언급될 때 '오픈소스'라는 용어가 계속 따라붙는다. 어떤 의미일까?

누군가는 그저 오픈소스 정의에 따라 소프트웨어에 라이선스를 부여하거나 부여하지 않는 것을 바랄 수도 있다. 하지만 이러한 접근 방식은 요점을 놓친다. 요점은 부동소수점 숫자다. 혹은 가중치다. 아니면 오픈소스 라이선스와 관련해 전통적으로 생각해 온 방식으로는 소프트웨어일 수 없는 무언가다. 

우선 LLM의 이면을 살펴볼 필요가 있다. LLM은 모두 심층 신경망 모델이며 몇몇 차이점은 있으나 대부분 거의 같은 아키텍처를 사용한다. 이를 트랜스포머 아키텍처라 부른다. 이런 모델 안에는 뉴런, 뉴런 연결 방법에 대한 지침, 필요한 뉴런 레이어 수에 대한 사양이 있다. 모델에 따라 디코더 또는 인코더만 사용한다거나 레이어 수에서 차이가 있을 수 있으나 궁극적으로는 모두 유사한 구조다. 

주요 차이점은 뉴런을 연결하고 신호를 제어하는 수치, 즉 가중치(weight)에 있다. 가중치는 모델에 입력값을 제공할 시기, 활성화된 뉴런, 전파되는 방식을 알려준다. 확실하지는 않지만 많은 사람이 이런 가중치를 메타 같은 기업이 오픈소스화하고 있는 코드로 생각하는 것 같다.

그럴지도 모른다. 하지만 이제부터 상황이 복잡해진다.

샤는 “무료 및 오픈소스 정의에 명시된 모든 항목을 검토해 보면, (가중치는) 어떤 항목에는 적용되고 어떤 항목에는 적용되지 않는다”라고 지적했다. 일단 가중치는 사용자가 직접 수정할 수 없다. 부동소수점 숫자를 직접 변경할 수 없다. 다른 곳에서 다시 컴파일해야 한다. 데이터세트(Datasette)의 개발자 사이먼 윌리슨은 “가중치 자체에 대한 라이선스가 있어야 가능한 한 제약이 적은 상태로 제품과 추가 모델을 구축할 수 있다”라고 주장했다. 이는 적어도 라이선스가 어디에 적용돼야 하는지 명확히 하긴 하지만, 가중치를 오픈소스화하는 것이 가능한가에 대한 샤의 보다 근본적인 질문을 해결해 주지는 못한다. 

어디에 라이선스를 적용해야 하는가?
샤는 LLM의 맥락에서 ‘코드’를 생각할 수 있는 몇 가지 다른 방법을 제시했다. 첫 번째는 엄선된 학습 데이터를 소프트웨어 프로그램의 소스코드처럼 생각하는 방법이다. 여기에서 시작하면 학습(경사 하강법)은 소스코드의 컴파일과 같고, 트랜스포머 모델 또는 LLM의 심층 신경망 아키텍처는 컴파일된 프로그램이 실행되는 가상 또는 물리적 하드웨어와 같다. 여기에서 가중치는 컴파일된 프로그램과 같다.

이는 타당해 보이지만 또 다시 중요한 문제가 남는다. 첫째, 엄선된 데이터는 다른 사람이 소유하고 있는 경우가 많다. 둘째, 현재 가중치에 라이선스가 부여되더라도, 가중치가 부동소수점 숫자에 불과하기 때문에 제대로 작동하지 않을 수 있다. 1과 0으로만 구성된 코드에 라이선스를 부여하는 것과 다를 바가 있을까? 아니면 라이선스가 아키텍처에 적용돼야 할까?

같은 아키텍처라도 가중치만 다르면 전혀 다른 AI 가 나올 수 있기 때문에 아마도 안 될 것이다. 그렇다면 가중치와 아키텍처 모두에 라이선스가 적용돼야 할까? 그럴 수도 있지만, 미세 조정 및 명령어 조정을 통해 소스코드에 액세스하지 않고도 프로그램 동작을 수정할 수 있다는 점이 문제가 된다. 그리고 현실적으로 개발자는 원본 가중치와 다른 결과물(델타)을 배포하는 경우가 많다. 델타에도 원본 모델과 같은 라이선스를 적용할 수 있을까? 혹은 완전히 다른 라이선스를 가질 수도 있을까?

무엇이 문제인지 알겠는가? 모두 해결 가능하지만 간단하지 않다. LLM이 오픈소스인지 아닌지를 판단하는 것처럼 말이다.

가중치의 맥락에서 오픈소스를 생각하는 더 나은 방법은 가중치를 소프트웨어의 소스코드로 생각하는 것이다. 아마도 이 방법이 윌리슨의 해석과 맞닿아 있는 듯 보인다. 현실에서는 소프트웨어의 컴파일이 여러 하드웨어(CPU 및 GPU)의 해석에 따라 달라진다. 가중치에 대한 라이선스에 신경망 아키텍처도 포함될 수 있을까? 미세 조정 후 모델의 차이점과 변종 문제는 어떻게 처리해야 할까?

또한 가중치만큼, 아니 그보다 더 중요할 수도 있는 학습 데이터는 어떻게 해야 할까? 적절한 데이터 세트를 선택하는 프로세스를 오픈소스화하는 것은 어떨까? 매우 중요한 문제이지만, 현재 오픈소스를 활용해 LLM을 설명하는 방법으로는 이를 상상하기 어렵다. 

이는 학계의 문제가 아니다. AI 도입률이 폭발적으로 증가하는 상황을 고려할 때, 개발자, 스타트업, 그리고 오픈소스 LLM을 사용할 수 있고 그 의미를 아는 모든 사람에게 중요한 문제다. 예를 들어 윌리슨은 라마2 같이 라이선스가 제공되는 LLM에 대한 자신의 권리를 더 잘 이해하고 싶다고 말한다. 그렇다면 제한 사항은 무엇일까? ‘경쟁 모델을 학습, 특히 미세 조정하는 데 도움이 되는 용도로 사용하는 것에 대한 제한’이 실제로 의미하는 바는 무엇일까? 윌리슨은 소프트웨어 개발을 발전시키기 위해 LLM을 도입하고 사용하는 측면에서 대부분의 사람들보다 앞서 있다. 그가 궁금해하는 문제에 대해서는 다른 사람들도 궁금해해야 할 필요가 있다. 

샤는 “우리는 데이터 프로그래밍 시대에 살고 있다”라고 단언했다. 하지만 이 시대가 영향력을 극대화하려면, 오픈소스가 무엇을 의미하는지를 먼저 파악해야 할 것이다. 

*Matt Asay는 몽고DB의 개발자 관계 업무를 담당하고 있다. 그러나 본 글은 몽고DB의 입장이 아니다. ciokr@idg.co.kr
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.