🏫 배움터› 🤖 AI› 🧮 AI 수학

🧮 인공지능 수학

인공지능은 결국 숫자를 다루는 수학입니다.
데이터를 숫자로 바꾸고, 계산하고, 오차를 줄여가는 과정을 그림으로 만나봅니다.

데이터 → 벡터 → 행렬 계산 → 활성화 → 예측 → 오차 → 미분 → 학습
VECTOR · 벡터

① 벡터데이터를 숫자의 묶음으로

AI가 세상을 이해하는 첫걸음은 모든 것을 숫자로 바꾸는 것입니다. 키와 몸무게, 사진의 픽셀, 단어의 의미까지 — 전부 벡터(숫자들의 나열)로 표현합니다.

사람 한 명 = [ 키, 몸무게, 나이 ] = [170, 65, 24]   →   3차원 벡터

사진 한 장(28×28 흑백)은 숫자 784개가 나열된 784차원 벡터가 됩니다. AI에게 "고양이 사진"이란 결국 숫자 784개의 묶음일 뿐입니다.

내적(dot product) — 두 벡터가 얼마나 닮았나

두 벡터의 내적은 방향이 비슷할수록 커집니다. AI는 이것으로 "유사도"를 잽니다. 아래 파란 점·초록 점을 드래그해 방향을 바꿔 보세요.

a = [ , ] b = [ , ]
직접 입력·드래그하거나, 위 버튼으로 예시를 불러오세요 (값이 커지면 화면이 자동으로 맞춰져요)
a · b = |a| |b| cos θ세타  =  –    사이각 θ = –
AI에서는? 검색·추천이 바로 내적입니다. 내가 좋아한 영화 벡터와 다른 영화 벡터의 내적이 크면 "취향이 비슷하다"고 판단해 추천합니다. 문장 검색, 얼굴 인식의 "닮음"도 모두 벡터의 내적입니다.
MATRIX · 행렬

② 행렬신경망의 한 층 = 행렬 곱셈

여러 벡터를 한꺼번에, 규칙적으로 변환하는 도구가 행렬입니다. 신경망의 한 층(layer)은 사실상 행렬 곱셈 한 번입니다.

y = W x + b   (W: 가중치 행렬, x: 입력, b: 편향)

입력 x(숫자 3개)가 행렬 W를 지나 출력 y(숫자 2개)로 바뀝니다. W의 각 숫자(가중치)가 "무엇을 얼마나 중요하게 볼지"를 정합니다. 이 숫자들을 잘 맞추는 게 곧 학습입니다.

아래 버튼으로 새 예시를 계산해 보세요 · 하이라이트된 계산을 눈으로 따라가세요
입력 x 크기:
👆 크기를 바꾸면 W의 열 수도 자동으로 같이 바뀌어요 (x의 행 수 = W의 열 수)
AI에서는? GPT 같은 거대 모델도 속을 열어보면 거대한 행렬 곱셈의 연속입니다. 수십억 개의 가중치(행렬 숫자)를 곱하고 더하는 계산이 전부죠. 그래서 AI 계산에 행렬을 빠르게 곱하는 GPU가 필수입니다.
C = A × B   (A의 행 × B의 열 = C의 한 칸)

행렬끼리 곱할 때, 결과 C의 (i, j) 칸은 A의 i번째 행과 B의 j번째 열을 내적(짝끼리 곱해서 모두 더함)한 값입니다. 아래에서 C의 칸을 눌러 어떤 행과 열이 만나는지 눈으로 따라가 보세요.

C의 한 칸을 누르거나 순서대로 보기를 눌러 보세요 · 노란 행 × 파란 열 = 초록 칸
왜 (2×3)·(3×2)만 곱해질까? A의 행 길이(3)와 B의 열 길이(3)가 같아야 짝을 지어 곱할 수 있어요. 그래서 가운데 숫자가 같아야(A의 열 수 = B의 행 수) 곱셈이 되고, 결과 크기는 바깥 숫자(2×2)가 됩니다. 신경망에서 층을 이어 붙이는 것도 결국 이 크기 맞추기예요.
ACTIVATION · 활성화 함수

③ 활성화 함수직선을 곡선으로, 그래야 똑똑해진다

행렬 곱(y = Wx + b)만 반복하면, 아무리 층을 쌓아도 결국 직선 하나입니다. 세상의 복잡한 관계(비선형)를 배우려면 중간에 구부러뜨리는 함수가 필요합니다. 이것이 활성화 함수입니다.

🔎 AI 어디에 쓰이나 — 구체적으로

