Loading...
2022. 4. 5. 01:12

seq2seq model이란?

0. seq2seq는 왜 등장했는가? “말은 끝까지 들어봐야 안다.” 예를 들어 일반적인 RNN의 챗봇을 생각해보자. 사람이 I broke up yesterday라고 적으면 챗봇은 broke up를 보고 슬픈 단어를 생성할 확률이 높아져서 sorry to hear that을 생성 그런데 그 이후 사람이 Today’s perfect weather makes me much sad를 쳤는데 분명 슬픈 문맥인데 챗봇은 perfect weather만 보고 긍정적인 단어를 생성할 확률이 높다가 sad보면서 꼬이기 시작해서 제대로 생성을 못함 그래서 나온 seq2seq는 문장을 encoder에 넣어서 문맥 정보를 decoder에 보낸 뒤 단어를 생성하고 그 단어를 받아 다음 단어를 생성하는 등 모든 문장을 들은 뒤 ..

2022. 4. 1. 19:28

RNN을 이용한 글자 수준의 언어 모델(Character-level language model)

1. language model 주어진 token을 바탕으로 다음 token을 예측하는 task character-level이라는 것은 character sequence에서 이전 character를 바탕으로 다음 character가 무엇인지 예측하는 task ------------------------------------------------------------------------------------------------------------------------------------------------------------- decoder 시작할 때는 생성하고자하는 문장의 단어에 앞서 start token이라는 별도의 token이 들어간다. 예를 들어 ‘난 널 사랑해’를 번역한다고 하자. I ..

2022. 3. 20. 08:55

NAS(Neural Architecture Search) 기법에 대해 알아보기

1. NAS에 대한 오해 model의 일반적인 설계 방식은 model 구조인 architecture를 설계하고 그 위에 hyperparameter를 설정하고 그 위에 데이터를 넣어 train하면서 parameter를 tuning하여 model을 완성하여 사용 이제 가장 밑단의 architecture를 어떤 것을 써야할지 고민이다. 딥러닝이 상식처럼 알려져있지만 딥러닝이 아닌 architecture도 많고 SqueezeNet, ResNet, VGGNet 등등 여러가지가 많다 architecture는 사람이 직접 손으로 만드는 방법도 있지만 automatic하게 찾아내는 방법도 있다. ResNet의 residual block은 기계가 만든 것이 아니라 사람이 창의적으로 만드는 것 Neural architec..

2022. 3. 20. 00:58

GRU(gated recurrent unit)와 LSTM의 backpropagation에 대하여

1. GRU(Gated Recurrent Unit) LSTM의 경량화, 적은 메모리와 빠른 계산시간 LSTM의 cell state와 hidden state를 하나의 hidden state로 일원화 하나의 input gate만 활용함 이전 hidden vector $h_{t-1}$과 input gate에서 계산한 $\tilde{h_{t}}$의 가중평균 형태로 새로운 hidden vector $h_{t}$가 업데이트되어 나감 하나는 다음 step의 hidden vector $h_{t}$로 나가고 예측이 필요하다면 똑같은 hidden vector $h_{t}$가 output layer로 들어가 예측을 수행 흐름과 식을 잘 봐야함 이전 hidden vector $h_{t-1}$가 input gate로 그대로 들..

2022. 3. 16. 00:39

RNN을 개선한 LSTM과 GRU 구조 알아보기

1. LSTM 일반적인 RNN(Vanilla RNN)의 구조 LSTM(Long Short Term Memory)의 구조 조금 더 자세히 살펴보면 이상한 것이 여러가지 있다 LSTM의 핵심 idea는 cell state에 있다 공장에서 컨베이어벨트 박스가 흘러들어가는 모습을 상상해보자. 노동자들이 박스 하나 집어서 이상없는지 확인하고 다시 올려서 그대로 보내듯이 이전에 가공한 정보를 그대로 흘려보내는 컨베이어벨트가 cell state이다. 1. forget gate 이제 입력 $x_{t}$와 이전 hidden state($h_{t-1}$)에서 나온 조합된 잠재정보가 흘러들어가면서 forget gate에서는 어떤 정보를 버릴지 결정한다 버려야할 정보는 sigmoid에 의해 0과 1 사이 값으로 압축이 됨 2..

2022. 3. 15. 23:36

딥러닝 모델의 hyperparameter search

1. hyperparameter 모델을 train할 때 사람이 골라주는 parameter learning rate, batch size, optimizer, …. 등등 어떤 hyperparameter를 사용할지에 따라 모델이 무슨 결과를 낼지는 해보지 않고서는 도저히 예측 불가능 그래서 hyperparameter search를 할 때는 model을 돌려서 결과를 보고나서 마음에 안드면 다른 hyperparameter를 고르고 그래 그런데 model 하나가 돌아갈 때 드는 cost는 거의 대부분 엄청나게 많아 단순히 돌아가는 것 뿐만 아니라 hyperparameter 변화로 모델이 그냥 이상해질 수도 있어서 그에 따른 비용도 엄청 남 그래서 hyperparameter search에는 parameter se..