데이터과학을 위한 수학 복습(1)

수학 지식 없이 데이터과학을 배울 수 있다는 주장은 거짓이다. 하지만 다행스런 점은 대다수의 데이터과학자들에게 높은 수준의 수학이 꼭 필요한 것은 아니라는 사실이다. 대부분의 실무자들에게는 모형이나 알고리즘을 이해하는 정도의 수학이 필요한 데 그것은 고등학교 수준의 수학을 잘 기억하고 있으면 대체로 충분하다.

뭐니뭐니 해도 데이터과학에 꼭 필요한 수학 지식은 선형대수(linear algebra)이다. 즉, 벡터(vector)와 행렬(matrix)이다. 그 중 아마도 벡터가 기본일 것이다.

많은 문과 전공자들에게 벡터는 넘사벽이다. 그게 일반적인 수(number)의 세계가 아니기 때문이다. 일반적인 수가 크기만을 나타내는데 비해 벡터는 ‘크기’와 ‘방향’을 가진 특별한 수이며, 순서와 의미를 지닌 숫자의 목록(list of numbers)이다. 다시 말해 벡터는 기하적 성격(geometric expression)을 갖고 있다. 그래서 벡터를 공부할 때 수적 표현의 기하적 의미(좌표상의 표시)를 새기면서 하면 크게 도움이 된다.

예컨대 학생들의 성적을 매기는데 국어와 영어 과목이 있다고 하자. 한 학생이 취득한 점수를 (국어 점수, 영어 점수)라는 벡터로 표현하기로 약속하자.  만약  학생 A의 성적이 국어=80, 영어=90이라면, 열벡터로 나타내면 이라고 표기될 것이다. 그것은 과는 전혀 다른 의미를 갖는다. 이를 좌표상에 표시하면 아래 <그림 1>과 같다.

<그림 1> 좌표 평면(혹은 공간) 사례

선형대수에서는 거의 항상 벡터의 시작점은 원점(영점)이다(<그림 2>).

<그림 2> 원점(origin)이 영점인 벡터들

 

<그림 3>에서 좌표상의 점은, 점(point)으로 표현할 때는 (-2,3), 벡터로 표현하면 , x축에서 음으로 2만큼 가고 y축에서 양으로 3만큼 간 점이다(이하는 3Blue1Brown의 동영상 강의를 인용하였음). -2는 x성분, 3은 y성분이다.

<그림 3> 좌표상에서 벡터의 예

 

3차원 벡터라면 여기에 z축을 추가하면 된다.예컨대  는 x축에서 음으로 2, y축에서 양으로 3, z축에서 양으로 4만큼 간 벡터(점)이다.

벡터의 합()을 좌표의 이동으로 설명해 보자. 벡터 가 이고, 벡터 일 때 숫자상으로 이 두 벡터의 합()은  이다. 좌표상에서 벡터는 이동으로 볼 수 있다. 원점에서 만큼 이동하고(x축으로 1만큼 가서 y축으로 2만큼 간 점), 다음에 의 종점에서 만큼 이동(x축으로 3만큼 가서 y축으로 -1만큼 간다)해서 원점에서 새로운 벡터 (x축으로 4만큼 가서 y축으로 1만큼 간 점)이 생성된 것으로 볼 수 있다. 이는 원점을 영점에 고정시켜 놓아서 얻는 이점이다.

<그림 4> 벡터의 덧셈

 

이번에는 벡터에 수(scalar: 스칼라, 영어발음으로 스케일러)를 곱하는 셈(실수배임)을 좌표의 이동으로 설명해 보자. 아래 예들에서처럼 벡터에 수를 곱하면 벡터가 그 수의 곱만큼 늘어나거나 줄어든다(즉, scaling, 스케일링된다).

,  

<그림 5> 실수배의 사례

이와 같이 벡터, 벡터의 덧셈, 실수배 등을 좌표 평면(혹은 좌표 공간)에서의 이동으로 생각해보면 벡터의 계산이 훨씬 더 잘 이해될 것이다. 좌표를 상상하면서 아래 설명을 보자.

벡터의 상등: 두 벡터가 같다는 말로 각각의 성분이 동일하다는 의미. 그럴려면 벡터의 순서와 차원이 모두 같아야 한다.

벡터의 덧셈과 뺄셈:

 라고 할 때,

벡터 가 덧셈이 가능할 때 벡터의 덧셈에는 다음 성질들이 있다.

(1) 교환법칙: 

(2) 결합법칙: 

(3) 덧셈의 항등원 (영벡터)가 존재한다. 어떤 벡터에 를 더하면 자기 자신이 된다. 2차원 벡터의 항등원은 , 3차원 벡터의 항등원은 

(4) 의 덧셈에 대한 역원 가 존재: 

벡터 가 덧셈이 가능할 때 벡터의 실수배에는 다음과 같은 성질이 있다.

(1) 분배법칙: 

(2) 결합법칙: 

(3) 임의 실수와 영벡터의 곱은 영벡터: 

(4) 1은 벡터의 실수배의 항등원:

(5) -1과 주어진 벡터의 곱은 그 벡터의 역벡터(덧셈의 역원):