① 고양이 사진 인식 — 사진(숫자 784개)이 여러 층을 지나며, 각 층의 뉴런이 ReLU로 켜지고 꺼집니다. 앞쪽 층은 선·모서리, 중간 층은 눈·코·귀, 뒤쪽 층은 얼굴 전체를 잡아내고 — 마지막에 softmax가 "고양이 88%, 개 9%"로 답합니다.

② 스팸 메일 분류 — 메일의 특징을 계산한 뒤, 마지막 sigmoid가 "스팸일 확률 0.92" 처럼 하나의 확률로.

③ 번역·챗봇(ChatGPT) — 다음에 올 단어 후보 수만 개에 softmax로 확률을 매겨 가장 그럴듯한 단어를 고릅니다.

없으면 어떻게 되나? 활성화 함수가 없으면 층을 100개 쌓아도 직선 하나와 똑같아서, "고양이 vs 개"처럼 구불구불한 경계가 필요한 문제를 전혀 못 배웁니다. 딥러닝이 깊어질 수 있는 건 이 함수 덕분이에요.

🔤 앞으로 나올 그리스 문자, 이렇게 읽어요

σ시그마sigmoid
Σ시그마모두 더하기(합)
θ세타가중치
η에타학습률
∂라운드미분 기호
∇나블라기울기

※ 아래 수식에서는 기호 위에 작게 읽는 법을 함께 표시했어요.

⚠️ σ 와 Σ 는 같은 "시그마"지만 뜻이 완전히 달라요!
σ  시그마 (소문자)
= 시그모이드 함수 · S자 모양으로 변환
σ(x) = 1 / (1 + e−x) — 숫자 하나를 0~1로
Σ  시그마 (대문자)
= 합(summation) · 모두 더하기
Σ ak = a₁ + a₂ + a₃ + … — 여러 개를 더함
💡 대문자 Σ = 큰 일 = 다 더하기(합),  소문자 σ = 값 하나를 바꾸는 함수 = 시그모이드.  그리고 "sigmoid(시그모이드)"는 발음도 뜻도 다른 별개 단어예요 — "S자 모양"이라는 뜻이고, 그 함수를 σ 기호로 적는 것뿐이에요.
σ · Sigmoid

Sigmoid — 확률처럼 0~1로

σ시그마(x) = 11 + e−x

어떤 숫자든 0과 1 사이로 눌러줍니다. 큰 양수는 1에, 큰 음수는 0에 가까워지죠. 그래서 결과를 "확률"처럼 해석할 수 있습니다. (예: 스팸일 확률 0.92)

σ(0.0) = 0.5000000000  →  중립 (50%)
AI에서는? "예/아니오"를 맞히는 문제(이진 분류)의 마지막 출력에 씁니다. 다만 그래프 양 끝이 납작해서 기울기가 0에 가까워지는 '기울기 소실' 문제가 있어, 요즘 깊은 층 사이에는 아래 ReLU를 더 많이 씁니다.
ReLU

ReLU — 음수는 끄고, 양수는 그대로

ReLU(x) = max(0, x)

규칙이 놀랍도록 단순합니다. 음수면 0, 양수면 그대로. 계산이 매우 빠르고, 양수 쪽은 기울기가 항상 1이라 기울기 소실이 잘 안 생깁니다. 그래서 현대 딥러닝의 기본 활성화 함수입니다.

ReLU(0.0) = 0.0
AI에서는? "뉴런을 켤지 끌지"를 정하는 스위치 역할. 음수 신호는 0으로 꺼버려 필요한 특징만 통과시킵니다. 간단하지만 이 함수 하나가 딥러닝 성능을 크게 끌어올렸습니다.
Softmax

Softmax — 여러 후보를 확률분포로

softmax(zi) = eziez1 + ez2 + ez3

여러 개의 점수(logit)를 받아 모두 더하면 1(=100%)이 되는 확률로 바꿉니다. 가장 큰 점수를 더 도드라지게 부각하죠. 아래 세 슬라이더(고양이·개·새 점수)를 움직여 보세요.

–
AI에서는? "이 사진은 무엇?"처럼 여러 정답 중 하나를 고르는 문제(다중 분류)의 마지막 출력. "고양이 88%, 개 9%, 새 3%"처럼 확신의 정도까지 알려줍니다. ChatGPT가 다음 단어를 고를 때도 softmax로 확률을 매깁니다.
LOSS · 손실함수

④ 손실함수얼마나 틀렸나를 숫자 하나로

AI가 학습하려면 먼저 "지금 얼마나 틀렸는지"를 숫자로 알아야 합니다. 예측과 정답의 차이를 재는 것이 손실함수(loss)예요. 가장 흔한 것이 평균제곱오차(MSE)입니다.

