목록DL (41)
rueki
배치 정규화는 역전파 시, 파라메터의 스케일 변화를 일으킴에 따라, Gradient Vanishing 및 Exploding을 막는데, 이전에는 Relu와 같은 activation function을 사용하거나 learning rate를 작게 설정해서 Gradient Vanishing을 막았다. 배치정규화의 장점으로는 학습을 빨리 진행할 수 있으며, 초기값에 의존을 할 필요가 없고, overfiting을 방지한다. 배치 정규화의 등장으로 인해 dropout을 사용하지 않아도 되며, 가중치 decay도 느리게 설정이 가능하다. 배치 정규화가 이루어지는 process는 아래와 같다. 일단 각각의 feature가 서로 상관이 없다고 가정을 하고, 그에 대한 평균과 분산을 구해서 각각을 mini-batch 단위로 ..
지금 성능 좋기로 제일 많이 나와있고, 많이 쓰이는 Adam optimizer 알고리즘에 대해서 알아보려고한다. Momentum과 RMSprop을 합친 알고리즘으로서, 다양한 범위의 딥러닝 구조에서 잘 작동한다고 소개되있기도 한다. 알고리즘을 살펴보기 전에, 파라메터의 종류에 대해 먼저 살펴보고자 한다. a (learning rate) : 어느 최적화 알고리즘에서나 나오듯, 이 부분이 보편적으로 많이 보이면서 중요하다. 완벽한 최적의 값을 알 수 없기에, 찾을 때까지 학습을 하며 바꾼다. $B_{1}$ : 모멘텀 부분에 관련된 파라메터로서 이동 평균 및 가중 평균을 의미하고 default로 0.9정도로 사용하면 좋다고 한다. $B_{2}$ : 이동가중평균이다. 0.999가 좋다고 한다. ϵ : 값의 변화..
Attention이 등장하고, 기계번역의 품질이 월등히 좋아졌는데, Attention에 대해서 오늘 알아보는 시간을 가지고자한다. 어텐션의 기본 정의는 "원 문장의 어떤 단어들에 더 주목할 것인가?" 라고 해석하면 이해가 쉽다. 즉, 다시 말해서, 예를 들어 I say hello, you say good bye 라는 문장이 들어왔을 때, 이를 전체 문맥 및 문장으로 가정하고, 매 시점마다 어떤 단어에 집중을 해야하는 지 동적으로 정하기 위함이다. 기존 RNN 기반의 Seq2Seq 구조에서는 Encoder의 마지막 context vector만 사용한다는 단점이 있었으나, Attention을 사용하면, Encoder에서의 각 Time step에서의 Context vector를 넘겨줌에 따라 이의 단점을 해결..
RNN은 순환 신경망으로서, Sequence data에 적합한 모델이다. 흔히 텍스트 데이터와 시계열 데이터를 다룰 때 많이 사용하는 구조이다. RNN이 다른 Network와 다른 점은 hidden state를 가지고 있다는 것이다. hidden state라 함은, 이전 layer의 정보를 기억할 수 있는 것이라 생각하면 쉽다. 이전 정보를 이어 받아서 기억해서 계속 갖고 다음 계층에 전달하는 방식이다. 왼쪽의 식에서 y를 output h는 hidden state를 의미한다. output은 h를 전달받아서 출력하는 구조이며, hidden state 값 h는 이전 hidden state 값 ht-1을 받아서 갱신한다. Activation function으로는 하이퍼볼릭 탄젠트 함수가 사용되었다. tanh ..