인공지능공부/인공지능기초수학

인공지능공부/인공지능기초수학

놈, 노름(Norm)

놈이란? 놈은 벡터의 크기를 나타내는 양입니다. 크기 또는 길이라고도 합니다. $$ \parallel v \parallel _p = ( \sum_{i=1}^n |v_i|^p )^ \frac{1}{p} $$ 수식은 위와 같습니다. 위의 p 값에 1이 들어가면 L1, 2가 들어가면 L2 라고 합니다. 인공지능에서는 주로 1,2가 사용됩니다. 1. L1 위의 수식에 1을 넣어보겠습니다. $$\parallel v \parallel _1 = \sum_{i=1}^n |v_i|$$ $$=|v_1|+|v_2|+|v_3|+...+|v_n|$$ 단순히 벡터 성분들을 더해주면 됩니다. 정말 쉽죠? 2. L2 위의 수식에 2를 넣어보겠습니다. $$\parallel v \parallel _2 = ( \sum_{i=1}^n |v..

인공지능공부/인공지능기초수학

외적과 내적 비교

이번 포스팅에서는 외적과 내적을 비교해보도록 하겠습니다. 말로만 들으면 외적, 내적 비슷한거 아닌가? 생각이 드실 수 있습니다. 벡터의 곱은 두 가지로 정의 됩니다. 내적은 벡터를 수 처럼 곱합니다. 즉, 결과값이 스칼라로 나옵니다. 외적은 벡터간의 곱이며, 결과값 역시 벡터입니다. 외적은 '가위곱'이라고도 합니다. 수식비교 내적과 외적의 수식을 자세히 보시면 표시 기호 차이가 있습니다! 외적은 X, 내적은 ∙입니다. 의미도 간단하게 살펴보겠습니다. 내적의 의미는 "A의 방향으로 얼만큼 일했지?"이고, 외적의 의미는 "현재 두 벡터에 수직인 벡터가 뭐지?"입니다. 이름은 비슷하지만 두 "적"들은 서로 다른 의미를 가집니다.

인공지능공부/인공지능기초수학

벡터의 외적

이번에는 벡터의 외적에 대해서 알아보겠습니다. 벡터의 내적 같은 경우 "두 벡터가 협력했을 때 가질 수 있는 총 일의 양"이기 때문에 결과가 벡터가 아닌 스칼라로 표현되었죠! 하지만 외적은 연산 결과로 벡터가 나옵니다. 벡터의 외적 벡터의 외적은 두 벡터에 동시에 수직이고, 크기는 두 벡터의 평행사변형의 면적 R3상의 벡터입니다.(가위곱이라고도 불립니다.) 위의 그림처럼 A, B 두 벡터가 있다고 가정합시다. 이 두벡터의 외적은 C 또는 C'가 됩니다. 그리고 위의 수식에서 || 표기는 절댓값이 아닌 행렬식 표기입니다. 따라서 각 x, y, z에 해당하는 벡터 성분은 위의 행렬의 행렬식으로 표기됩니다. 그렇다면 어떻게 저런 행렬들이 만들어질까요? 먼저 a, b벡터를 순서대로 행렬로 만들어줍니다. 그러면 ..

인공지능공부/인공지능기초수학

코사인 유사도

코사인 유사도는 벡터의 내적으로부터 시작됩니다. 코사인 유사도 코사인 유사도는 주로 두 벡터를 비교할때 사용합니다. 즉, 두 벡터가 얼마나 닮아있는가를 측정하는 방법입니다. 코사인 유사도는 -1과 1사이의 값을 가지고, 수치가 클수록 두 벡터가 유사하다고 할 수 있습니다. 여기서 중요한 포인트는 두 벡터의 방향성인데요. 코사인 유사도는 두 벡터가 이루는 각도를 이용하기 때문에, 두 벡터의 거리보다는 방향성에 더 초점을 맞춘 유사도입니다. 먼저 벡터의 내적 공식을 한번 리마인드 해봅시다. 위와 같이 w, v 벡터가 있을 때, 내적의 수식은 아래와 같습니다. $$ w\cdot v = \parallel v \parallel * \parallel w \parallel * \cos \Theta = a*c + b*..

인공지능공부/인공지능기초수학

벡터의 내적

백터의 내적은 무엇일까요? 앞의 포스팅에서 벡터가 물리학적, 수학적, 컴퓨터 과학적 관점 이렇게 3개로 정의됐었죠. 벡터의 내적도 물리학적, 수학적의미를 가집니다. 백터의 내적을 보는 관점 (1) 물리학적 관점 물리학적 관점에서 보는 벡터의 내적은 "2개의 작용하는 힘이 있을 때, 이 두 개의 힘이 서로 협력할 경우 얼마나 일의 양이 커지는지"입니다. (2) 수학적 관점 벡터간의 곱이라고 할 수 있습니다. 자 그럼 그림으로 한번 살펴보겠습니다. 초기 서로 다른 두 벡터 OA, OB가 있다고 합시다. 이 벡터의 크기는 각각 a, b입니다. 물리학적 관점으로 보면 두 벡터가 "서로 협력하는 경우 얼마나 큰 일의 양이 되는지"입니다. 따라서 두 벡터가 협력할 수 있도록 두 벡터의 방향을 같게 해주어야 합니다...

인공지능공부/인공지능기초수학

벡터의 기본 연산

이전 포스팅에서는 선형대수에서 쓰이는 기본 개념들과 벡터에 대해서 배웠습니다. 이번 포스팅에서는 벡터의 기본 연산에 대해서 다루겠습니다. 벡터의 덧셈 벡터의 덧셈은 전체적으로 어디에서 시작해서 어디로 끝나는지를 나타냅니다. 즉, 시작점하고 도착점이 중요하다는 이야기입니다. 예를 들어 보겠습니다. 위의 그림을 보시죠. 점 A에서 점 B로 이동하고, 점 B에서 점 C로 이동한것과 점A에서 점 C로 바로 간것이 같을까요? 거리로 보면 전자가 더 길겠죠. 하지만 벡터의 개념에서 보면 이는 맞습니다! 출발지와 목적지가 모두 A와 C로 동일하기 때문이죠. (AB) + (BC) = (AC) 혹은 a + b = c로 나타낼 수 있고, 이를 성분으로 나타내면 c = a + b = (x1 + x2, y1 + y2) = (..

인공지능공부/인공지능기초수학

벡터의 정의와 기본 개념들

앞의 포스팅에서는 선형 대수의 정의에 대해서 다루었습니다. 선형 대수는 벡터와 행렬의 계산으로 이루어져 있습니다. 오늘의 포스팅은 선형대수 계산을 위한 기본 용어들을 정리해 보겠습니다. 스칼라(scala) 스칼라란 무엇일까요? 여러분도 일상속에서 많이 보셨을 겁니다! 스칼라는 수의 단일 형태로 1, 2, 3 등의 보통 수치를 뜻합니다. 파이썬 코드로 표현하자면 아래와 같습니다. a = 1 b = 2 c = 3 벡터(vector) 벡터는 수를 직선상에 나열한 것으로, 스칼라를 나열한 것이라 보시면 됩니다. 벡터의 표현 방법 벡터의 표현은 어떻게 하는지 간단하게 알아볼까요? 각각 점 A와 B를 잇는 직선이 있다고 가정해 봅시다. 여기서 A의 좌표는 (c,d)이고, B의 좌표는 (e,f)입니다. A에서 B로 ..

인공지능공부/인공지능기초수학

선행 대수 정의

인공지능을 이해하기 위해서는 선형대수를 알고 계셔야 합니다. 선형 대수? 선형 대수란 "선형 방정식을 풀기 위한 방법론을 배우는 학문"이라고 할 수 있습니다. 이게 무슨 소리일까요? 예를 들어 bx + c = 0 이라는 방정식이 있다고 가정합시다. 앞의 방정식을 성립하는 x를 찾는 것을 뜻합니다. 그럼 왜 이름이 선형 대수학일까요? 먼저 선형이란 어떤 방정식의 입력이 바뀌지 않는 방정식을 뜻합니다. 즉, 입력 변수가 1차인 것을 뜻합니다. y = 2x + 2 라는 수식이 있을 때, x의 값에 2배를 한 뒤 2를 더한 값이 결과가 됩니다. 하지만 y = 2x2 + 2라는 수식이 있을 경우 x값 자체를 제곱해 버리기 때문에 x 자체가 변해버립니다. 즉, 선형으로 일정한 규칙으로 증가하는게 아니라 큰 값을 넣..

컴공누나
'인공지능공부/인공지능기초수학' 카테고리의 글 목록