본문 바로가기

심층신경망3

컬러 이미지를 분류하는 DNN 구현 실습 개발 환경 : pycharm-community-2020.2 (무료 에디션) Anaconda, python3.7, Windows 10 DNN(심층신경망) 구현 2번 째 실습 이번에는 컬러이미지! 1. 데이터 불러오기 사용한 데이터셋은 CIFAR-10 이다. 10가지 사물이 담긴 컬러이미지로, 총 6만장이고 크기는 32 * 32 이다. 컬러 이미지는 3가지 채널(각각 RGB) 로 구성된다. 데이터를 불러오는 패키지 import numpy as np from keras import datasets from keras.utils import np_utils 재사용성을 고려해 데이터 불러오기 코드를 함수로 만들어서(Data_func) 불러오기 할 것이다. def Data_func(): (X_train, y_tra.. 2020. 8. 20.
필기체를 분류하는 DNN 구현 실습 개발 환경 : pycharm-community-2020.2 (무료 에디션) Anaconda, python3.7, Windows 10 1. 기본 파라미터 설정 Nin = 784 Nh_l = [100, 50] number_of_class = 10 Nout = number_of_class - Nout는 분류할 클래스 수와 같은 10개로 설정한다. (0~9까지의 필기체 구분 = 10개) - 은닉 계층은 2개, 각각의 은닉 노드를 100과 50으로 지정했다. 2. 모델 구현 from keras import layers, models class DNN(models.Sequential): def __init__(self, Nin, Nh_l, Nout): super().__init__() self.add(layers... 2020. 8. 19.
DNN(심층신경망) 개념, 경사도 소실 문제 & ReLU 활성화 함수 심층신경망은 은닉 계층을 많이 쌓아서 만든 인공지능 기술이다. (ANN은 주로 은닉 계층 하나를 포함했다.) DNN은 수십 ~ 수백의 은닉 계층으로 구성되기도 해서 좋은 성능을 낼 수 있고 적용 분야가 다양하다. ANN의 은닉 계층 결과는 출력 계층으로 간다. 반면, DNN의 은닉 계층 결과는 제2 은닉 계층으로 들어간다. 다수의 은닉 계층을 활용하면 입력 신호를 더 정교하게 처리할 수 있다. 경사도 소실 문제 & ReLU 활성화 함수 경사도 소실 문제 - DNN은 여러 은닉 계층으로 구성되어 지능망의 최적화 과정에서 학습에 사용하는 활성화 함수에 따라 경사도 소실이 발생할 수 있다. = DNN은 여러 계층으로 구성 + 각 계층 사이에 활성화 함수가 반복적으로 들어있어 오차역전파를 계산할 때 경사도 계산.. 2020. 8. 19.