Neural Network
여러 개의 unit들이 모인 여러 개의 layer로 이루어진 모델이다.
하나의 unit이 하는 일은 linear transformation + non-linear transformation이다.
Logistic regression에서 모델이 커진 것이라고 생각할 수 있다.
Representation
Nueral Network의 구조는 크게 3가지로 나눌 수 있다.
- input layer
- hidden lyaer
- output layer
몇 개의 layer로 이루어져있는지를 셀 때는 input layer를 포함하지 않는다.
Input layer에는 traninable variable이 존재하지 않기 때문이다.
Parameters & Variables의 Shape
W와 b의 개수와 shape은 모델의 구성에 따라 달라진다.
W는 앞의 layer에서 들어오는 parameter의 수(input parameter)에 의해 결정된다.
Input data의 크기(feature의 수)에 의해 결정되는 것이지 input data의 개수(m)에 의해 결정되는 것이 아니다.
Unit 하나 당 하나의 b를 가지므로 b의 개수는 parameter에 관계 없이 일정하다.
즉, b의 shape은 layer의 unit 수에 의해 결정된다.
아래 모델에서 input layer의 변수는 3개이므로 하나의 unit당 3개의 w를 가지고 1st layer은 4개의 unit으로 구성되어있으므로 $W^{[1]}$의 shape은 $(4, 3)$이다.
Non-linear Activation Function을 사용하는 이유
Linear function을 여러 번 사용하여도 결국 하나의 linear function으로 표현할 수 있다.
즉, activation function으로 linear function을 사용한다면 아무리 많은 layer를 쌓더라도 neural network는 결국 단순한 linear function의 결과를 나타낸다.
한번의 선형변환 만으로는 중요한 정보가 나오지 않기 때문에 이는 의미 없는 행동이 된다.
때문에 non-linear activation function이 사용되어야 한다.
Hidden Layer, Blackbox
사람은 hidden layer에서의 상태를 알 수 없다.
Optimal 상태일 때 어떠한 값을 가지는지, 어떤 값을 넣어야 optimal한 상태가 나오는지는 아무도 모른다.
컴퓨터가 계산을 통해 좋은 signal을 찾아낼 뿐이다.
이렇게 사람이 어떤 상태인지 확인할 수 없기 때문에 hidden layer, blackbox라고 한다.
Optimal Structure
가장 최적의 모델을 만들기 위해서 layer의 수/구조, unit의 수, feature의 개수 등을 어떻게 설정해야 하는지에 대해서는 답이 존재하지 않는다.
경험적으로(empirical) 할 수 있는 최선의 parameter을 이용할 수 밖에 없다.
'Computer Science > AL, ML' 카테고리의 다른 글
Vectorization of Neural Network (0) | 2022.04.09 |
---|---|
Gradient Descent of Neural Network (0) | 2022.04.09 |
Logistic Regression (0) | 2022.04.07 |
Computation Graph (Forward/Backward Propagation) (0) | 2022.04.06 |
Gradient Descent (0) | 2021.08.06 |
댓글