인공지능 미드저니가 만든 ‘AI 기반 저널리스트’ 이미지.ⓒ미드저니 생성 이미지
인공지능 미드저니가 만든 ‘AI 기반 저널리스트’ 이미지.ⓒ미드저니 생성 이미지

머신러닝(Machine Learning)은, 이미 20세기 중반에 출현한 인공지능의 역사에 굵직한 획을 그은 혁신이다. 이로써 인공지능이 인간의 ‘식별’ 기능을 모방하고 나아가 새로운 텍스트와 이미지를 ‘생성’할 수 있게 되었다. 지난 몇 년 동안 시사상식 용어처럼 사용되고 있는 딥러닝(Deep Learning) 역시 머신러닝의 일종이다. 딥러닝으로 알려진 몇 가지 기법을 도입하면서 머신러닝은 이전에 서툴렀던 일들(이미지나 음성인식, 자연어 처리 등)을 능숙하게 수행할 수 있게 되었다. 그 성과 중 하나가 LLM(Large Language Model·초거대 언어 모델)이고, 이를 ‘대화’에 적용한 응용 프로그램이 챗지피티(ChatGPT)다. 그러므로 머신러닝의 원리만 이해해도 챗지피티가 어떻게 작동하는지 어림짐작할 수 있다.

간편한 설명을 위해 지극히 단순화된 비유를 들기로 한다. 일단 아파트 가격이 주로 면적에 따라 결정되는 지역이 있다고 가정하자. 이 동네에서 영업하는 부동산업자는 집주인과 수요자 사이에 ‘적절한 가격’을 제시해 거래를 성사시키고 싶다. 그러나 어느 정도가 적절한 가격인지 모른다. 다행히 해당 시점에 다양한 평수의 집들이 각각의 가격으로 거래되고 있어서 그 정보를 입수할 수 있었다. 부동산업자는 6쌍의 ‘실제 데이터(평수와 매매가)’를 근거로 아파트 가격을 예측하려 한다. 표로 정리하니 다음과 같았다(〈그림 1〉).

일단 x축(평수)과 y축(가격)으로 나뉜 좌표평면에 실제 데이터를 표시해본다. 대체로 면적이 클수록 가격도 올라가는 경향이 있다는 것을 쉽게 알 수 있다(〈그림 2〉).

사실 이런 경우엔, 평수(x)별로 가격(y)이 ‘대충’ 어떻게 예측되는지 알 수 있는 단순한 ‘공식(=규칙)’이 있다. 일단 ‘y=wx+b’ 따위의 방정식을 설정하는데, 우리는 이미 x와 y의 수치들(여기서는 평수와 집값)은 알고 있다. 그러므로 w값과 b값만 계산하면 방정식을 완성시킬 수 있다. 위의 평수(x)와 집값(y)의 수치들을 공식에 대입하면 다음과 같은 방정식이 나온다.

y=0.28x+2.57

그래프로 y=0.28x+2.57을 나타내면 다음과 같은 예측선(빨간 선)을 그릴 수 있다(〈그림 3〉).

이 방정식과 그래프는 일종의 예측 기계다. x에 40(평)을 대입하면 y는 13.77(0.28x40+2.57, 13억7700만원)이 나온다. ‘40평의 가격은 13억7700만원으로 예측된다’는 의미다. 실제로는 14억원에 거래되므로 상당히 정확한 편이다. 60평의 예측값은 19억3700만원으로 실제(18억원)보다 1억3700만원 높지만 차이가 아주 크다고 할 수는 없다. 위의 그림으로 확인할 수 있듯이 정해진 공식에 따라 만든 예측 기계(예측선)는 대충 실제와 비슷한 가격을 추정해낼 수 있다. 방정식에서 x(평수)는 ‘원인’이고 y(집값)는 ‘결과’다. 혹은 y의 ‘특성’이 x라고 표현할 수도 있다.여기서 주목해야 할 점이 있다. 우선, 당초 설정한 방정식인 ‘y=wx+b’와 완성된 방정식인 ‘y=0.28x+2.57’을 비교해보자. w 자리엔 0.28, b 자리엔 2.57이 들어갔다. 만약 w 자리에 0이 들어간다면, 40평 아파트의 예측 가격(y)은 2.57(0x40+2.57), 즉 2억5700만원으로 나타난다. 아파트의 평수는 0으로 곱해지는 바람에 가격에 영향을 전혀 미치지 못했다. w가 2라면 40평의 예측값은 무려 82억5700만원(2x40+2.57)이다. 여기서는 아파트의 평수가 가격에 지나치게 큰 영향을 미친다. 그런데 두 경우 모두 예측 결과가 실제와 너무 다르다.

그렇다면 방정식의 w가 의미하는 것은 무엇인가? ‘원인(여기서는 평수)’이 ‘결과(예측 집값)’에 미치는 영향의 정도다. 예측선에서는 ‘기울기(x가 1단위 많아질 때 y가 움직이는 정도)’로 나타난다. ‘가중치(weight)’라고도 부른다. ‘챗지피티는 매개변수가 천문학적으로 많은 초대형 모델이다’라고 이야기할 때 나오는 그 ‘매개변수’이기도 하다. w(가중치 혹은 매개변수)는 머신러닝의 원리를 이해하는 데 지극히 중요한 개념이므로 꼭 기억해두시기 바란다. 밑에서 설명하겠지만 머신러닝의 목표는 w를 조정해서 정확한 예측 기계를 만드는 것이기 때문이다. 추가로 b(y축의 절편이다)는 평수 이외 집값에 영향을 미칠 수 있는 다른 원인들(예컨대 지하철역, 쇼핑몰 등의 위치)로 ‘편향(bias)’이라고 부른다.

