본문 바로가기

전체 글111

Dropout 과 Batch Normalization Index RegularizationDropout 이전에 Regularization에 대해 잠깐 알아보면, Regularization 이라는 것은 특정 가중치가 급격히 커지는것을 막기 위한 규제를 의한다. (특정 weight가 너무 크다는것은 입력데이터에 너무 민감하고, 복잡한 모델일 가능성이 크기 때문에 과적합 경향이 그만큼 크다고 말할 수 있다)주로 Cost함수에 weight를 넣어서 penalty를 부여하는 방식을 사용한다. 대표적으로 사용하는 L1, L2 방식은 각각 가중치의 절대값, 제곱값을 Cost함수에 추가하는 방법이다 Dropout Dropout의 목적은 overfitting을 막기위함으로, 일종의 *Regularization(=가중치 규제) 기법이라고 할 수 있다. NN을 학습시키다 보면.. 2023. 6. 29.
활성화함수(Activation function)와 Optimizer IndexActivation function (활성화함수)Sigmoid : differential 하고 exploding 하지 않는다 (0~1사이의 값을 가짐). 하지만 vanishing gradient문제가 있다. Tanh : Sigmoid에 *2-1 을 해서 범위를 -1 ~ 1 로 바꿔준 함수. 주로 LSTM에서 사용된다. ReLU : 입력이 음수이면 0을, 양수이면 입력값 그대로를 반환한다. [0,∞) 로 exlpoding 하며, 무엇보다 미분했을때의 결과가 0 혹은 1이기 때문에 vanishing 문제를 해결해주고, 계산속도가 빠른 장점이 있다. 그러나 미분값이0인 node에 해당하는 가중치의 경우 학습이 안되는 문제가있다. Leaky ReLU : ReLU에서 특정 노드가 학습이 안되는문제 (sp.. 2023. 6. 29.
역전파(Backpropagation)와 Vanishing gradient IndexBackpropagation (역전파)Backpropagation is way of computing gradient efficiently to update millions of network parameters // gradient를 효율적으로 계산하는 방법아래의 수식처럼 최종 Cost를 여러 layer에 거쳐 chain rule을 이용해 미분해보면, 미적분과 같이 어려운 계산없이 x,y,y^과 같이 이미 가지고 있거나, Feedfoward 단계에서 계산된 값들의 선형결합(곱셈,덧셈)으로 gradient가 계산됨을 알 수 있는데, 이것이 Backpropagation 이다.  Vanishing gradient problemDeep neural network를 학습하다보면 (특히 layer의 개수.. 2023. 6. 29.
비용함수(Cost function)와 경사하강법(Gradient Descent) IndexCost function 인공지능 모델을 '학습'할때는 모델이 무엇이든 학습목적은 똑같다 : "목적함수(Objective function)을 최적화하는 Parameter를 찾는것" 이다. 그리고 이것은 일반적인 경우 비용함수(Cost function)을 최소화 하는 것이다. Cost는 Output(=실제값)과 Target(=예측값)간에 차이를 의미한다. 아래 그림은 분류문제의 예시이기 때문에 output의 값이 여러개이고 각output마다 cost를 따로 계산하여 더하는 모습이다.Cost function으로 주로 쓰이는 함수는 회귀문제의 경우 MSE,MAE,RMSE. 분류문제에서는 Cross-Entropy 손실함수가 주로 쓰인다.Cross-Entropy 함수는 아래 수식과 같이 실제값(y)=1 .. 2023. 6. 29.