Ⅴ단원 · 4 / 5차시

단어 벡터 연산으로 ChatGPT의 원리 이해하기

벡터의 연산과 기하학적 표현을 복습하고, 단어 임베딩에서 벡터 연산이 단어의 의미 관계를 어떻게 나타내는지 탐구합니다.

학습목표

  • 벡터의 덧셈, 뺄셈, 실수배와 그 기하학적 표현을 설명할 수 있다.
  • 단어 임베딩에서 벡터 연산으로 단어 사이의 의미 관계를 표현할 수 있음을 확인할 수 있다.
  • 벡터 연산으로 언어를 모델링하는 것의 한계를 설명할 수 있다.

시간 배분

단계활동
도입ChatGPT는 문장을 어떻게 만들어낼까?5분
활동1벡터의 연산과 기하학적 표현10분
활동2단어 벡터 유추 탐구기20분
활동3벡터 연산으로 언어를 완벽히 표현할 수 있을까?10분
도입 · 5분

ChatGPT는 문장을 어떻게 만들어낼까?

ChatGPT는 사람의 질문을 형태소 분석, 단어 임베딩을 거쳐 언어 모델에 입력합니다. 언어 모델에서는 문장을 이해하고 확률적으로 다음에 나올 단어를 예측하여 새로운 문장을 생성합니다.

질의문 작성
ChatGPT에게 질의
형태소 분석
텍스트를 단어나 형태소로 나눔
단어 임베딩
단어를 벡터 공간에 배치
언어 이해
문장을 이해하고 중요한 단어를 파악
언어 생성
확률을 기반으로 다음 단어를 예측하여 문장 생성
활동 1 · 10분

벡터의 연산과 기하학적 표현

두 벡터 $\vec a=(a_1,a_2,\cdots,a_n)$, $\vec b=(b_1,b_2,\cdots,b_n)$과 실수 $k$에 대하여

$\vec a+\vec b=(a_1+b_1,a_2+b_2,\cdots,a_n+b_n)$
$\vec a-\vec b=(a_1-b_1,a_2-b_2,\cdots,a_n-b_n)$
$k\vec a=(ka_1,ka_2,\cdots,ka_n)$

좌표평면에서 벡터 $\vec a$는 시점을 원점에 맞추었을 때 종점 $\mathrm{A}(a_1,a_2)$의 위치로 기하학적으로 표현할 수 있습니다. 단어 임베딩은 비슷한 의미가 있는 단어들을 서로 가까운 곳에 있는 벡터로 표현하므로, 벡터 연산을 하면 의미 있는 결과가 나옵니다.

활동 2 · 20분

단어 벡터 유추 탐구기

실제 단어 임베딩 공간에서는 다음과 같은 벡터 연산이 성립합니다 (출처: word2vec.kr). 버튼을 눌러 각 관계를 벡터 그림으로 확인해 보세요.

단어 벡터 유추 — A − B + C = D
계산 결과
일본
활동 3 · 10분

벡터 연산으로 언어를 완벽히 표현할 수 있을까?

벡터 연산은 '왕'과 '남자', '여왕'과 '여자'와 같은 관계는 잘 표현하지만, 모든 언어적 관계를 완벽하게 모델링할 수는 없습니다. 더 복잡한 문맥적 뉘앙스는 잘 포착하지 못할 수 있습니다.

기하학적 표현은 단어 간의 관계를 표현하는 데 유용하지만, 실제 언어의 복잡성을 완전히 재현하기에는 한계가 있습니다. 이러한 기법들은 ChatGPT가 자연스럽고 유창한 대화를 생성하는 데 중요한 역할을 하지만, 완벽하게 언어를 이해하고 생성하려면 추가적인 연구가 필요합니다.

차시 예고

오늘은 벡터 연산이 단어의 의미 관계를 표현하는 원리를 배웠습니다. 다음 시간에는 인공지능 수학 탐구를 스스로 설계하는 5단계 방법을 배우고 전체 단원을 정리합니다.

← 3차시 — k-최근접 이웃(k-NN) 알고리즘으로 분류하기 5차시 — 인공지능 수학 탐구 프로젝트 설계하기 →