MSE = 1n Σ시그마·합 (예측 − 정답)2  (차이를 제곱해 평균)

점들은 실제 데이터, 파란 직선은 AI의 예측입니다. 슬라이더로 직선의 기울기를 바꾸면 각 점과 직선의 차이(빨간 선)가 달라지고, 그 제곱의 평균인 오차가 실시간으로 바뀝니다.

오차(MSE) = –  ·  –
AI에서는? 이 오차를 가장 작게 만드는 w를 찾는 것이 곧 학습입니다. "어느 w가 최소인가?"의 답을 다음의 미분·경사하강법으로 찾아요. 분류 문제에서는 MSE 대신 교차 엔트로피(cross-entropy)라는 손실을 주로 씁니다.
DERIVATIVE · 미분

⑤ 미분'어느 쪽으로 가야 좋아지나'의 나침반

미분은 순간의 기울기(변화율)입니다. AI 학습의 핵심 질문 — "가중치를 어느 방향으로, 얼마나 바꿔야 오차가 줄어들까?" — 의 답을 미분이 알려줍니다.

🚲 쉽게 말하면 — 미분은 "지금 서 있는 자리에서 길이 얼마나 기울었나"를 재는 거예요. 오르막이면 +, 내리막이면 −, 꼭대기·바닥처럼 평평하면 0.
가파를수록(숫자가 클수록) "빨리 변한다", 완만할수록 "천천히 변한다"는 뜻이고요. AI는 이 기울기만 보고 "어느 쪽으로 발을 옮겨야 오차가 줄어들지"를 판단합니다.

f '(x) = 순간 변화량아주 작은 입력 변화 = limh→0 f(x+h) − f(x)h

곡선 위의 점을 드래그하면, 그 점에서의 접선(기울기)이 함께 움직입니다. 기울기가 양수면 오른쪽이 오르막, 음수면 내리막, 0이면 꼭대기나 바닥입니다.

점을 드래그하거나, 그래프를 클릭한 뒤 ← → 키로 움직이세요 (Shift+키는 크게)
x = – 에서 기울기 f '(x) = 2x = –  ·  –
AI에서는? 오차(loss)를 가중치로 미분한 값 = 기울기(gradient). "기울기의 반대 방향으로 조금 가면 오차가 준다"는 사실이, 다음의 경사하강법으로 이어집니다. 수백만 개 가중치의 미분을 한 번에 구하는 방법이 역전파(backpropagation)입니다.
GRADIENT DESCENT · 경사하강법

⑥ 경사하강법기울기를 따라 골짜기 바닥으로

AI가 실제로 배우는 방법입니다. 오차(loss)라는 골짜기에서, 기울기의 반대 방향으로 한 걸음씩 내려가 가장 낮은 지점(오차 최소)을 찾습니다.

θ세타 ← θ − η에타 · ∂라운드L∂θ   (θ 세타: 가중치, η 에타: 학습률, ∂ 라운드: 미분 기호)

공이 굴러 내려가듯, 오차 곡선 위의 점이 바닥을 향해 이동합니다. 학습률 η(한 걸음의 크기)를 바꿔 보세요. 너무 크면 튕겨 나가고, 너무 작으면 느립니다.

걸음 0 · θ = – · 오차 L = – · 시작 위치에서 출발

🗺️ 2차원에서는? — 등고선 위의 공

가중치가 2개면 골짜기가 지도(등고선)가 됩니다. 안쪽 원일수록 오차가 낮은 곳. 공은 등고선에 수직인 방향(가장 가파른 쪽)으로 굴러 중심(최소)을 찾아갑니다.

걸음 0 · 위치 (–) · 오차 –
AI에서는? 이 "한 걸음"을 데이터로 수백만 번 반복하는 것이 곧 모델 훈련(training)입니다. 학습률은 가장 중요한 설정값 중 하나예요. 실제 모델은 골짜기가 수백만 차원이지만, 원리는 이 1·2차원 그림과 똑같습니다.
PERCEPTRON · 퍼셉트론

⑦ 퍼셉트론 체험지금까지 배운 게 여기서 만난다

벡터·행렬·활성화·경사하강법이 하나로 모이는 곳이 퍼셉트론(뉴런 1개)입니다. 하는 일은 딱 하나 — 직선 하나로 두 그룹을 가르기. 학습이란 그 선(가중치)을 찾는 것이에요.

판단 = 부호( w1·x + w2·y + b )  → 0보다 크면 합격, 작으면 불합격

점은 학생(가로=공부시간, 세로=출석). 파랑=합격, 빨강=불합격. 슬라이더로 경계선을 움직여 두 그룹을 갈라 보세요. 정확도가 실시간으로 나옵니다.

