내적 — 두 화살표가 얼마나 같은 쪽을 보는가
길이와 각도를 숫자 하나로 바꾸는 장치
내적은 두 방향이 얼마나 맞는지를 재는 숫자 하나입니다.
지금까지 벡터로 한 일은 더하고 늘이는 것뿐이었습니다.
그런데 우리는 길이도 재고 싶고 각도도 알고 싶어요.
"이 두 문장이 얼마나 비슷한가"를 물으려면 반드시 필요한 것들입니다.
놀랍게도 그 둘을 한꺼번에 주는 아주 단순한 계산이 있습니다.
내적(dot product)이에요. 성분끼리 곱해서 더하기, 그게 전부입니다.
(4, 1) · (1, 3) = 4×1 + 1×3 = 7
결과는 벡터가 아니라 숫자 하나입니다. 그래서 '스칼라곱'이라고도 불러요.
이 숫자 하나에 길이와 각도가 함께 접혀 들어가 있습니다.
자기 자신과의 내적 = 길이의 제곱. 직각인 둘의 내적 = 0.
🎮 각도가 바뀌면 내적은 어떻게 되나
화살표를 끌면서 내적이 언제 커지고, 언제 0이 되고, 언제 음수가 되는지 보세요.
"직교하게 맞추기" 버튼도 눌러 보고요.
코사인 유사도 — 검색과 추천이 쓰는 자
내적을 두 길이로 나누면 cos θ 만 남습니다.
이 값은 −1 부터 1 사이이고, 길이와 상관없이 방향만 비교합니다.
이것을 코사인 유사도라고 불러요.
왜 길이를 지울까요? 문서 하나가 길고 하나가 짧아도, 다루는 주제가 같으면
비슷하다고 말하고 싶기 때문입니다. 긴 글이라고 더 '고양이스러운' 건 아니니까요.
검색 엔진이 질문과 문서를 견주는 방식, 추천 시스템이 취향이 닮은 사람을 찾는 방식,
얼굴 인식이 두 얼굴이 같은 사람인지 판단하는 방식이 전부 이 한 줄입니다.
길이를 지우고 방향만 비교하기 — 이것이 검색·추천의 기본자입니다.
정사영 — 그림자의 길이
내적의 또 다른 얼굴은 그림자입니다.
햇빛이 u 방향에 수직으로 내리쬔다고 할 때, v 가 u 위에 드리우는 그림자의 길이는
(u·v) / |u| 입니다.
말로 바꾸면 "v 가 u 방향으로 얼마나 나아갔는가"예요.
힘이 비스듬히 걸릴 때 실제로 미는 만큼을 계산하거나,
데이터에서 필요한 방향의 성분만 뽑아낼 때 쓰입니다.
이 그림자 이야기는 16강 정사영과 17강 최소제곱법에서
이 강의의 절정으로 돌아옵니다. 지금은 위 실험실에서 주황색 점이
어떻게 움직이는지만 눈에 익혀 두세요.
그림자와 오차. 16강 정사영의 예고편입니다.
🤔 확인 문제
(2, −3) · (4, 1) 은?
해설 2×4 + (−3)×1 = 8 − 3 = 5 입니다. 성분끼리 곱해서 더하면 끝이에요.
🤔 확인 문제
두 벡터의 내적이 0 이라는 것은 무슨 뜻인가요?
해설 u·v = |u||v|cos θ 가 0 이 되려면 cos θ = 0 (직각) 이거나 둘 중 하나의 길이가 0 이어야 합니다. 평행한 벡터의 내적은 오히려 가장 큰 값이에요.
🤔 확인 문제
코사인 유사도를 쓸 때 내적을 길이로 나누는 까닭은?
해설 길이로 나누면 방향만 남습니다. 긴 문서라고 점수가 커지는 일이 없어져서, 길이가 다른 것들끼리도 공평하게 견줄 수 있어요.