🏫 배움터 🤖 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 로 조금씩 수정

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