벡터의 표현

 

고등 교과과정에서의 정의

 

n벡터는 크기와 방향을 가진 물리량으로 다음과 같이 표현될 수 있다.

 

좌표계 없이 표현

 

  • v : 화살표로 표현
  • v의 크기 : 화살표의 길이 측정
  • v의 방향 : 화살표의 방향 측정

 

좌표계 도입하여 표현

 

  • v = ( v₁, v₂, ..., vn )
  • v의 크기

  • v의 방향


벡터의 내적

 

좌표계 없이 표현

 

u * v  = ||u|| ||v|| cosΘ

 

좌표계를 도입해 표현

 

u * v = u₁v₁ + u₂v₂ + ... + unvn

 

두 벡터 u, v간 내적이 0이면 두 벡터는 직교(orthogonal)이다.

 

u * v = 0 ⇔ u⊥v

 

u방향으로의 전진은 v 방향에서 전혀 측정되지 않는다. 그 반대도 마찬가지이다.


투영(projection)

 

두 벡터 u, a가 있을 때, 벡터 u를 a위에 투영한 벡터를

라 하고 다음과 같이 구한다.

                    길이      방향    기저 a에 대한 좌표값

 

벡터 u를 a 위에 투영하고 남은 보완 벡터 (complement vector)는

이다.

 

이 때, 투영 벡터와 보완 벡터는 직교한다.

또, 투영 벡터와 보완 벡터를 더하면 원래의 벡터로 돌아온다.


직교행렬(Orthogonal Matrix)

 

직교행렬이란? 주어진 행렬의 모든 열벡터가 서로 직교하는 행렬을 말한다.

 

ex)

 

| 2  2 -4 |

| 2  1  7 |

| 6 -1 -1 |

 

정규직교행렬(orthonormal matrix)이란? 주어진 행렬이 직교행렬이고 모든 열벡터의 크기가 1인 행렬이다.

 

선형시스템에서의 직교행렬 이용

 

선형시스템 Ax = b에서 행렬 A가 직교행렬이면, 해 x는 역행렬 A^-1의 계산 없이 다음과 같이 구할 수 있다.

 

x의 i번째 요소는 투영으로 계산할 수 있다. 즉, 벡터 b를 행렬 A의 각 열벡터 ai에 투영한 연산 

으로부터

임을 계산할 수 있다.

 

그리고 x의 i번째 요소와 j번째 요소의 계산은 독립적이므로 x의 계산은 병렬처리가 가능하다.

 

ex)

 

|  1 4 | | x₁ | = |  6 |

| -2 2 | | x₂ |    | -2 |

 

x₁ = 1*6 + (-2)*(-2) / 1^2 + (-2)^2 = 10 / 5 = 2

x₂ = 4*6 + 2*(-2) / 4^2 + 2^2 = 20 / 20 = 1

 

 

선형시스템에서 정규직교행렬(=회전행렬)의 이용

 

x의 i번째 요소는 내적(inner product)로 계산할 수 있다. 즉, 벡터 b를 행렬 A의 각 열벡터 ai에 투영한 연산 

로부터

xi = b*ai

임을 계산할 수 있다.

이 또한 마찬가지로 병렬처리가 가능하다.


QR 분해 : A = QR 주어진 행렬에서 정규직교행렬 추출

 

QR 분해란? 아래의 형태를 갖는 두 행렬의 곱으로 나누는 행렬분해이다.

 

   A           Q        R 

| * * * |    | * * * | | * * * | 

| * * * | = | * * * | | 0 * * |

| * * * |    | * * * | | 0 0 * |

 

Ax = b => (QR)x = b => Q(Rx) = b => Qy = b (단, Rx = y )

 

선형시스템을 다음과 같이 두 단계로 간단히 해결할 수 있다.

 

1) 내적(inner product) : y 구하기

 

   Q       y   =  b

| * * * |  | y₁ |    | * | 

| * * * |  | ...  | = | * |

| * * * |  | yn |    | * |

  

2) 후방대치법(Back-substitution) : x 구하기

 

    R         x    =   y

| * * * |    | x₁ |    | y₁ | 

| 0 * * | = | ...  | = | ... |

| 0 0 * |    | xn |    | yn |

 

QR 분해는 그람-슈미트 과정(Gram-Schmidt process)을 행렬로 코드화한 것이다.

 

  • Q : 행렬 A에서 정규직교성을 추출한 행렬
  • R : 행렬 A에서 정규직교성 추출 후 남은(residual), upper triangular matrix(상삼각행렬)

 

QR 분해는 어디에 활용되는가?

 

  • 빠른 계산 : 선형시스템 Ax = b의 해를 구할 때 정규직교행렬 Q를 이용한 계산 부분은 병렬처리로 빨리 계산할 수 있다. R은 병렬처리할 수 ㅇ벗다.
  • b가 자주 업데이트되는 경우 : 선형시스템 Ax = b에서 행렬 A는 고정되어 있고, b는 자주 변하는 문제가 있을 때 미리 QR로 분해해두면 b가 업데이트될 때마다 해 x를 실시간으로 구할 수 있다.

 

