본문 바로가기
데이터분석

[수학] 선형대수 1장 벡터ㆍ행렬ㆍ행렬식

by 101Architect 2017. 7. 7.

프로그래머를 위한 선형 대수 

http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&barcode=9791160501308



==============================

    1. 벡터 행렬 행렬식

==============================


수치를 묶는 데이터 : 수치의 조합 -> 공간 안의 점으로 간주!


벡터 : 숫자를 일렬로 늘어 놓은 것 -> 화살표, 또는 공간안의 점

행렬 : 숫자를 직사각형으로 늘어 놓은 것 -> 공간에서 고간으로 직고 사상

행렬식 : 귀찮은 계산 -> 위의 사상에 따른 부피 확대율



-------------------

1.1 벡터와 공간 (대상)

-------------------

1.1.1 우선적인 정의: 수치의 조합을 정리하여 나타내는 기법


* 종벡터 : 세로로 늘어선 벡터

* 횡벡터 : 가로로 늘어선 벡터


* T Transpose : 전치 행과 열을 바꿈


 ? > 주로 종벡터를 이용하는 이유?

    변수 x 에 함수 f 를 적용하다. -> f(x)

    벡터 x 에 행렬 A 를 적용하다. -> Ax

    Ax 로 쓰기 위함


 ? > 수란?

    성분이 실수 : 실벡터, 실행렬

    성분이 복소수 : 복소벡터, 복소행렬

    (실수 : 3.14... (무한)소수로 표현되는 수

     복소수 : 허수 단위 i를 사용 (실수)+(실수)i 로 표현)



1.1.2 '공간'의 이미지


* 덧셈 : 같은 차원의 벡터에 대해

* 정수배 : 임의의 수c에 대해


* 위치 벡터 : 벡터를 위치에 대응

    열벡터 (x,y,z...)

    -3 이라면 반대방향의 원래길이의 3배


* 화살표의 덧셈

    화살표의 이어 붙임

* 화살표의 정수배

    실이를 늘이고 줄임


 ? > 일차원 벡터란

    일차원 벡터 a 와 수 a 는

    1차원 배열과 변수 하나와 같은 개념 명시적 변환이 필요하다.



1.2.3 기저


* 선형 공간 : 덧셈과 정수배가 정의된 세계 (벡터 공간)

    길이나 각도가 정의되어 있지 않다. 다른 방향의 벡터끼리 대소를 비교하는 방법은 없다.

    회전(=길이를 유지하며 방향을 바꾸다) 도 정의 할수 없다.


 ? > 내적이나 외적?

    내적 : 좌표가 변하면 내적도 변해버려서 좋지 않다.

    외적(벡터곱) : 3차원 공간에 특화된 개념

        3차원 벡터 x,y에 대해, 외적 x*y 를 변으로 하는 평행사변형의 면적과 같다.


* 기저 : 기준이 되는 한쌍의 벡터

* 좌표 : 각 기준에서 몇 보 나아가는 가


* 화살표(벡터), 수의나열(표현방법) 로 표현


* 기저의 조건

    1) 어떤 벡터 v라도 v = x1e1 + x2e2 ... 의 형태여야함 (x는 임의수)

    2) 벡터 v 를 나타내는 방법은 한가지

    예) 기적 벡터

        평면 위의 2개의 벡터가 독립된 방향을 향함

        공간 위의 3개이 벡터가 독립된 방향을 향함


* 선형결합

    주어진 벡터에 대해 수를 가져와 생기는 벡터

        u1e1 +..+ unen

    선형결합으로 임의의 벡터 x가 나타나고 거기다 그 표현법이 유일할때 e1,..,en 을 기저 라고 부른다.



1.1.5 차원


* n 차원이면 기저벡터는 딱 n 개

    그러나 반대로 기저 벡터의 개수가 그 공간의 차원을 정의


* 차원 = 기저벡터의 개수 = 좌표의 성분수



1.1.6 좌표에서의 표현


* 산의 높이가 123m 이다.

    단위 m 이 기저!


* 어떤 기저를 취하여 좌표를 표시해도 덧셈과 정수배는

    좌표 성분마다 덧셈과 정수배가 된다.


-------------------

1.2 행렬과 사상 (관계)

-------------------


1.2.1 우선적인 정의: 순수한 관계를 나타내는 편리한 기법


* 행렬 : 수를 직사각형 형태로 나열한 것

