Loading [MathJax]/jax/output/CommonHTML/jax.js
본문 바로가기

수학/선형대수

[선형대수] 선형변환과 행렬

Linear Transformation

행렬 연산은 벡터를 변환하는 것으로도 볼 수 있다.

벡터xRn을 벡터bRm으로 차원 변환시킨다고 할 수 있다.

 

 

또, 다음과 같은 변환도 있다.

 

1. 스칼라배 변환

[c00c]를 곱하면 c배로 변환한다. (c>0: 확대, c<0: 축소)

 

2. 90도 회전 변환

[0110]

 

3. θo 변환

Rθ=[cosθsinθsinθcosθ]

 

Rθδ=Rθ+Rδ

RθRθ=R2θ
RθRθ=I
detRθ=1
R1θ=Rθ=RTθ

 

공식 유도

http://blog.naver.com/PostView.nhn?blogId=dalsapcho&logNo=20144939371&parentCategoryNo=&categoryNo=29&viewDate=&isShowPopularPosts=false&from=postList

위의 그림은 Rθ=[cosθsinθsinθcosθ] 에서 첫번째 열의 공식이다. 두번째 열을 유도하려면 x축에서 회전변환한 것이 아닌, y축을 회전변환하면 유도가 된다.

 

3. y=x대칭 변환

[0110]

https://www.slideshare.net/ahra-cho/08-linear-transformation

 

4. 다항식 미분(Differentiation)

x(t)=a0+a1t+...+ant  
y(t)=ddtx(t)=b0+b1t+...+bn1tn1일때,  
x와 y를 벡터로 표현하면 다음과 같다.  


x=[a0a1...an]y=[b0b1...bn1]  
따라서 미분 변환은 xRn을 yRn1으로 차원을 줄여준다고 생각할 수 있다.  
  


4-1 null space  
미분에서 null space는 미분 값이 0이 되어야 하므로 상수값만 존재하는 벡터라고 할 수 있겠다.  
이를 벡터로 나타내면 x=c1[a00...0]+c2[0a1...0]+...cn[00...an]이기 때문에, c1만 존재하는 벡터가 null space라고 할 수 있고
 a0[10...0] 라고 표현할 수 있다. 


 (c1의 벡터가 상수를 표현하고, c2의 벡터는 1차식을 표현.. 하는데 n차식을 가지게 되면 0이 아닌 다른 값이 나옴)
  


4-2 예시  
x(t)=a0+a1t+a2t2+a3t3  
x=[a0a1a2a3],x1=[1000],x2=[0100],x3=[0010],x4=[0001] 라고 나타낼 수 있고,  


x1은 상수(1)를, x2t를, x3t2 , x4t3을 대표한다. 따라서 ddtx1=0,ddtx2=1, ddtx3=2tddtx4=3t2가 된다.  
  


따라서 미분 값을 벡터로 표현하면 다음과 같다.  
x1=[0000],x2=[1000],x3=[0200],x4=[0030] 이고,  
A=[0100002000030000]  
  
결론적으로, 입력값x=[a0a1a2a3]가 들어오면 우리가 일반적으로 알고 있는 미분 값인 a1+2a2t+3a3t2가 출력된다.

  

* P(t)=2+tt2t3일때  
AP=[0100002000030000][2111]=[1230]p1p2p3p4=>ddtp(t)=12t3t2

  

 

5. 다항식 적분(integration)

미분과 똑같이 표현하면 
x=[a0a1...an]y=[0b1...bn+1]  
따라서 미분 변환은 xRn을 yRn+1으로 차원을 키워준다고 생각할 수 있다.  

 


5-1 null space  
위와 똑같이 x=c1[a00...0]+c2[0a1...0]+...cn[00...an]라고 하자.
 상수를 적분하면 상수가 나오기 때문에 null space를 만족하는 값은 0벡터 밖에 없다.

 


5-2 예시
x=[a0a1a2a3],x1=[1000],x2=[0100],x3=[0010],x4=[0001] 라고 나타낼 수 있고,  


x1은 상수(1)를, x2t를, x3t2 , x4t3을 대표한다. 
  
따라서 적분값을 벡터로 표현하면 다음과 같다.  
x1=[01000],x2=[001200],x3=[000130],x4=[000014] 이고,  
A=[000010000120000130 00014]  
  
결론적으로, 입력값x=[a0a1a2a3]가 들어오면 우리가 일반적으로 알고있는 적분값인 a0+12a1t2+13a2t3+14a3t4이 출력된다.


AdiffAint=I를 만족한다. 즉, A미분은 A적분의 left inverse이고, 반대로 A적분은 A미분의 right inverse이다. (적분의 행이 더 크니까 왼쪽 오른쪽이 정해져 있음)

 

 

θ line에 투영

[10],[01]에 대해서 투영한다고 생각하면, 각각 [cos2cossin],[sincossin2]이 된다.

따라서 Pθ=[cos2cossincossinsin2]

 

 

 

입출력(벡터1)만 주어졌을 때, 다른 벡터의 입력(벡터2)으로 출력 구하기

 

입력 벡터(벡터 1)들이 elementary basis vector일 때만 적용 가능하다.

 

이 방법은 벡터들이 elementary할때만 가능한데, 이는 당연하다. x1,x2를 행렬로 표현하면 I이기 때문에 출력은 A와 같기 때문이다.

https://www.slideshare.net/ahra-cho/08-linear-transformation%EF%BB%BF

 

 

 

 

참고

http://blog.naver.com/PostView.nhn?blogId=dalsapcho&logNo=20144939371&parentCategoryNo=&categoryNo=29&viewDate=&isShowPopularPosts=false&from=postList

http://www.howl.or.kr/?xn_content=8489

https://www.slideshare.net/ahra-cho/08-linear-transformation