본문 바로가기
선형대수

7 선형 변환 with Neural Network(Linear Transformation with Neural Network)

by 오 복 이 2022. 1. 19.

Goorm : AI 기술 자연어 처리 전문가 양성 과정 3기 강의
인공지능을 위한 선형대수

를 바탕으로 공부한 내용을 요약한 포스팅입니다.

 

 

 

 

선형 변환이 실제 딥 러닝(Deep Learning)이 기반을 두는 신경망(Neural Networks)에서는 어떻게 작용하는지 알아보기

 

선형 변환은 Neural Networks에서 fully connected layers(linear layer)의 기본적인 형태

  • 왼쪽 그림은 Neural Networks의 한 레이어가 있을 때 시각화한 것
  • (2차원에서 2차원으로 선형 변환되는 레이어가 있고 bias는 없을 때)
  • 이 레이어를 통과하면 T [1,0] = [2,3]과  T [0, 1] = [1,4]라는 변환
  • = Ax 선형 변환 (A는 계수 집합 행렬)

standard basis [1,0] [0,1]를 그려보면

 

Neural Networks, Manifolds, and Topology -- colah's blog

A로 인한 선형 변환 후

Neural Networks, Manifolds, and Topology -- colah's blog

 

입력 벡터가 평행 사변형으로 기울어진 모눈종이 위로 선형 변환

 

linear transformation -- Bias로 인한 translation-- non linear transformation 기하학적 시각화

출쳐 :Neural Networks, Manifolds, and Topology -- colah's blog

 

Neural Networks, Manifolds, and Topology -- colah's blog

Neural Networks, Manifolds, and Topology Posted on April 6, 2014 topology, neural networks, deep learning, manifold hypothesis <!-- by colah --> Recently, there’s been a great deal of excitement and interest in deep neural networks because they’ve achi

colah.github.io

머신러닝, 딥러닝에서 쓰이는 개념들을 알기 쉽게 설명해놓은 블로그

 

Affine layer

  • y=3a+b는 선형 변환이 아님 
  • 선형 변환에 bias가 추가된 변환이 Affine transform

Affine transform을 Linear transform으로 바꾸기 위해서는 입력으로 사용되는 벡터에 1을 추가하면 됨

과정

Neural Networks에 픽셀 4개로 이루어진 이미지가 입력되었을 때

[[56, 231], [ 24, 2]] 벡터화가 됨

Neural Networks의 레이어는 입력과  bias term(1)로 이루어짐 

Neural Networks의 출력은 3개의 노드 

입력 벡터를 3차원 결과로 만들어주는 선형 변환의 메트릭스가 주어지고 학습을 통해 최적화가 됨

 

bias term 넘어오는 상수 벡터가 있게 됨

-> 직선의 방정식에서 상수가 있는 경우의 변환은 Affine transform

이를 선형 변환으로 만들기 위해 bias term 1을 입력으로 추가

 

행렬을 columns으로 나누고 입력을 상수값으로 사용해서 선형 결합

마지막에  bias term에 해당하는 벡터가 들어옴

 

이를 다시 행렬과 벡터의 곱으로 나타낼 수 있음

columns을 다시 모아서 행렬로 만들고 bias term까지 같이 가져옴 -> Ax형태로 선형 변환 성립

이런 과정으로 Affine transform을 linear transform으로 바꿀 수 있음  Ax

728x90
반응형