* 정방행렬 : 행과 열의 수가 같은 행렬


* 행렬과 벡터 곡

    - 행렬과 벡터의 곱은 벡터

    - 행렬의 결수(가로폭)가 '입력'의 차원수, 행 수(높이)가 '출력'의 차원수

    - 입력의 종벡터를 가로로 넘겨 계산하는 느낌



1.2.2 여러가지 관계를 행렬로 나타내다 (1)


* 행렬 곱

    상승 효과나 규모 효과가 없고, 단순히 각 요인의 합계다.



1.2.3 행렬은 사상이다


* 사상 : 변환 (대등한 것에 이동한다.) 과 유사

    n 차원 공간에서 m 차원 공간이라는 다른 세계에 옮기는 것

    행렬 A 에 의해 공간 전체가 어떻게 변하는가


    행렬 A

          1  -0.3

        -0.7  0.6

        -> 즉 1 을 1  로 이동 0 은 -0.3 으로 이동

              0  -0.7        1     0.6


    (1,0) 의 목적지 (1,-0.7)

    (0,1) 의 목적지 (-0.3,0.6)

    -> 공간의 전체가 변한다.


* mxn 행렬 a 는 n 차원 공간을 m 차원 공간에 옮기는 사상을 나타냄


* 사상이 같다면 행렬도 같다!!

    즉, 같은 크기의 행렬 a, b 가 임의의 벡터 x에 대해 항상 ax = bx 라면 a=b 다



1.2.4 행렬의 곱=사상의 합성


* k x m * m x n = k x n


    1. 오른쪽 행렬을 세로로 단락을 분해

    2. 분해한 각각의 왼쪽 행렬을 곱

    3. 결과를 접착


    A행렬   B행렬

    (a b  * (1 2  ->  (a+b  a+b   -> (a1+b3  a2+b4

     c d)    3 4)      c+d  c+d )     c1+d3  c2+d4 )

    tip> a b, c b 를 1,3 로 곱하고 다시 a b, c b 를 2,4 에 다 곱함


* 사상의 합성

    A B 행렬의 곱

        A 하고 B 한다 = BA

        (BA)x = B(Ax)

    A B C 행렬의 곱

        A 하고 B 하고 C 한다 =CBA


    B 의 폭(열 수)과 A의 높이(행 수) 가 맞지 않으면 안된다.


* f 한것을 g 한다 -> g(f(x))

    AB -> B 하고 A 한다.


* A[[0, -1],  B[[2, 0]  일때

    [1, 0]]     [0, 1]]

    AB

        -> B 하고 A 한다. [[0,1],[1,0]]

        B 에 의해서

         [[0],   [[2],

          [1]] -> [0]] 이 되어 가로로 늘어나고

        A 에 의해서

         [[1],  [[-1]

          [0]] ->[0]] 이 되어 돌아 가게 된다.


    BA

        -> A 하고 B 한다. [[0,1],[1,0]]

        A 에 의해서

         [[1],  [[-1]

          [0]] ->[0]] 이 되어 돌아 가고

        B 에 의해서

         [[0],   [[2],

          [1]] -> [0]] 이 되어 가로로 늘어난다.



 ? > 곱이 사상의 합성이다?

    행렬의 각 열은 각 축 방향의 단위 벡터 e1...en 의 목적지가 된다.

    [ 1 0

      0 1 ]

    첫번쨰 열 1, 0 은 x 축의 단위 벡터 x=1, y=0

    두번쨰 열 0, 1 은 y 축의 단위 벡터 x=0, y=1




1.2.5 행렬의 연산 성질

* 수 c, 벡터 x 행렬 A,B,C

    - (cA)x = c(Ax) = A(cx)


* 벡터도 행렬의 일종?

    n 차원 벡터를 nx1 행렬로 간주

    2 차원 벡터는 2X1 해열ㄹ로 간주

    종 곱하기 횡

        | * ㅡ = [ ]

    횡 곱하기 종

        ㅡ * | = ·



1.2.6 행렬의 거듭제곱 = 사상의 반복

A(1 0, 0 0)     : 상하를 찌그러트리는 행렬

