본문 바로가기

Deep Learning16

폐암데이터 이진분류 실습 딥러닝 신경망 구성 1. 구조 설계 (뼈대 / 층쌓기) 2. 학습 / 평가 방법 설정 3. 학습시키고 시각화 4. 모델 평가 Sequential로 모델 객체 선언후 model.add( )로 입력층 / 중간층 / 출력층 쌓기 입력층 : input_dim = 특성입력 개수, activation = '활성화함수 종류', units = '적당히 개수' 중간층1 : input_dim 안넣어줘도 됨 (입력층에서 넣음). activation 활성화함수와 units만 넣으면 됨 중간층2 ... 출력층 : 이진분류의 activation은 0과 1로 나눠주는 sigmoid로 고정 / units 도 1로 고정됨 학습 / 평가 방법 설정 . compile ( loss = ? , optimizer = ? , metrics = .. 2022. 9. 5.
딥러닝 간단정리 [인코딩 / 이미지 데이터 처리 / 최적화모델 / MLP, CNN, VGG16 ] 데이터 전처리 (인코딩) 1. 원핫인코딩 : 다중분류의 경우 모델이 예측한 확률값과 실제 정답의 scale (범위)가 같아야 제대로 오차를 출력해낼수 있음 따라서 신경망이 제대로 학습할 수 있도록 정답데이터의 원핫인코딩이 필요함 a) pandas 객체로 리턴 pd.getdummies(답 데이터) b) ndarray 객체로 리턴 from tensorflow.keras.utils import to_categorical to_categorical(답 데이터) c) complie할때 인코딩 진행하기 loss = 'sparse_categoricial_crossentropy' 2. CNN 다차원 데이터 처리 : CNN을 사용할 경우다차원 데이터에 대한 표시가 필요함 흑백은 1, 컬러(rgb)는 3 으로 표시해야하므.. 2022. 9. 5.
CNN (합성곱 신경망)의 개념 [ MLP와 CNN의 구조비교 / 패딩 / 축소샘플링 (스트라이드, 풀링) / ] 회색으로 이동할 경우 mlp로는 파악하기 어려움 Feature Extractor (특성추출) + Classifier (분류) (MLP 연결하여 사용 Fully-Connected layer 완전 연결망 >> MLP filter 를 원본이미지의 영역에 입혀 같은 위치의 값을 곱하고 필터안에서 더해줌 특성 x (원본) 가중치 w (필터) 특성들의 곱의 합 (y = ax + b) 특성을 추출하다보니 이미지의 크기가 작아짐 (4x4 > 2x2) 3차원 RGB / 채널 : 3 패딩 : 특성을 추출하다보니 원본데이터와 비교하겨 이미지 크기가 작아지고, 남는 가장자리의 데이터에 0을 채워넣는 것 원본이미지가 커서 굳이 한칸씩 세밀하게 분석하지 않아도 될 것 같을때 스트라이드를 사용하여 건너뛰며 합성공을 수행 데이터에 .. 2022. 9. 5.
오차 역전파의 개념 fit을 실행 > Model을 통해 결과 출력 > 예측값과 실제값의 오차 비교 = 순전파 예측된 결과를 가지고 입력층으로 돌아가 학습하는 과정 : 역전파 Sigmoid 함수의 가장 큰 기울기가 3 / 10, 즉 최대치가 0.3이다 출력값의 오차가 100이라 가정한다면 중간층에서 Sigmoid함수를 쓸 경우 미분된 값의 최대값이 0.3이므로 역전파로 전달해나갈때 처음 보낼떈 30밖에 전달되지 않으며 그다음은 30의 30%만 전달되며 기울기가 소실되어 loss나 정확도가 개선되지 않는다 따라서 중간층에 Sigmoid를 사용하지 않는다 일반적으로는 Relu를 사용하며, 최대값을 1 이상의 데이터도 표현할 수 있다 2022. 9. 2.