본문 바로가기

딥러닝(Deep Learning)56

[D&A Deep Session] 5차시 - 8. CNN 심화 # LeNet, AlexNet, VGG 1. LeNet : 1998년 개발된 CNN 알고리즘으로 LeNet-5가 가장 대표적인 모델이다. 이는 흑백 이미지에서 학습된 7 layer CNN으로 Input - Conv(C1) = Subsampling1(S2) - Conv(C3) - Subsampling(S4) - Conv(C5) - FC6 - FC7(output) 으로 구성된다. output size = (input size - filter size + (2 x Padding)) / stride + 1 Input size : ( 1, 32, 32 ) [ convolution, filter size : 5x5, filter 개수 : 6, stride : 1 ] C1 layer : (6, 28, 28) [ su.. 2022. 4. 12.
[D&A Deep Session] 4차시 - 7. CNN # CNN ( Convolutional Neural Nework, 합성곱 신경망 ) : 지역 정보를 학습시키기 위한 신경망 모형으로 완전연결 신경망과 달리 새롭게 Convolution Layer와 Pooling Layer를 사용한다. 또한 이미지의 Region Feature를 Convolution Layer와 Pooling Layer를 이용해 추출해 나온 Feature를 MLP의 input으로 사용하기 때문에 이미지 처리와 관련된 Vision분야에서 좋은 성능을 보인다. * 완전연결 계층의 단점 : 데이터의 형상이 무시된다!! ( 몇차원의 데이터이든 1차원으로 변환해 입력해주기 때문 ) * 기본 구조 Convolution Layer : 지역 정보를 뽑아내기 위한 층 Pooling Layer : Featu.. 2022. 4. 2.
[D&A Deep Session] 3차시 - 6. 정규화와 오버피팅 억제 # Internal Covariate Shift ( 내부 공변량 변화 ) : 학습 과정에서 계층 별로 입력 데이터의 분포가 달라 나타나는 문제로 학습 속도가 느려지며 Gradient Vanishing에 영향을 준다. 이를 극복하기 위해 정규화를 적용할 필요가 있다!! 정규화의 장점 : - 학습 속도 감소 - 오버피팅 억제 ( 드롭아웃 등의 필요성 감소 ) - 가중치 초기값에 대한 의존성감소 ( 하이퍼파라미터의 설정이 자유로움 ) 1. Batch Normalization ( 배치 정규화 ) : 학습시 미니배치 단위로 매 순간의 input을 N(0,1)로 정규화 장점 : - 오차 역전파법 시 파라미터의 크기에 영향을 받지 않아 학습률을 크게 잡을 수 있어 빠른 학습이 가능하다 - 자체 regularizati.. 2022. 3. 29.
[D&A Deep Session] 3차시 - 5. 최적화와 가중치 초기화 # 최적화란? : 가중치 매개변수의 최적값을 탐색하는 방법 ( 경사 하강법의 단점을 보완 ) - 경사 하강법의 단점 1. 학습할 때마다 모든 데이터 셋을 활용하기 때문에 학습이 오래걸리며 메모리 문제가 발생할 가능성이 높다. 2. 적절한 학습률을 찾기 어렵다 ( 너무 작으면 시간이 오래걸리고, 너무 클 경우에는 최솟값 계산이 어렵고 loss 값이 커지는 방향으로 진행된다 ) 3. 최종 목적인 Global minimum을 찾지 못하고, Local minimum에 갇힐 수 있다. 이러한 경사 하강법의 단점을 보완하여 '확률적 경사 하강법 (Stochastic Gradient Descent)'이 등장하였다. : 모든 데이터 셋 활용 -> 랜덤하게 추출한 일부 데이터만을 사용 ( 잦은 업데이트를 통한 빠른 최적.. 2022. 3. 29.
[D&A Deep Session] 2차시 - 4. 오차 역전파법 # MLP ( Multi Layered Perceptron )에 대한 공부 후... - 비선형 분류가 가능하다! - 신경망에서는 데이터가 입력된 입력층에서 시작해 은닉층을 거쳐 출력층에서 출력 값이 도출되는 Feed Forward (순전파) 방식을 취한다. - 비용함수를 정의해서 네트워크가 얼마나 나쁜지 판단 -> Cost를 어떻게 줄여 네트워크를 향상시킬 수 있을지 알아야 한다. *다음과 같은 신경망 구조를 가정하고 설명!!* 1. 비용함수 = MSE 2. 각 뉴런의 노드와 출력값은 0 ~ 1 사이의 값 ( 확률같이 ) 3. 효율적인 학습법인 경사 하강법을 어떻게 적용할지 생각하는 것이 목표!! 4. 16 x 8 x 4 신경망 가정 ( 순서대로 입력층, 은닉층, 출력층 ) 이 때 각각의 가중치를 연결의.. 2022. 3. 21.
[D&A Deep Session] 2차시 - 3. 퍼셉트론 # 인공 신경망 입력층 : 입력된 데이터 은닉층 : 입력층과 출력층 사이에 추가된 밀집층 ( 밀집층 : 픽셀과 뉴런이 연결되어 빽빽한 모습의 층 ) 출력층 : 신경망의 최종 값을 출력 - 각각에 입력층에 각기 다른 가중치로 계산되어 다음 은닉층으로 이동 -> 이 때 절편값인 b도 더해진다. - 인공 신경망에서는 출력층에서 계산되는 z값을 계산하는 단위를 뉴런이라고 부른다. ( 최근에는 유닛이라고 부름 ) - 양쪽의 뉴런이 모두 연결되어 있기 때문에 완전 연결층이라고도 부른다. - 출력층에 적용하는 활성화 함수(뉴런에서 출력값을 변경시키는 함수)는 종류가 제한되어 있고 이진 분류일 경우 시그모이드 함수, 다중 분류일 경우 소프트맥스 함수를 사용한다. - 은닉층의 활성화 함수는 비교적 자유롭다. ( ex. .. 2022. 3. 21.