아무튼 공식으로 만든 예측 기계(y=0.28x+2.57)는, 완전히 정확하진 않지만, 그런대로 쓸 만하다. 예측치와 실젯값이 상당히 다른 경우도 있지만 어쩔 수 없다. 100% 정확한 예측은 어차피 불가능하다. 더욱이 주어진 환경(실제 데이터가 겨우 6쌍)을 감안하면, ‘최선의 예측선’이라고 할 수밖에 없다. 만약 실제 데이터가 수천~수만 쌍이고 다른 다양한 원인(지하철역, 쇼핑몰, 학군 등의 위치)들까지 방정식에 넣는다면 훨씬 정확한 예측선을 그을 수 있을 것이다.

‘공식’ 없어도 최선의 예측선을 그리는 머신러닝

이제 머신러닝 이야기로 넘어갈 수 있다. 지금까지 본 ‘최선의 예측선’은 실제 데이터들을 공식에 넣어 얻은 것이었다. 그러나 머신러닝을 활용하면 공식이 없다고 해도 최선의 예측선을 그릴 수 있다. 그 방법은, 시쳇말을 사용하자면, ‘무식하고 단순하다’.

그냥 좌표 위로 아무 선이나 긋는다. 이는 w(기울기)와 b(y축의 절편)를 아무렇게나 설정한다는 것과 똑같은 말이다. 그러나 이 또한 나름대로의 예측선이다. x축에 표시된 평수(10, 20, 40, 60, 80, 100)에서 위로 수직선을 그으면 ‘아무렇게나 그은 선’과 만나게 된다. 만나는 점의 y값이 예측값이다. 또한 〈그림 4〉에서 볼 수 있듯이 예측값과 실젯값 사이엔 차이(오차)가 있다(〈그림 4〉).

이제 생각을 조금 전환해보자. 〈그림 4〉의 모든 예측값엔 오차가 존재한다. 오차를 0으로 만들면 100% 정확한 예측 기계를 만들 수 있을 터이다. 그런데 불가능하다. ‘오차=0’은 6개의 실젯값을 모두 관통하는 선을 그어야 한다는 의미다. 〈그림 4〉에 자를 대고 그런 선을 그으려고 시도해보아도 좋다. 절대 불가능하다.

대안이 있다. 오차를 0으로 만들지는 못하지만 최소화할 수는 있다. 〈그림 4〉에서 6개 예측값의 오차(절대값 기준)를 모두 더한 뒤 평균을 낸다(평균오차). 이 평균오차가 예컨대 3이었다고 치자. 그렇다면 예측선을 다시 그은 뒤 평균오차를 계산해본다. 결과가 5라면 오차가 오히려 커진 것이다. 그렇다면 반대 방향으로 다시 선을 긋는다. 이번엔 평균오차가 2로 줄어든다. 방향을 잘 잡았다. 조금 더 그쪽으로 가본다. 컴퓨터는 머신러닝에서 이런 선긋기를 셀 수 없이 되풀이한다. 실제 데이터가 겨우 6쌍인 이 기사의 사례에서도 수천 회 반복할 수 있다. 이는 ‘y=wx+b’의 방정식에서 w와 b를 수천 회 수정한다는 것과 같은 의미다.

머신러닝의 계산은 언제 끝날까? 어떤 선(혹은 w와 b의 특정 수치)의 평균오차를 계산했는데, 그 이후엔 아무리 선긋기를 되풀이해도 평균오차가 더 이상 감소하지 않을 때다. 평균오차가 최소화된 것이다. 이 지점의 선이 ‘최선의 예측선’이다. 실제로 이 기사의 서두에 나오는 평수-집값 데이터를 머신러닝으로 돌려보면, 공식으로 계산한 것과 동일한 결과(y=0.28x+2.57)가 나온다. ‘w=0.28, b=2.57’이다. 머신러닝으로 수천 회나 선긋기를 되풀이한 것은 이 w값과 b값을 찾기 위함이었다.

이렇게 확정된 ‘규칙(y=0.28x+2.57)’을 (예측) 모델이라고 부른다. 부동산 중개업자는 실제 데이터가 없는 24평이나 44평도 이 모델에 넣어 각각의 가격을 9억2900만원과 14억8900만원으로 예측할 수 있다. 머신러닝은 공식이 아니라, 예측치와 현실의 실젯값을 비교한 뒤 가중치를 수정해나가는 작업을 끝없이 되풀이한 끝에 규칙을 익히게 되었다. 그래서 이 과정을 머신러닝(기계 학습)이라고 부른다. 인간의 학습 역시 현실에 끝없이 도전하면서 조금씩 자신의 생각을 고쳐나가다가 일종의 규칙을 만들어내는 것 아닌가.

지금까지가 머신러닝의 기본 구조다. 챗지피티가 기반한 LLM인 GPT3.5는 비교 불가능할 정도로 많은 데이터와 복잡한 연산, 방법론을 수행하지만 이 또한 머신러닝의 일종이다. 다만 이 기사의 사례에 나오는 매개변수(가중치)는 2개에 불과하나 GPT3.5의 그것은 1750억 개에 달한다.

기자명 이종태 기자 다른기사 보기 peeker@sisain.co.kr
저작권자 © 시사IN 무단전재 및 재배포 금지
이 기사를 공유합니다
관련 기사