본문 바로가기

딥러닝/cs231n9

10. Recurrent Neural Networks RNN: sequential 데이터 학습에 활용 수행하려는 task에 따라 다양한 수의 input과 output을 가짐(one-to-many, many-to-one, many-to-many) RNN에는 hidden state가 추가됨hidden state는 계속해서 업데이트 되지만, 함수 f와 파라미터 W는 매번 동일한 값을 가진다.     (예시) RNN을 이용하여 prefix가 주어졌을 때, 어떠한 문자가 출력되어야 하는 지 예측하는 예시위 예씨의 경우 가장 스코어가 높은 값만 사용하게 되면 올바른 결과가 나오지 않는다.확률분포를 사용해서 샘플링했기 때문에 hello를 만들어낼 수 있었는데, 확률분포에서 샘플링하는 방법을 통해 일반적으로 모델에서 다양성을 얻을 수 있게 된다. RNN은 hidden s.. 2024. 5. 6.
9. CNN Architectures 1. AlexNet (2012)ImageNet classification task 잘 수행, First CNN-based winner1) CONV1227 x 227 x 3 inputfilter: 96개의 11x11 필터(stride:4)(227-11)/4+1=55 -> 55 x 55 x 96파라미터 갯수 : (11*11*3)*96=35K2) MAX POOL1filter: 3x3(stride:2)(55-3)/2+1=27->27 x 27x 96파라미터 갯수: 0 - 비선형함수로 ReLU 사용- Regularization(data augmentation, dropout)- optimization으로 SGD momentum 0.9- Learning rate 1e-2- ConvNet에서 2개 row로 나누는데 (.. 2024. 5. 5.
8. Deep Learning Software 1. CPU vs GPU- GPU는 NVIDIA- GPU는 Matrix Multiplication에 강함!- CPU는 GPU보다 훨씬 적은 수의 코어가 있지만, CPU코어가 더 빠름- GPU는 개별적인 RAM을 갖고 있음.- 실제 모델과 가중치는 GPU RAM에 저장되어 있고, train data는 컴퓨터 저장장치에 저장되어 있기 때문에, data를 가져오는데에 시간이 많이 걸린다 -> 해결을 위해 데이터 작으면 RAM에 넣어놓고, HDD보다는 SDD를 사용하고, CPU 다중 스레드를 이용해서 데이터를 RAM에 미리 pre-fetching Programming GPU -> CUDA, OpenCL, UdacitycuDNN을 사용한 CUDA가 매우 강력함 2. Deep Learning Frameworks(T.. 2024. 4. 29.
7. Training Neural Networks 2 1. Optimization : Adam이 성능이 가장 좋고 가장 많이 쓰이는 알고리즘!training 데이터의 loss값 낮추는 것learning rate은 hyperparameter!SGD+Momentum : 가속도 있음 따라서 기울기가 0인 지점(local minima, saddle points)에서도 update가 진행될 수 있다.  (SGD는 mini batch를 사용)여기서 rho는 보통 0.9, 0.99이용 여기서 rho는 보통 0.9, 0.99이용 SGD는 지그재그로 최적화가 되지만(noise 발생), Momentum이 있을 때는 noise를 평균화시켜서 지그재그한 정도가 줄어든다.Nesterov MomentumAdagradRMSProp Adam : RMSProp+MomentumL-BFGS.. 2024. 4. 29.
6. Training Neural Networks 1 1. Activation Functions(비선형 연산) ReLU를 사용하자! ReLU가 표준으로 많이 사용됨. 하지만, learning rate를 잘 결정해야 한다! 1) Sigmoid 단점: Saturated neurons kill the gradients 기울기가 0에 가까워지는 현상: Saturation -> Vanishing Gradient 문제를 일으킴 (backprop에서 0이 계속 전달됨) 단점: Sigmoid outputs are not zero-centered 2) tanh 장점: zero centered는 해결됨 단점: still kills gradients when saturated 3) ReLU 장점: 양의 값에서는 saturation이 되지 않는다. 장점: 매우 빠름 단점: 음의.. 2024. 4. 8.
5. Convolutional Neural Networks 참고: https://lynnshin.tistory.com/7?category=919376 [5강] Convolutional Neural Networks 이번에는 Convolutional Layer에 대해 배울 것이다. 먼저 CNN의 역사를 알아보자. 1957년 Frank Rosenblatt가 Mark I Perceptron machine 을 개발했다. 이 기계는 perceptron이라고 불리는 알고리즘을 구현한 최초의 기 lynnshin.tistory.com 1. Fully Connected Layer Fully Connected Layer는 32x32x3의 이미지를 펴서 3072차원의 벡터로 만든뒤 가중치 W(10x3072 행렬) 벡터를 곱해서 activation을 layer의 출력값으로 얻는다. 2.. 2024. 4. 8.
4. Introduction to Neural Networks 1. Backpropagation gradient 구하기 위해서 backpropagation 사용 backpropagation은 chain rule 사용 2. Neural Network 2024. 4. 2.
Lecture 3: Loss Function and Optimization 1. Loss Function 손실함수 http://vision.stanford.edu/teaching/cs231n-demos/linear-classify/ SVM loss(=Hinge loss) - 여기서 1은 margin -> margin 조절 가능함. - 단지 정답 클래스가 정답이 아닌 클래스보다 margin이상으로 높은지가 중요함! Softmax - 마이너스 로그 확률분포 : 확률이 커야햐므로 -> (마이너스 로그) loss는 작은 것 - 전체 합은 1이됨 2. Optimization Gradient Descent loss를 최소화 시키는 w를 찾아야 하는데, 전체 training set의 loss 평균을 구하고, gradient를 구해 stepsize(learning rate)를 곱해줘서 des.. 2024. 4. 1.
Lecture 2 : Image Classification Pipeline Computer Vision이 어려운 이유 1) Viewpoint variation 2) Illumination 3) Deformation 4) Occlusion - 가려져있는 것/일부만 보이는 경우 5) Background clutter 6) Intraclass variation Rule-based vs Data-Driven Approach - Rule-based - Hand crafted features 1) edge&corners : 픽셀값이 갑자기 변하는 경우(미분해서) 2) Bag of words 3) HOG(Histogram of Oriented Gradient for human detecting) - Data-Driven Deel Learning Alg. === [Feature Extract.. 2024. 4. 1.