본문 바로가기
728x90
반응형

분류 전체보기190

Singulardecomposition 이번 장에서는 특잇값분해 singulardecomposition을 알아본다. 앞서 고윳값분해에서는 square matrix에서만 정의될 수 있었고, 항상 존재하진 않았다. 또한 주어진 n x n 의 고윳값들이 linear independent해야 정의가 됐었다. 하지만 특잇값분해는 어떠한 형태의 matrix도 정의가능하고 항상 존재한다. SVD도 linear mapping과 연관지은 설명과, 직관적으로 어떤작용을 하는지 알아보자. $A = U \Sigma V^{T}$ 행렬곱으로 표현이 된다. matrix $\Sigma$의 $\sigma_{i}$ 값들을 singular value라고 한다. $\Sigma$ 행렬이 직사각행렬이기 때문에 $ii$를 벗어난 값들(off diagonal term)은 전부 0이다... 2020. 5. 30.
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.
728x90
반응형