B(0 -1, 1 0)    : 반시계 방향으로 90도 회전한 행렬

        x 축이 1, 0 -> 0, -1 로 바뀌고 y 축이 0, 1 -> -1, 0 로 바뀜


    (AB)²

        (B 하고 A 한다)²

        90 도 회전하고 찌그러트리고 다시 90 도 회전하고 찌그러트리면 scla 값 ·만 남는다.

    A²B²

        (B 하고)² (A 하고)²

        90 도 회전하고 다시 90 도 회전한 다음 찌그러트리면 ㅡ 횡벡터가 되고 다시 찌그려트려도 ㅡ 횡벡터 이다.



1.2.7 영행렬, 단위행렬, 대각행렬


* 영행렬 (O)

    모든 행렬의 성분이 0인 행렬


    - 사상 : 모든 것을 원점으로 이동 시키는 사상


* 단위행렬 (I)

    왼쪽 끝부터 대각선 \ 위만 1이고 다른것은 모두 0인 행렬

    1 0

    0 1


    모든 성분이 1인 행렬은 아님


    - 사상 : 아무것도 하지 않는 사상


* 대각행렬

    대각성분: 정방 행렬의 대각선 \ 상의 값을

    비대각성분 : 대각성분 이외의 값


    비대각성분이 모두 0인 행렬


    - 사상 : 축에 따른 신축(늘리고 줄이고)이 있고, 대각성분이 각 축의 늘고 주는 배울이 됨


    대각성분에 0 이 있는 경우

        가로 방향이 눌려 납작해 짐

    대각성분에 음수가 있는 경우

        점점 공간이 눌려 결국 뒤집혀 (거울상) 버림



1.2.8 역행렬 = 역사상

    정의 : A 의 역행렬, 정방행렬 x 에 곱하면 단위 행렬 i 가 되는 행렬

        이동점 y 를 갖고 원래의 점 x 를 구하다.

    x - A -> y

    x <- A-¹ - y


    기본성질

        - (A-¹)-¹ = A

         -¹ 을 두번 하면 취소

        - (AB)-¹ = B-¹A-¹

         B 하고 A 한것을 원래대로 돌려 놓으려면 A 부터 취소하고 B 를 취소

        - (Aⁿ)-¹ = (A-¹)ⁿ

         A 를 n 번 한것은 원래대로 돌려 놓으려면 A 의 취소를 n 번

        - AA-¹ = I

        - (AB)(B-¹A-¹) = ABB-¹A-¹ = I

        - (Aⁿ)(A-¹)ⁿ = I


    대학행렬의 경우

        A = diag(a1,..,an) 축에 따른 신축

        B = diag(1/a1,..,1/an)

        BA = I

        B 는 A의 역행렬

        a 에 0 이 하나라도 있으면 역행렬을 만들수 없다.

            A 가 납작하게 눌리는 사상이 되어 만들 수 없음



1.2.9 블록행렬

    큰 문제를 작은 부분 문제로 분할 하는 것

    정의 : 행렬의 종횡에 단락을 넣어 각 구역을 작은 행렬로 간주


    작은 행렬을 마치 추상화 하듯

        ( 1 2 | 0 1   * (0 1

          3 4 | 0 1      0 1

          ------------------

          1 2 | 0 1      0 1

          3 4 | 0 1 )    0 1)


        작은 행렬

            A (1 2  b (0 1     f(0 1

               3 4)    0 1) ...  0 1)


        큰 행렬

        ( A B   * (E

          C D )    F)


         =>(A*E+B*F

            C*E+D*F)



    행벡터 : 블록 단락을 행으로만 구분하여 나눈 행렬

    열벡터 : 블록 단락을 열로만 구분하여 나눈 행렬


    블록대각행렬

    \ 대각선상의 블록이 모두 정방행렬

        추상화한 큰 행렬 A, D 를 제외한 나머지는 O 행렬


1.2.10 여러가지 관계 행렬


    고계 차분, 고계 미분

    다음 번의 상태는 최초의 상태로 결정된다.

    (뭔지....-___-...???)


    정수항의 나눗셈(제법)

        y=Ax+b 를 행렬의 곱으로 만듬

        y = A b * x

        1   o 1   1


반응형

'데이터분석' 카테고리의 다른 글

빅데이타 분석 맛보기  (0) 2022.06.13
2018.02.27 통계의 힘  (0) 2018.02.28
2017.05.01 Head First Data Analysis  (0) 2017.05.01
[수학] 통계학입문 (두번째)  (0) 2016.06.04
[수학] 통계학입문 (첫번째)  (0) 2016.05.02