본문 바로가기

부스트캠프 AI Tech/[Week1] AI Math

[Week1] AI Math 기초

1. 벡터

 

  • 벡터는 숫자를 원소로 가지는 리스트(list) 또는 배열(array)이다.

  • 벡터는 공간에서 한 점을 나타냄.

  • 벡터는 원점으로부터 상대적 위치를 표현.
  • 벡터에 숫자를 곱해주면 길이만 변함.

  • 벡터끼리 같은 모양을 가지면 덧셈, 뺄셈을 계산할 수 있음. 

  • 벡터끼리 같은 모양을 가지면 성분곱(Hadamard product)을 계산할 수 있음.

  • 벡터의 노름(norm)은 원점에서부터의 거리를 말함.

  • L1-노름 각 성분의 변화량의 절대값을 모두 더함.
  • L2-노름은 피타고라스 정리를 이용해 유클리드 거리를 계산.

 

*왜 다른 노름의 종류를 활용할까?

 

  • 노름의 종류에 따라 기하학적 성질이 달라짐.
  • 머신러닝에선 각 성질들이 필요할 때가 있으므로 둘다 사용.

 

* 노름을 이용한 두 벡터 사이의 거리와 각도

 

  • L1,L2 - 노름을 이용해 두 벡터 사이의 거리를 계산할 수 있음.
  • 두 벡터 사이의 거리를 계산할 때는 벡터의 뺄셈 이용.
  • 단, 각도는 L2-노름에서만 가능. (제2 코사인 법칙)

  • L2-노름을 이용해 d차원의 벡터사이의 각도를 계산할 수 있음.
  • 위 식의 분자는 내적을 이용해 쉽게 구한다.

 

*내적은 어떻게 해석?

 

  • 내적은 정사영(orthogonal projection)된 벡터의 길이와 관련.
  • Proj(x)의 길이는 코사인법칙에 의해 x벡터 크기와 코사인세타의 곱이 됨.
  • 내적은 정사영의 길이를 벡터 y의 길이만큼 조정한 값.

  • 결국 내적은 두 벡터의 유사도를 측정하는데 사용 가능.

 

 

'부스트캠프 AI Tech > [Week1] AI Math' 카테고리의 다른 글

[Week1] AI Math - CNN & RNN  (1) 2021.08.06