비전문가도 이해할 수 있을 (거라 믿고싶은) 시리즈를 써볼까한다. 전문적인 글을 쓰려니 정리하는 데 수고가.. ㅡ.ㅡ
일단 기본부터.
AI가 대중들에게 일반화되며 많이 퍼졌는데, 정작 그 AI가 뭔지에 대한 오해들이 많은 것 같다. 대충의 개념은 그야 누구라도 안다. 하지만 미묘한 깊은 의미를 잘못 이해하면 전혀 다른 시각들이 나오기 마련이다. AI에 대한 과도한 의인화도 이런 문제라고 본다.
사전적 정의는 위키를 찾아보면 된다. 가장 객관적 정의다. 하지만 그걸로는, 나름 이 전선의 한복판에 있는 기술자의 시각을 담지 못한다. 하나의 언어에는 넓고 복잡한 맥락들이 있고, 그걸 무시하면 전혀 다르게 읽히는 경우는 허다하니까.
그렇다고 그 히스토리를 모든 사람들이 공부할 수는 없잖아.
그래서 다분히 주관적으로 재해석한 썰을 써본다.
AI, 머신러닝, 딥러닝, LLM에 대해 썰을 풀려고 한다.

AI (Artificial Intelligence, 인공지능)
인공 + 지능이다. 인 + 공 + 지능이다. 사람이 + 만든 + 지능이다. 그럼 지능은 대체 뭘까? 그걸 모르는 사람이 있나? 하지만 정작, 그게 뭔가를 디테일하게 들어가면 언어로 정의내릴 수 있는 사람은 드물다.
뒤집어 생각해보자. 기술자들은 뭐하려고 지능을 만들었을까. 그냥? 아니면 뭔가 신과 같은 기분으로? 아니, 그냥 일 시키려고다. 일을 하는 데 도움이 되는 기구가 있으면 좋겠어, 이왕이면 자동으로 움직여줬으면 좋겠어, 아예 걍 알아서 일 대신해줬으면 좋겠어 하는 생각의 연쇄로 나타난 게 인공지능이다.
거기에 지능을 붙인 건, 지능이 필요한 일을 시키고 싶었던 것이다. 지능이 필요한 일이란 단순 반복 작업이 아니라 상황에 대응할 필요성이 있을 때를 말한다. 즉 인공지능은 변화하는 상황에 대응할 수 있는 자동 장치를 말한다.
따라서 여기서 지능이란 생물이 가진 지능과는 근본적으로 다르다. 생물의 지능은 스스로의 목적성을 포함한다. 인공지능의 지능은 주어진 목적성에 종속된다.
아무튼 인공지능에 대해 사람들이 대단히 오해하는 것 중 하나가 있다. 그건, 인공지능의 지능이 대단한 무언가처럼 여긴다는 것. 그래서 사람들은 종종 논리적으로 사전 정의된 로직이나 확률적으로 랜덤하게 동작하는 건 인공지능이 아니라고 본다. 하지만 정작 모든 인공지능 기술은 저 둘의 조합이다.
예전에 게임 토론에서 몬스터들의 AI에 대해 이야기하는데, 차라리 랜덤 변수를 넣는게 어떠냐고 했다가 그건 AI가 아니라고 대차게 까였다... 하지만 대다수의 AI모델들은 구조만 좀 더 복잡할 뿐 결국 랜덤 생성기란 말이지... 난 억울하다... ㅡ.ㅡ
심지어 최신 LLM도 조금 복잡한 구조일 뿐 원리는 고유의 확률 모델에 따라 주사위를 굴리는 랜덤 생성기일 뿐이다. 확률 분포에 따라 그럴싸한 단어를 랜덤으로 뽑아줄 뿐이다. 그리고 실제로 생물 역시 경우에 따라 랜덤 전략을 많이 사용한다. 달성해야 할 목표와 수단이 명확하면 로직으로 돌아가고, 불명확한 부분이 있으면 랜덤으로 대응하는 건 모두 다 똑같다.
정리하면, 사람의 일을 대신해주는 인간이 만든 시스템, 특히 외부 환경이 변화할 수 있는 걸 대응해주는 건 모두 인공지능이다.
머신 러닝 (Machine Learning, 기계학습)
우선 '머신'이란 말에는 착각하기 쉬운 이미지가 있다. 그건 뭔가 움직임이 있는 기계장치를 떠올리기 쉽다는 것. 하지만 전자적으로 동작하는 것도 머신이다. 비슷하게 오해받는 걸로는 로봇이 있다. 로봇도 전자기기, 프로그램일 수 있다. 흔히 컴퓨터 속에서 자동으로 뭔가 하는 프로그램을 봇이라고 하듯이.
아무튼 머신러닝은 머신, 기계가 러닝, 학습한다는 의미다. 그래서 기계학습으로 번역된다. 학습을 하는 건 대개 물리적 기구가 아닌 전자기기다. 정보를 담을 수 있으니까. 물론 옛날에는 톱니바퀴로 돌아가는 컴퓨터도 있었다만...
여기서 학습이란 뭘까. 여기서도 지능처럼 너무 심오하게 생각하면 안된다. 학습이란, '안됐는데, 이제 됍니다'이다. 뭔가 데이터를 넣어 안되던게 되는 걸 말한다.
그리고 그 중 내가 아는 거의 모든 것이 바로 '확률분포를 계산하는 것'이다. 아까의 인공지능과 이어진다. 그냥 외부 상황을 무시하고 주사위를 돌리면 그건 인공지능이라 말하기 어려운 건 사실이다. 하지만 외부 상황에 따라 다른 주사위를 굴리면 인공지능이다. 그리고 어떤 상황에 어떤 주사위를 굴릴지를 정하는 과정이 바로 머신러닝, 기계학습이다.
즉, 상황에 맞는 주사위가 뭔지를 찾는 것이다.
때문에 AI 세계에서의 '학습'이란 '확률모델'의 평균이나 분산 등의 '파라미터를 찾는 것'으로 귀결된다. 이는 통계분석에서 통계치를 찾는 것과 정확히 일치한다. 단지 통계학에선 그걸 시스템을 분석하는 데 쓰고, AI분야에선 그걸 예측 판단하는 데 쓸 뿐이다. 그 미묘한 경계에 있는 게 바로 회귀 분석이다. 회귀분석이란,
f(x) = y
인 시스템이 있고 거기에 (x, y) 데이터가 잔뜩 주어졌을 때 그 데이터에 맞는 f를 찾는 분석 방법이다. 어느 시스템이 어떤 주어진 싱황에서 어떤 결과값을 내는지 찾아내는 것이다. 이를테면 구름 양이 비 오는 확률과 어떻게 연관되는지, 금리가 주가에 어떻게 연관되는지 같은 걸 분석하는 것이다.
분석하면 예측하게 되고, 예측하면 판단하게 된다. 판단하고 실행하면 그것은 AI다. 그리고 그걸 가능하게 해 주는 게,
머신 러닝이다.
즉, 머신러닝은 그냥 통계학이다... ㅡ.ㅡ
다만 이렇게만 말하면 오해가 생긴다. 전에 어떤 통계학 전공이신 분으로 추정되는 사람이 쓴 딥러닝 까는 글을 본 적이 있다. 구구절절히 맞는 말이었지만, 관점이 다르다. 통계학은 복잡한 세계로부터 사람이 이해할 수 있는 영역을 축소해 가져오는 일이고, 분석 지향적이다. 하지만 AI를 하는 전산쟁이는 그런 거 관심 없다. 그냥 현상적으로, 그 방법론이 문제를 해결할 수 있으면 그만이다.
그러기 위해 컴퓨터로 계산할 수 있는 한, 한도끝도 없이 크고 복잡한 모델을 가져온 게 AI 발전의 핵심이었다.
딥러닝 (Deep Learning)
딥러닝은 딥러닝이다. "깊은학습"이라고 안 한다.
누가 붙였는진 모르겠지만 대책없는 작명법이다. 그냥 그렇다. 이해할 필요도 없다. 그냥 존나 큰 모델을 학습시키는 걸 딥러닝이라 한다... 정도로도 충분하다.
하지만 굳이 설명하자면...
뉴럴 네트워크 (Neural Network, 신경망) 이란 확률 모델이 있다. 확률 모델이라지만 이쯤 되면 통계학에선 못 써먹을 모델이라 그냥 AI모델로 쳐도 무방하다. 이건 생물의 뉴런을 모사하여 만들어진 모델로, 매우 간단한 수식으로 돌아가는 작은 모델을 무진장 많이 모아 만드는 것이다.
복잡한 시스템을 간단한 수식으로 해석하려면 한계가 있다. 수식에 맞아 떨어지지 않는 부분이 어마어마하게 많을 것이다. 그걸, 간단한 수식 여러 개로 유사하게 모사해내는 게 신경망 구조의 원리다. 비유하자면, f(x) = y형태의 식의 원래 패턴이 예를 들어 2차 함수라면 곡선이라 1차 함수로는 어떻게 파라미터를 바꿔도 두 점에서만 만날 뿐 비슷한 패턴을 만들 수가 없다. 하지만 구간별로 작은 선분들을 모으면 2차 함수를 비슷하게 모사할 수는 있는 것이다.
단순하게 생각했을 때, 신경망은 그런 거다. 1차 함수 비스므레 한것들의 집합이다. 곡선을 곧은 선분을 잘라다 붙이는 수준의 모델이다. 근데 이걸 존나게 모으니까, 왠지 어마어마한 게 된 것이다.
사람을 모으면 한줄로 세울 수도 있지만, 그 줄을 여러 줄로 나열할 수도 있다. 오열을 맞추는 것이다. 해병대에선 죽을 때도 오열을 맞춰서 죽으라고 한다던데... (전쟁터에서 정말 그러면 부모님들이 오열할 뿐...)
문제는, 작은 함수를 한 줄로 늘어뜨려 놓으면 이건 그래도 계산이 쉬운데 오열을 맞춰놓으니 계산이 안 되는 문제가 있었다. 학습이 안 되는 것이다. 그런데 어느 시점에 획기적으로 그게 되었다.
https://namu.wiki/w/%EC%8B%AC%EC%B8%B5%ED%95%99%EC%8A%B5#s-5
심층학습
심층학습 (深層學習) 또는 딥 러닝 (deep learning)은 기계학습 의 하위 분류 중 하나로, 인공신경
namu.wiki
그리고 여기에서 '오'를 Depth(깊이)라고 했기에, 이전에는 학습할 수 없던 깊이를 학습하게 되었다 해서 딥러닝이다.
LLM (Large Language Model)
예전에 딥러닝이 나왔을 때, AI, 머신러닝, 딥러닝을 설명하는 것도 힘들었다. 하지만 요즘 AI하면 이꼴 챗GPT다. 더 힘들어졌다. 사실 이놈의 챗GPT는 LLM조차 아니다. 그거 설명하는 것도, 과제 착수때부터 중요한 이슈 중 하나다. 하지만 일단 LLM부터.
LLM이란 Large Language Model, 즉 "큰 언어 모델"이다. 분석해보자.
보통 "모델"이란 건 무언가를 추상화해서 만든 개념적인 틀 같은 거라고 생각하면 된다. 이 말도 추상적이지... 간단히 말하면 "프라모델"도 모델이다. 실제 기계장치나 구조물을 그대로 만드는 게 아니라, 그것의 특징들 (주로 외형)을 따와서 형태화, 간략화 시킨 것이다.
좀 더 학문적으로 들어가면 '확률 모델'이 있다. 정규분포니 뭐니 하는 것들이다. 그것은 실제 사회의 현상을 그대로 시뮬레이션 하지는 않지만 유사한 결과를 낸다. 왜냐하면 현실의 일부를 따오기 때문이다. 예를 들면, 사람들의 키는 정규분포를 따른다. 자연에서 뭐든지간에 횟수가 늘어나면 정규분포와 비슷한 분포로 수렴하는 경향성이 있기 때문이다. 그러므로, 전국의 랜덤한 사람들이 모두 순서대로 한 명씩 나오는 문에서, 사람이 나올 때마다 키를 잰다면, 그 결과는 정규분포를 따를 것이다. 하지만 전국의 모든 사람들이 나오는 문을 만들긴 어렵다. 하지만 정규분포로 값을 생성하는 확률모델을 만들기는 쉽다.
모델이란 건 그래서 쓰이는 것이다. 실제 현상은 어렵고 복잡하지만 여기에서 '패턴'을 발견해 그것을 가상으로 만들면 비슷한 동작을 할 수 있다. 그리고.
"언어 모델"이란 건, 그런 식으로 언어를 생성하는 모델이란 것이다. 그래서.
챗GPT가 마치 사람처럼 언어를 만들어내는 것이다. 그러라고 만든 모델이니까.
그리고 "큰 언어 모델"이라는 건, 그만큼 챗GPT같은 모델들의 크기가 어마어마하게 크다는 것이다.
f(x) = y라는 식을, 어떤 실제 문제에 맞춰 만든다고 쳐 보자. 가장 간단한 건 x와 y가 1차함수와 같이 연관성을 가지는 것이다. 그 경우 f는 ax+b = y 이런 식으로 정의될 수 있다. 변수가 2개다. 파라미터가 2인 모델이다.
흔히 말하는, 라마 모델이 405B라는 식의 표현은 뭘까? B라는 건 Billion, 즉 10억을 말한다. 405B라는 건 4050억 개를 말한다. 위와 같은 식에서의 파라미터가 4050억 개라는 것이다. 졸라게 많다. 그래서 크다고 하는 것이다.
어탠션이니 트랜스포머니 하는 이야기는 집어치우자. 그건 아무도 관심이 없다. 중요한 건 졸라 크다는 것. 그래서 매우 메모리가 크고 계산이 빠른 GPU가 필요하다는 것. 그리고.
이것이 실제로는 생각하고 말하는 게 아니라는 점이다.
언어의 추상화 능력은 놀라워서, 복잡한 개념들이 논리적으로 연결되어 스스로 구조화를 이룬다. 그래서 단순히 언어를 생성할 뿐인 LLM도 생각을 하고 추론을 하는 것 처럼 느껴진다. 사실 깊이 들어가면 어디까지가 생각이고 어디까지가 단순연산인지 구분할 수 없다. 하지만 쓰다보면 느낌적인 느낌으로 안다.
LLM은 생각하지 않는다.
LLM의 기본 원리는, 앞서 쓰여진 글 다음에 어떤 단어가 들어가야 자연스러울지 추정하는 것이다. 그것을 확률 모델로 추정한다. 다음 단어들이, 몇개 후보가 확률이 각각 몇 % 식으로 나온다. 그렇게 한 단어, 한 단어 씩 붙여나간다. 그것만으로 왠지 그럴싸한 글이 된다.
문제는 거기에 있다.
편향된 글을 많이 봤으면, 그 편향된 패턴을 자연스럽게 여긴다. 그래서 그렇게 글이 나온다. 욕설을 봤을면 욕설이 나온다. 그냥 본 데이터데로 줄줄이 샌다. 그래서 데이터의 중요성이 누누히 강조되는 것이다. 얘는 학습한 데이터의 유사 데이터 생성기일 뿐이다.
LLM이 말을 할 수 있기 까지, 최소 수백 GB의 텍스트를 본다. 사실, 지금 선두에 있는 모델들이 얼마나 많은 텍스트를 봤는지 알 수도 없다. 그리고 사람은 거기에 어떤 텍스트들이 있는지 검토하는 것 따윈 불가능하다. 그만큼 오지게 많으니까. 따라서 이놈의 LLM이 대체 무슨 말을 할지는 개발자조차 알 길이 없다. 가능한 한 멀쩡한 말을 하도록 이리저리 유도해 두지만, 이변이 일어나면 이녀석도 이상한 말을 하기 마련이다.
앞서 설명했듯이, AI, 그리고 머신러닝이란 상황에 맞춰 어떤 주사위를 쓸 지를 정하는 과정을 포함하고 있다. 정하는 기준은 데이터다. A라는 상황에서 a라는 선택을 한 기록이 있다면 거기에 맞춰진다. 그런데 문제는, LLM, 그리고 요즘의 대형 AI 모델들에 이르러서는 개발자조차 모델이 학습한 데이터 풀에 어떤 데이터가 있는지 모두 추적하는 게 불가능하다는 것이다. 그 정도로 데이터가 많다. 따라서, 매우 극히 희귀한 경우에 매우 바람직하지 못한 글이 이어지는 것을 본 LLM모델은, 같은 상황에서 매우 나쁜 결과를 내뱉겠지만, 그걸 사람이 찾아내는 건 지극히 힘든 일이다.
글로벌 빅테크들의 LLM 모델들이 종종 헛소리를 하는 이유다.
또 하나의 문제는, 그 데이터 중 어마어마한 양이 아마도 창작물, 음모론, 망상 등을 포함하고 있을 것이라는 점이다. 이는 LLM, 그리고 머신 러닝 모델의 다른 특징과 어우러져 '할루시네이션 (Hallucination, 환각)' 이란 현상을 불러일으킨다. 그 근원은.

