본문 바로가기

머신러닝/[인공지능을 위한 선형대수]

전사함수와 일대일함수

학습목표

 이번 강의에서는 전사함수와 일대일함수를 배워보겠습니다. 그리고 이 개념이 실제로 Neural Networks에서는 어떻게 응용될 수 있는지를 생각해보는 시간을 갖겠습니다.

핵심 키워드

  • 전사함수(Onto, Surjective)
  • 일대일함수(One-to-one, Injective)

학습하기

 이번에는 선형변환에서 나오는 2가지 개념, Onto와 One-to-one에 대해 말해봅시다. 이건 고등개념으로는 전사와 단사에 해당하는 개념입니다. 때문에 공역=치역이면 Onto, 전사입니다. 모든 y에 대응하는 x가 반드시 존재한다고도 말할 수 있습니다. 2가지 경우를 생각해봅시다. T1:R^3->R^2와 T2:R^2->R^3. 전자는 Onto가 될 수 있지만, 후자는 Onto가 될 수 없습니다. 어떻게 보면 당연한게, 어떤 2차원 공간 위의 점을 더 큰 차원인 3차원 공간으로 모두 매핑할 수 있을 수가 없죠. 하나의 점이 여러 개의 점으로 매핑가능하다면 불가능하지 않겠지만, 이건 함수의 정의에 어긋나니까요.

 One-to-one의 경우, 하나의 y는 하나의 x에만 대응이 되어야한다는, 단사의 개념이죠. 또 2가지 경우를 생각해봅시다. T1:R^3->R^2와 T2:R^2->R^3. 이 경우 후자는 One-to-one이 가능하지만, 전자는 불가능하겠죠. 100개의 값을 30개의 값으로 매핑하는데 One-to-one이 가능하냐. 라고 하면 당연히 불가능한 것과 같은 맥락입니다. 

 이런 개념을 NN 위에 적용해봅시다. NN은 결국 각각의 Node들을 연결하는 Affine transformation의 Coefficient와 Bias를 학습시키는 것인데요.

 R^3->R^2를 보면, 이 부분은 One-to-one이 될 수 없겠죠. 고차원에서 저차원으로 매핑하니까요. 때문에 특정한 Over-weighted, Tall_and_smoking 값을 출력으로 갖는 Weight, Height, Is_smoking 입력 조합은 당연히 다양하게 존재할 수 있습니다. 어떤 선형시스템의 솔루션이 Infinitely many했던 것과 같은 맥락이겠죠.

 R^3->R^2를 보면, 이 부분은 Onto가 될 수 있는 가능성을 갖습니다. 물론 항상 그렇다는 말은 아닙니다. Onto가 되지 못한다는 말은, Over-weighted와 Tall_and_smoking이 갖는 모든 값에 대한 학습을 할 수 없다는 말이 됩니다.

 정리하면, One-to-one은 Standard matrix가 Linearly independent한가 와 동치입니다.

 아래 그림과 같은 경우에는, A의 각 컬럼이 Linearly indep하므로, One-to-one이며, 2차원을 3차원으로 매핑하는 함수니까 Onto는 되지 못하겠습니다.

 아래 그림에서는, Linearly indep하지 않으므로, 한 개의 y에 다양한 x가 존재하게되고, One-to-one이 되지 않습니다. 그리고 이 경우에는, 3차원의 인풋값을 2차원의 모든 값에 매핑할 수 있게 되겠죠. 적어도 2차원의 기저 벡터를 확보했으니까요. 이상입니다.

'머신러닝 > [인공지능을 위한 선형대수]' 카테고리의 다른 글

Least Squares와 그 기하학적 의미  (0) 2020.05.17
Least Square Problem 소개  (0) 2020.05.16
선형변환 with Neural Networks  (0) 2020.05.14
선형변환  (0) 2020.05.13
부분공간의 기저와 차원  (0) 2020.05.13