정확도 –  ·  –
AI에서는? "자동으로 학습"을 누르면 퍼셉트론이 틀린 점을 볼 때마다 가중치를 스스로 조금씩 고쳐(경사하강과 같은 원리) 경계선을 맞춰갑니다. 이 뉴런을 수천·수만 개 쌓은 것이 딥러닝이에요.
OVERFITTING · 과적합

⑧ 과적합외운 학생 vs 이해한 학생

공부를 "이해"하지 않고 답만 통째로 외운 학생은 시험 문제가 조금만 바뀌면 틀립니다. AI도 똑같아요. 학습 데이터에만 너무 맞추면(과적합) 새 데이터에 약해집니다.

점은 데이터, 곡선은 AI가 찾은 규칙. 복잡도(차수)를 올려 보세요. 너무 낮으면 대충 지나가고(과소적합), 너무 높으면 모든 점을 억지로 통과하며 구불구불(과적합) 해집니다.

–
AI에서는? 목표는 데이터를 달달 외우는 게 아니라 규칙을 이해하는 것. 그래서 학습에 안 쓴 새 데이터(검증셋)로 성능을 확인하고, 너무 복잡해지지 않게 규제(regularization)를 겁니다. 적당한 복잡도가 가장 좋아요(가운데).
TRANSFORMER · 트랜스포머

⑨ 트랜스포머ChatGPT를 만든 구조, 핵심은 '내적'

ChatGPT·번역기·이미지 생성의 바탕이 트랜스포머(Transformer)입니다. 놀랍게도 그 심장인 어텐션(Attention)은 여러분이 ①에서 배운 벡터 내적과 softmax로 이루어져 있어요.

0단계: 토큰화 — 문장을 AI가 읽는 '조각'으로

AI는 문장을 통째로 읽지 않고 토큰이라는 작은 조각으로 쪼갠 뒤, 각 조각을 번호(정수)로 바꿔요. 아무 문장이나 입력해 보세요 — 어떻게 쪼개지고 몇 토큰인지 보여줘요.

토큰 → 벡터로 — 이렇게 나온 토큰 번호는 다시 숫자 벡터(임베딩)로 바뀌어, ①에서 배운 벡터 내적과 아래 어텐션 계산에 들어가요. 한글은 영어보다 토큰을 더 많이 써서 같은 뜻도 토큰 수가 많게 나와요(요금·속도 불리). (원리 체험용 간단 토크나이저 — 실제 GPT 토크나이저와 조금 다를 수 있어요)

어텐션 — "어떤 단어에 주목할까?"

문장을 이해하려면 단어끼리의 관계를 알아야 합니다. "먹었다"는 누가·무엇을과 이어져야 뜻이 통하죠. 트랜스포머는 각 단어를 벡터로 바꾼 뒤, 단어들끼리 내적해 "얼마나 관련 있나"를 재고, softmax로 주목 정도(%)를 정합니다.

주목도 = softmax( 단어A · 단어B )  (내적으로 관련도 → softmax로 확률)

단어를 눌러보세요 — 그 단어가 문장에서 어디에 주목하는지 진하게 표시됩니다

–
왜 강력한가? ① 문장 전체를 한꺼번에(병렬) 처리해 빠르고, ② 멀리 떨어진 단어끼리도 직접 연결해 긴 문맥을 이해합니다. "은행에 갔다"의 은행이 돈인지 강가인지도, 주변 단어에 주목해 알아내죠.
배운 것이 다 모였어요 — 문장→토큰→벡터(임베딩) · 관련도=내적 · 주목도=softmax · 층층이 행렬 계산 · 경사하강법으로 학습. 거대해 보이는 GPT도 결국 여러분이 배운 수학의 조합입니다.
SUMMARY · 종합

⑩ 하나로 잇기숫자가 학습이 되기까지

지금까지의 조각을 이으면, AI가 배우는 한 사이클이 완성됩니다.

순전파(예측) → 오차 → 역전파(미분) → 경사하강(수정) 의 반복

앞으로 (예측)

벡터데이터를 숫자로

행렬y = Wx + b 로 변환

활성화sigmoid·ReLU·softmax로 구부리고 확률로

거꾸로 (학습)

오차정답과 예측의 차이 L

미분∂L/∂θ = 어느 방향이 개선

경사하강θ ← θ − η∇나블라L 로 조금씩 수정

핵심 한 문장 — 인공지능의 학습은 “예측하고(행렬·활성화), 틀린 만큼(오차), 미분으로 방향을 알아내(기울기), 조금씩 고치는(경사하강)” 수학적 반복입니다. 마법이 아니라, 여러분이 오늘 본 중·고교 수학의 확장입니다.