Machine Learning

    L2 Norm과 Unit Vector 알아보기 : Numpy, TensorFlow, PyTorch의 Norm 연산과 Unit Vector

    L2 Norm과 Unit Vector 알아보기 : Numpy, TensorFlow, PyTorch의 Norm 연산과 Unit Vector

    Vector와 L2 NormVector는 크기와 방향을 표현하는 데이터이다. 예를 들어 $[3,4]$ 라는 Vector가 있다면 이 값은 $[0,0]$을 기준으로 가로 방향으로 3만큼 세로 방향으로 4만큼 이동한 것을 나타낸다. 이러한 Vector 값의 크기값만을 수치화 하기 위한 것이 바로 Norm이며, Norm에는 L1 Norm, L2 Norm, Maximum Norm 등의 종류가 있다. 하지만, 가장 많이 사용되는 Norm은 L2 Norm이며 L2 Norm은 다음과 같은 수식으로 표현된다. $\| \mathbf{x} \|_2 = \sqrt{\sum_{i=1}^{n} x_i^2}$ L2 Norm을 사용해 Vector의 크기 값만을 계산하는 것은 어렵지 않다. 단순히 각 인자를 제곱해 더한 후 마지막에..

    머신러닝에서의 Tensor란 무엇인가? Numpy, TensorFlow, Pytorch의 Tensor 알아보기

    Tensor란 무엇인가?머신러닝을 공부하다보면 Tensor라는 말이 자주 쓰인다 TensorFlow 프레임웍에는 아예 이름에 Tensor가 들어가 있고, Pytorch에서 스칼라 값을 만들 때는 torch.tensor(100) 같이 사용하기도 한다. 도대체 Tensor가 무엇을 뜻하길래 프레임웍의 이름에도 들어가 있고 모델을 만드는 함수의 이름으로도 들어가는 것일까?Tensor는 머신러닝에서 데이터 구조를 일반화한 개념으로, 벡터와 행렬을 포함하여 더 높은 차원의 데이터를 표현할 수 있는 다차원 배열이다. 0차원 스칼라, 1차원 벡터, 2차원 행렬, 그리고 n차원 배열을 Tensor를 사용해 표현할 수 있으며, Tensorflow나 Pytorch같은 프레임웍은 Tensor를 기본 데이터 구조로 채택한다...