기초 노트/EECS 498-007 (ComputerVision) 14

EECS 498-007 Lecture 13 : Attention

이번 강은 Attention에 대해서 다룬다.  지난 시간에는 새로운 구조의 NeuralNet인 RNN에 대해서 배웠다. RNN은 서로 다른 시퀀스의 벡터를 다룰 수 있는 강력한 신경망 구조였다.MLP와 같은 일반적인 Feedforward neural network(순방향 신경망)에서 Recurrent Neural Networks(순환 신경망)로 오면서 우리는 machine translation, image captioning과 같은 다양한 테스크를 해결할 수 있게 되었다.  지난 시간의 내용을 다시 한번 떠올려보자.sequence to sequence with RNN의 문제는 무엇이었을까RNN은 $x_1$에서 $x_T$까지의 sequence를 입력으로 받는다. output은 $y_1$에서 $y_{T^`..

EECS 498-007 Lecture 12: Recurrent Neural Networks 정리

오늘은 새로운 종류의 신경망인 RNN에 대해서 다룬다.  본격적으로 시작하기 전에, 우리가 지난 강의 딥러닝의 소프트웨어와 하드웨어를 다룬 장에서 파이토치와 텐서플로우를 비교한적이 있었는데 현재 강의하고 있는 전후인 19년도 10월 10일에, 파이토치 1.3이 업데이트 되었다.파이토치가 더 선호되면서도, 텐서플로우보다 모바일에서 배포하기 까다로운 단점이 여전히 있던 문제가 있었는데이제는 금번 업데이트로, 이론적으로 모바일에서도 배포하기 좋은 환경이 되었다! 이렇게 한 학기에도, 심지어 1~2주전에 다룬 내용이 outdated되는 걸 볼 수 있는게 바로 딥러닝 분야이다.!  우리는 지난 두번의 강의에 걸쳐 신경망 학습의 기본 전략(nuts and bolts)에 대해서 자세히 다루었다.이제 우리는 ConvN..

EECS 498-007 Lecture11 : Training Neural Networks Part2 정리

Neural Network을 학습시키는 전략에 대해서 다루어 보는 2번째 시간이다.   지난 시간에는 활성화 함수와, 데이터의 전처리, 가중치의 초기화, Regularization에 대해서 다루었고 이번 시간에는 Learning rate schedule, hyperparameter optimization과 같은 학습의 요소와 전략들과모델 앙상블(Model ensemble), 전이 학습(Transfer Learning), 배치 학습(large-batch training)에 대해서 다룬다.  첫번째로 살펴볼 것은 Learning Rate Schedule이다.                   constant learning rate schedule은 지금까지 적용해온 learning rate를 그대로인데, 처..

EECS 498-007 Lecture10: Training Neural Networks Part1 정리

Neural Net을 학습시킬때 고려해야 할 요소들에 대해서 알아본다.   Neural Net을 학습시킬때는  학습 사전에 결정되어 진행되는 것들이 있고Learning rate schedule과 같이 학습중에 동적으로 변동되는 것들이 있으며훈련이 모두 마친후 모델 앙상블, 혹은 전이학습(Transfer Learning)과 같이 좀 더 downstream task로 나아가는 방법이 있다.  첫번째로 알아볼 것은 활성화 함수(Activation Function)이다.  NeuralNet에서 활성화 함수로서 선택할 수 있는 대표적인 선택지이다. 디테일에 대해서는 지난시간 내용을 다시 참고하길 바란다.   학습시 Acitvation Function을 Sigmoid함수로 설정했을때의 기능에 대해서 알아보자.Sig..