QR 분해 vs LU 분해

 

  • LU 분해는 병렬처리할 수 없다.
  • QR 분해는 Q 행렬이 꽉찬 구조를 가진 행렬이라 메모리 사용량이 많다.

특이값 분해(SVD, Singular Value Decomposition)

 

Amxn  =   Umxm   Dmxn (V^T)nxn

| * * * |    | * * * * | | * 0 0 | | * * * |

| * * * | = | * * * * | | 0 * 0 | | * * * |

| * * * |    | * * * * | | 0 0 0 | | * * * |

| * * * |    | * * * * | | 0 0 0 | | * * * |

 

행렬 U, D, V는 다음과 같은 의미가 있다.

 

  • U : m차원 회전행렬 (정규직교행렬)
  • D : n차원 확대축소 (확대축소 크기에 따른 정렬 형태)
  • V : n차원 회전행렬 (정규직교행렬)

ex)

 

그림출처 : 프로그래머스 스쿨

 

U, D, V의 열벡터를 순서대로 p개 취한다면, 강한 응집성을 가지는 p개의 방향으로 수선의 발을 내린 A의 근사치 A'를 재구성할 수 있다. (근사치를 취한 값도 원래의 행렬과 똑같은 형태를 띄게 되지만, 의미 있는 정보만이 남아있게 된다.)

 

그림출처 : 프로그래머스 스쿨


주성분분석(Principal Com ponent Analysis, PCA)

 

주성분분석이란? 데이터의 공분산행렬(covariance matrix)에 대한 고유값 분해에 기반을 둔 직교분해이다.

 

K개의 n차원 데이터 

가 있을 때, 데이터의 중심 m과 공분산행렬 C는 다음과 같이 구한다.

 

 

공분산행렬에 대한 주성분분석은 아래와 같다.

 

 Cnxn  =  Wnxn    Dnxn  (W^T)nxn

| * * * |    | * * * | | λ₁ 0 0 | | * * * |

| * * * | = | * * * | | 0 ... 0  | | * * * | 

| * * * |    | * * * | | 0 0 λn | | * * * |

 

  • W : n차원 회전행렬
  • D : n차원 확대축소

집합(Set)

 

연산에 닫혀 있는 집합

 

집합이 연산이 닫혀 있다는 것은? 집합에서 임의의 원소를 뽑아 연산을 수행한 결과가 여전히 집합의 원소로 있다면, 해당 집합은 연산에 닫혀 있다고 한다.

 

ex) 

 

{ x|x ∈ R } 실수 집합

 

위 집합은 덧셈 연산과 곱셉 연산 모두 닫혀 있다.

 

{ -1, 0, 1 }

 

위 집합은 덧셈 연산에는 닫혀 있지 않지만 곱셈 연산에는 닫혀 있다.


공간(space)

 

공간이란? 두 연산에 닫혀 있는 집합

 

  • 덧셈 연산에 닫혀 있다.
  • 스칼라 곱 연산에 닫혀 있다.

모든 n벡터 집합 R^n은 n차원 벡터 공간(vector space)이라 부를 수 있다.

 

열공간(Column Space)

 

행렬 A의 열벡터들에 대한 가능한 모든 선형조합의 결과를 모아 집합으로 구성할 수 있다. 이 집합을 열공간이라 하고 다음과 같이 표기한다.

 

col(A)

 

  • Consistenent Linear System
    • b ∈ col(A) 만족
  • Inconsistent Lienar System
    • b ∈ col(A) 불만족

최소제곱법(least squares method)

 

최소제곱법이란? 해가 없음에도 불구하고 할 수 있는 최선을 구하는 것이다.

 

행렬 A가 정의하는 열공간에서 목표 b를 만들 수 없을 때, 가장 b와 유사한 벡터는 열공간에 투영한 지점일 것이다.

즉, 달성가능한 최선의 목표 proj_wb를 생각할 수 있다. (이제 ^는 윗 첨자 _는 아랫첨자를 표시하는데 사용하겠다...)

 

최소제곱법은 원래의 선행시스템 Ax = b가 아닌 다음의 선형시스템을 해결한다.

 

Ax' = b' (단, b' = proj_wb)

 

이 방법은 목표 b와 달성가능한 목표 b'의 차이를 나타내는 벡터 ( b - b' )의 제곱길이를 최소화시키는 의미를 가지기 때문에 최소제곱법이라 불리운다.

 

최소제곱법 해를 구하는 법

 

주어진 선형 시스템의 양변에 전치행렬 A^T를 곱하면 최소제곱법의 해룰 구할 수 있다.

 

Ax = b

⇒ A^T Ax' = A^Tb

⇒ x' = ( A^T A )^-1 A^Tb

 

