본문 바로가기
728x90
반응형

수학18

Eigendecomposition 이번 장에선 행렬을 여러개의 행렬의 곱으로 decomposition하는 방법에 대해 알아본다. 먼저 Cholesky Decomposition에 대해 알아본다 행렬 $A$가 $LL^{T}$로 factorized로 가능하다는 것이다. 이 때 $L$은 lower-triangular matrix이고 positive diagonal elements이다. $L$은 $A$의 Cholesky factor라하고, $L$은 unique하다고 한다. 아래는 Cholesky decomposition의 예제이다. 결과적으로 앞서 계산된 $l$들을 가지고 순차적으로 element들을 연산해낼 수 있다는 것을 보여주는 것이다. 이점으로는 $A$의 determinant를 구한다고 한다면 $det(LL^{T})$는 $det(L)det.. 2020. 5. 30.
Higher-Order Derivatives gradient는 주어진 함수를 한번 미분한 결과였다. 이번 장에서는 주어진 함수를 여러번 미분한 Higher-Order Derivatives를 알아본다. Higher-Order Derivatives는 주어진 함수에 대한 특정 지점에서 풍부한 정보를 얻고 싶을 때의 정보를 알려준다. gradient는 local영역에서의 slope를 의미하는데, 그 지점에서의 함수 형태가 얼마나 곡선을 띄고 있는지 등에 대한 정보를 알 수 있다. 아래의 경우 두 개의 입력을 받는 함수를 보자. $f$를 $x$에 대해 2번 미분하거나 $n$번 미분한다는 말이고, 두개의 입력을 받기 때문에 $x$에 대해 먼저 미분하고 $y$를 미분하거나 순서를 바꾸어서 반대의 순서를 나타낸다. 이 notation에 대해 숙지하자. Highe.. 2020. 5. 30.
Backpropagation and Automatic Differentiation 머신러닝 알고리즘들이 데이터를 잘 성명하면서 일반화성능이 좋은 모델 파라미터를 찾는게 목적인데, 좋은 파라미터라는 것은 GD(gradient descent) 방식으로 찾게 된다. train 데이터를 잘 설명하는 objective function을 define하고 이를 minimize하는 방법으로 parameter를 찾는 방식으로 GD를 수행한다. gradient를 구하는 함수가 (5.109)와 같이 매우 복잡한 경우라고 생각해보자. 이런 계산을 효율적으로 계산하게 도와주는 알고리즘이 Automatic Differentiation이고, 이의 특별한 경우가 backpropagation알고리즘이라고 부른다. backpropagation는 gradient를 계산하기 위해 활용하는 최적화 알고리즘인데, 간단하게 .. 2020. 5. 30.
Gradients of Matrices 행렬이 주어졌을 때 행렬을 벡터로 미분한 gradient 혹은 행렬을 다른 행렬로 미분한 gradient 들은 multidimensional tensor로 계산이 된다. 이 gradient를 어떻게 구하는지 알아본다. multidimensional tensor이기 때문에 output의 dimension과 크기만 신경쓰면 지금까지 배운 미분개념에서 크게 벗어나지 않는다. 예를 들어 행렬 $A \ (m \times n)$ 행렬 $B \ (p \times q)$로 미분되면 4 dimensional tensor $J$가 되고, $J_{ijkl}$ 엔트리에는 각각 partial derivatives 값들이 들어간다. 행렬을 벡터 또는 행렬로 미분했을때 output의 shape을 잘 상기해야한다. $A$라는 행렬을.. 2020. 5. 27.
Differentiation of Univariate/Multivariate Functions 최적화 문제를 풀기 위해서 GD(Gradient Descent) 방법으로 최적의 해를 찾는다는 것을 들어보았을 것이고, 이 gradient는 소위 기울기라 알려져 있다. 이 gradient는 미분을 통해 쉽게 얻는다는 것도 알고 있다. 벡터, 행렬의 미분으로 가면 더 복잡해 지지만 다항식에 대한 미분은 어렵지 않게 구할 수 있다. 이번 장에서는 머신러닝에서 미지수가 하나인 univariate function 에 대한 내용을 알아본다. 머신러닝 알고리즘을 접하다 보면 자연스레 최적의 parameter값을 찾는 문제에 직면하게 된다. 이렇게 최적의 값을 찾아가는 과정을 learning이라고 한다. 이 과정에서 필요한 정보가 gradient 이다. Vector Calculus (a) 와 같은 경우는 + 모양의.. 2020. 5. 27.
Linear Algebra(6) eigen value/vector 이에 따른 matrix의 성질에 대해 알아보자. 책에는 다음과 같이 eigenvalue equation을 정의하고 있다. $A$ 행렬에 대하여 eigenvalue $\lambda$와 eigenvector $x$를 보시라. 4.26 식은 eigenvalue가 유일하지 않다는 걸 말해주기 위함이다. 고유벡터는 상수 곱으로 또다른 고유벡터로 표현될 수 있다. $cx$도 $x$처럼 eigenvector가 될 수 있다. $A$에 모든 고유벡터들은 고유값과 함께 span을 하게 된다. 이때의 span 하는 공간을 $\lambda$에 의해 정의되는 $A$의 eigenspace라고 하고 $E_{\lambda}$로 표기한다. $A$의 eigenvalue들의 집합을 eigenspectru.. 2020. 4. 27.
728x90
반응형