Record
[복습] Deep learning 기본 본문
다시 AI 프로젝트를 하게 되어서 복습할겸 , 지식이 쌓인 이후에 공부하는 기초는 느낌이 다를꺼 같아서 차근차근 공부했습니다 ㅎㅎ 너무 기초적인거는 뛰어넘고 애매한 개념만 정립했습니다.
* 위 내용은 딥 러닝 파이토치 교과서 - 입문부터 파인튜닝까지 (https://wikidocs.net/book/2788) 의 내용을 참고했습니다.
1) 스칼라, 벡터, 행렬, 텐서
딥러닝의 기본 단위로는 스칼라, 벡터, 행렬, 텐서가 있다.
스칼라의 경우 방향을 가지지 않는 하나의 값이고
벡터, 행렬, 텐서의 경우 1차원, 2차원 , 3차원의 형태가 있다. 3차원 이상부터는 다 텐서라고 부른다.

행렬에서 행과 열은 다른 의미를 가지는데 각 행안의 값은 1차원 벡터의 값을가지고 열은 그러한 1차원 벡터가 쌓인 batch를 의미한다.

3d tensor의 경우 batch가 axis=0 를 기준으로 batch size 즉 행렬이 쌓여서 3d텐서가 됨
또한 Vision과 NLP에서 주로 3d 텐서를 사용하는데 vision에서는 width와 length , NLP에서는 length와 dim이 된다.

2. 행렬 곱셈과 곱셈의 차이 ( Matrix Multipication vs Multipication)
matmul -> 행렬곱 (2x2) x (2x1) = (2x1)의 shape가 됨
element wise -> 동일한 위치에 있는 원소끼리 곱하는 것 서로다른 크기의 행렬이 브로드 캐스팅이 된후 element- wise 곱셈을 수행 (2x2) x (2x1) = (2x2)의 shape가 됨
3. 벡터의 내적과 행렬곱셈
내적이 성립되기 위해선 두벡터의 차원이 같아야하며, 두벡터 중 앞의 벡터가 행벡터(기초 방향 벡터)이고 뒤의 벡터가 열벡터(세로 방향 벡터)여야 한다.

-> 이는 가중치 계산에서 중요한 역할을 한다.

4. 비용함수(cost function)
비용함수(cost function) = 손실함수(loss function) = 오차함수(error function) = 목적함수(objective function)
$y=wx+b$ $w$값에 따라 직선이 달라짐 ( 가중치에 따라 값이 바뀐다.) 즉 w,b의 값을 찾아야 함
이렇다면 초기의 랜덤한 w와b에서 오차가 얼마나 났는지 확인 하는 법이 필요
cost function에는 여러가지가 있지만 회귀문제에서 가장 대중적으로 사용되는 MSE( Mean Squared Error )가 있음
$$\text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2$$
$$\text{cost}(w, b) = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2$$
이럴때 $cost(w,b)$를 최소화하는 것이 목표임
5. Optimization(최적화)
optimizer알고리즘을 통해 w와 b를 찾는것이 학습(training)이다.
ex) $H(x) = wx $일때 w가 커지면 cost가 커지고 작아지면 cost가 커진다.

cost가 최소화가 되는 지점은 접선의 기울기가 0이되는 지점이며, 또 미분값이 0이되는 지점
cost function을 미분하여 현재 w에서의 접선의 기울기를 구하고, 접선의 기울기가 낮은 방향 w의 값을 변경하는 작업을 반복
$$\text{gradient} = \frac{\partial\, \text{cost}(w)}{\partial w}$$
이때 편미분을 통해 w에 관한 미분을 본다.
'AI' 카테고리의 다른 글
| RAG 공부 (최신기법 및 동향) (0) | 2026.06.13 |
|---|---|
| [논문리뷰] Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks (0) | 2026.05.19 |
| SKills란? (0) | 2026.02.19 |
| MCP(Model context Protocol)에 대해 알아보자 (0) | 2025.11.29 |
| [논문리뷰] RNN(Recurrent Neural Network) (0) | 2025.04.25 |