최소제곱법으로 구한 해는 원래의 선형시스템을 만족하는 해는 아니나, 다음을 만족하는 근사해가 된다.

 

Ax' = proj_wb

 

최소제곱법 응용 

 

2차원 공간에 m개의 정점 (({(x_i, y_i)}^m)_i=1)이 그림과 같이 있을 때, 이를 잘 설명할 수 있는 직선 y = mx + b를 구하는 문제를 생각해 보자. 이를 선형회귀(linear regression) 문제라 한다.

 

선형회귀 문제는 다음과 같이 최소제곱법으로 풀 수 있다.

 

1) 선형시스템 구성 : 직선이 각 정점을 모두 지나간다고 가정하고 선형시스템 Ax = b 구성 (단, 해는 존재 X)

2) 최소제곱법 적용 : A^TAx' = A^Tb를 생각하고, x' = | m' | 를 구한다.

                                                                      |  b' | 

 


통계학(statistics)

 

통계학이란? 데이터 수집(collection), 구성(organization), 분석(analysis), 해석(interpretation), 표현(presentation)에 관한 학문

 

통계학의 구분

 

  • 기술통계학 (descriptive statistics) - 수집, 구성, 표현
  • 추측통계학 (inferential statistics) - 분석, 해석

 

개념 정의

 

  • 모집단 (population)
    • 어떤 질문이나 실험을 위해 관심의 대상이 된느 개체나 사건의 집합
    • ex) 전교 남학생의 키
  • 모수 (parameter)
    • 모집단의 수치적 특성
    • ex) 키의 평균
  • 표본 (sample)
    • 모집단에서 선택된 개체나 사건의 집합

도수(Frequency)

 

도수란? 어떤 사건이 실험이나 관찰로부터 발생한 횟수

 

표현 방법

 

  • 도수분포표 (Frequency Distribution Table)
  • 막대그래프 (Bar graph)
    • 질적 자료
  • 히스토그램 (Histogram) (막대그리프와 비슷한 형태지만 순서가 중요하고, 막대끼리 띄워진 부분이 없음)
    • 양적 자료

 

상대도수

 

도수를 전체 원소의 수로 나눈 것

 


줄기-잎 그림

 

양적 자료를 줄기와 잎으로 구분하는 것이다.

 

그림출처 : www.safetygo.com/xe/index.php?mid=column&listStyle=viewer&category=392&document_srl=12470

줄기-잎 그림 예시

그림에 나타난 데이터는 18, 19, 19, 20, 20, 20, 21 ... , 61, 64이다.

분포도와 데이터값을 바로 알 수 있다.


평균 (mean)

 

전체 데이터를 더한 후 데이터의 갯수만큼 나눈 것

 

x₁ + x₂ + ... + x_n / n = 1/n (n(sigma)i=1)x_i

 

모평균 μ (population mean)

 

모집단 전체 자료일 경우

 

표본 평균 xbar

 

모집단에서 추출한 표본일 경우


중앙값(Median)

 

평균의 경우 극단 값의 영향을 많이 받는다. 이를 보완하기 위한 것이 중앙값이다.

 

중앙값이란? 주어진 자료를 높은 쪽 절반과 낮은 쪽 절반으로 나누는 값, 자료를 순서대로 나열했을 때 가운데 있는 값을 의미

 

자료의 수가  n일 때,

 

n이 홀수면 (n+1)/2번째 자료값

n이 짝수면 n/2번째와 n/2+1번째 자료값의 평균


분산 (Variance)

 

편차의 제곱의 합을 자료의 수로 나눈 값이다. (편차란? 값과 평균의 차이)

 

자료가 모집단일 경우는 모분산(population variance)

 

σ^2 = 1/N(N(sigma)i=1)(x_i - μ)^2

 

자료가 표본일 경우는 표본분산(sample variance) scipy 모듈의 분산은 표본분산을 이용하는 것이다.

 

s^2 = 1/n-1(n(sigma)i=1)(x_i - xbar)^2


표준편차 (Standard Deviation)

 

분산의 양의 제곱근이다.

 

모표준편차(population standard deviation)

 

σ = root(1/N(N(sigma)i=1)(x_i - μ)^2)

 

표본표준편차(sample standard deviation)

 

s^2 = root(1/n-1(n(sigma)i=1)(x_i - xbar)^2)


범위(Range)

 

자료를 정렬하였을 때 가장 큰 값과 가장 작은 값의 차이


사분위수 (Quartile)

 

전체 자료를 정렬했을 때 1/4, 1/2, 3/4 위치에 있는 숫자

 

사분위범위 (IOR, interquartile range)

 

Q₃ - Q₁


z-score

 

어떤 값이 평균으로부터 몇 표준편차 떨어져있는지를 의미하는 값

 

모집단의 경우

 

z = x - μ / σ

 

표본의 경우

 

z = x - xbar / s

 

 

+ Recent posts