본문 바로가기

딥러닝14

Multi-class classification(Softmax regression) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 3) - Multi-class classification [Softmax Regression] Softmax Regression이란 Logistic Regression의 일반화된 버전으로, 이진분류가 아닌 클래스가 여러개인 경우에 예측이 가능할 수 있도록 하는 모델이다. 고양이만 인식하는 것이 아니라, 강아지, 그리고 병아리를 인식하고 싶을 때 사용이 가능할 것이다. 고양이를 class 1, 강아지를.. 2020. 10. 11.
Hyperparameter tuning / Batch Normalization 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 3) - Hyperparameter tuning [Tuning process] 이전 강의에서 NN을 적용하는데 다양한 Hyperparameter를 세팅하는 것을 알아보았고, 이번 강의에서는 최적의 Hyperparameter를 찾는 방법에 대해서 알아보도록 하겠다. Hyperparameter는 위와 같이 다양하게 있으며, 각 Hyperparameter의 중요성은 다르다고 할 수 있다. 예를 들어, Ad.. 2020. 10. 10.
[실습] Optimization Methods(Mini-batch, Momentum, Adam Algorithm) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 2) 2주차는 학습 알고리즘을 더 빠르게 학습시킬 수 있는 최적화 알고리즘에 대해서 실습을 진행할 예정입니다. 좋은 최적화 알고리즘은 좋은 결과를 얻기 위해서 몇 일이 걸리는 작업을 몇 시간으로 줄일 정도로 유용한 알고리즘입니다. 우선 이번 실습에 사용되는 패키지입니다. import numpy as np import matplotlib.pyplot as plt import scipy.io import.. 2020. 10. 2.
Optimization(최적화 알고리즘) : Mini-batch/Momentum/RMSprop/Adam 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 2) 이번 주 학습내용은 다음과 같다. 1. Stochastic Gradient Descent(Mini-batch GD), Momentum, RMSProp, Adam과 같은 다양한 최적화 알고리즘에 대해서 알아본다. 2. Random Mini-batch는 더 빠르게 수렴하도록 하고, 최적화를 향상시킨다. 3. Learning Rate를 감소시키면서 학습하는 것에 대해서 알아본다. - Optimizat.. 2020. 10. 2.
[실습] Gradient Checking 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 1) 1주차 마지막 실습은 Gradient Checking 입니다. 사용되는 패키지는 다음과 같습니다. # Packages import numpy as np from testCases import * from gc_utils import sigmoid, relu, dictionary_to_vector, vector_to_dictionary, gradients_to_vector Gradient Chec.. 2020. 9. 26.
[실습] Regularization(L2 Regularization, Dropout) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 1)1주차 두 번째 실습은 Regularization 입니다.딥러닝 모델은 매우 높은 flexibility와 capacity를 가지고 있어서, dataset이 충분히 크기 않다면 overfitting하는 심각한 문제를 일으킬 수 있습니다. overfitting은 training set에는 잘 맞지만, 새로운 sample에 대해서는 일반화되지 않는 문제를 일으킵니다. 이번 실습에서 regularizat.. 2020. 9. 26.
[실습] Initialization 초기화 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 두 번째 강의 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization를 듣고 정리한 내용입니다. (Week 1) 1주차 첫 번째 실습은 초기화(Initialization)입니다. 잘 선택된 초기화를 학습의 성능을 높일 수 있습니다. - Gradient Descent의 수렴 속도 상승 - Gradient Descent가 더 낮은 training error에 수렴하는 확률을 증가시킴 우선 이번 실습에서 분류해야될 planar dataset을 읽어봅시다. import numpy as np import matpl.. 2020. 9. 26.
[실습] Deep Neural Network for Image Classification(cat vs non-cat) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 첫 번째 강의 Neural Networks and Deep Learning을 듣고 정리한 내용입니다. (Week 4) 4주차 두 번째 실습은 이전 실습에서 구현한 NN의 step by step 함수들을 사용해서 첫 번째 실습에서 Logistic Regression으로 구현한 cat vs non-cat 분류기를 NN으로 구현해볼 것입니다. 1. Packages 사용되는 패키지는 다음과 같습니다. numpy is the fundamental package for scientific computing with Python. matplotlib is a library to plot graphs in Python.. 2020. 9. 26.
[실습] Building Deep Neural Network : Step by Step 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 첫 번째 강의 Neural Networks and Deep Learning를 듣고 정리한 내용입니다. (Week 4) 4주차 첫 번째 실습은 딥러닝을 순서대로 구현해보는 것입니다. 여기서 ouput layer를 제외한 layer에서 activation function을 ReLU함수를 사용하고, output layer에서만 sigmoid 함수를 사용할 것이고, 이번 실습에서는 2-layer와 L-layer를 위한 함수를 각각 구현할 것입니다. 시작하기에 앞서 표기법을 정리하겠습니다. - 위첨자 \([l]\)은 \(l^{th}\) layer를 의미합니다. \(a^{[L]}\)은 L번째 layer의 activ.. 2020. 9. 25.
[실습] Planar data classification with a hidden layer 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 첫 번째 강의 Neural Networks and Deep Learning를 듣고 정리한 내용입니다. (Week 3) 3주차에서는 Planar data 분류기를 구현하는데, 1개의 hidden layer를 가진 neural network를 구현할 것입니다. 이 실습을 통해서 다음의 내용을 확인할 수 있습니다. Implement a 2-class classification neural network with a single hidden layer Use units with a non-linear activation function, such as tanh Compute the cross entropy lo.. 2020. 9. 25.