회귀분석을 보면 알 수 있다.
회귀분석은 통계학에서 데이터의 추세를 보기 위한 분석 기법이며 가장 기본적인 머신러닝 모델이기도 하다. 많은 머신러닝 모델들이 조금 더 복잡한 식을 쓸 뿐 원리적으로는 저것과 동일하게 동작하며, 사실 고차원적인 딥러닝 모델, LLM 모델까지도 근원을 파고들면 저것과 동일한 메커니즘으로 설명이 가능하다.
회귀분석이란 데이터 샘플이 어떤 내부의 원리에 따라 생성되며, 단지 겉으로 보이는 샘플들의 모습에는 노이즈로 인해 변동이 있다고 가정한다. 그래서 그 내부의 원리를 특정한 형태의 함수로 가정하고, 노이즈를 포함한 샘플들을 가장 잘 표현하는, 오차가 가장 적은 파라미터를 추산한다. 위 그림의 예를 보면 그 원리에 해당하는 함수가 1차 함수인지, 2차함수인지에 따라 저렇게 그래프가 천차만별로 달라진다는 특징이 있다.
그리고 그 가정에 따라 추산된 곡선은, 실제 데이터 샘플이 존재하지 않는 범위에도 값을 내보인다. 그리고 그 값은 저 그림에서도 보이듯이, 실제 데이터 샘플이 찍힌 위치와 매우 다를 수 있고, 기본 가정에 해당하는 함수가 몇차식이냐에 따라서 완전히 다른 값을 내보이기도 한다.
딥러닝 모델은 비유하자면 1차, 2차, 3차를 넘어 N이 매우 큰 N차 방정식으로 표현한 것으로 말할 수 있다. (실제는 다르지만 대충 그렇다 치자) 그래서 매우 복잡한 데이터의 분포도 표현할 수 있게 된 것이다. 다만, 그렇다고 해도 데이터는 노이즈를 가지기에 실제 모델의 추론값은 데이터와 달라질 수 있다. 그리고.
저 위의 그래프에서도 보이듯이, 데이터가 적은 가장자리로 갈수록 전혀 엉뚱한 값이 나오기도 한다.
그렇게 실제는 없는 뜬금없는 값을 때때로 출력하는 것이 ML 모델의 특징이다. 이는 데이터라는 것이 언제나 노이즈를 가지기 때문에 어쩔 수 없는 일이다. 그리고 그러한 것이 언어 모델, LLM에서 발생하게 될 때 LLM은 사실과는 관계없는 헛소리를 하는, 즉 '환각 현상'을 보이는 것이다. 특히나 LLM은 생각이란 걸 하지 않기 때문에 그것이 사실에 부합한지 아닌지를 검토하지 않고 내뱉는다.
이러한 LLM의 특징과, 그로 인해 나타나는 현상, 그것을 해결하는 방법은 다음에 정리하도록 하겠다.
'스터디 > AI' 카테고리의 다른 글
| AI썰 - RAG is the first you need (4) | 2025.07.30 |
|---|---|
| AI교과서... 네놈, 대체 정체가 뭐냐... (를 GPT에 물어보았습니다.) (5) | 2025.06.27 |
| 로봇 사업, 우리가 할 수 있어? (10) | 2025.06.19 |
| 로봇 연구 동향 (5) | 2025.06.17 |
| LLM 성능 Benchmark (3) | 2025.06.15 |