본문 바로가기

인공 신경망6

[모두의 딥러닝] 14장 베스트 모델 만들기 오늘은 14장 '베스트 모델 만들기'가 주제입니다. 데이터셋은 와인의 속성 13개와 레이블이 레드와인 : 0, 화이트와인 : 1 입니다. 이진분류 모델을 만드는 데에 있어서 베스트 모델을 만들어 저장하는 법이 주제입니다! 우선 이제까지 했던 것처럼 모델을 적용해보겠습니다. 전처리 과정이 없고, 계속 똑같이 인공신경망으로 모델을 만들기때문에 코드는 동일합니다. from keras.models import Sequential from keras.layers import Dense from keras.callbacks import ModelCheckpoint, EarlyStopping import tensorflow as tf import matplotlib as plt # seed값 설정 seed=0 np... 2020. 7. 23.
[모두의 딥러닝] 13장 과적합 피하기 13장은 제가 잠깐 언급했던 과적합(overfitting)에 대한 챕터입니다. 과적합이 무엇인지에 대해서 정확히 짚어보고 그 해결방안을 주제로 포스팅 하겠습니다. 이번 데이터는 이진분류로 광석과 돌을 예측하는 모델을 설계합니다. 코딩은 지난 포스팅이랑 거의 똑같아요. 간단합니다. from keras.models import Sequential from keras.layers.core import Dense from sklearn.preprocessing import LabelEncoder # 시드값 설정 np.random.seed(3) tf.random.set_seed(3) # 데이터 입력 dataset = df.values X = dataset[:,0:60] X = X.astype(float) Y_ob.. 2020. 7. 14.
[모두의 딥러닝] 12장 다중 분류 문제 해결하기 이제껏 우리는 이진분류에 관한 데이터만 다루었습니다. 12장은 레이블 데이터가 3개 이상의 범주형 데이터를 다룰 때를 위한 챕터입니다. 앞에서 딥러닝을 공부하면서 레이블의 범주가 3개 이상이면 어떤 식으로 알고리즘이 분류할지 계속 궁금했습니다. 출력층은 활성화 함수(sigmoid)가 1 or 0의 값을 뱉어내는데 과연 이럴 때는 어떻게 알고리즘을 설계하거나 작동할지가 진짜 의문이었는데 답은 간단하더군요! ㅋㅋ 그냥 출력층의 개수를 범주의 개수와 똑같이 맞춥니다! 이제 데이터를 보겠습니다. 이번 데이터는 꽃잎의 모양과 길이 등의 정보를 토대로 꽃의 3종류를 분류하는 문제입니다. pair plot은 몇개의 피쳐들에 한하여 범주형 데이터를 시각화 할때, hue를 지정해주고 그리면 굉장히 유용합니다. 범주별 특.. 2020. 7. 12.
[모두의 딥러닝] 11장 데이터 다루기 11장은 10장처럼 간단하게 인공 신경망을 구현하지만, 약간의 데이터를 다루는 법이 추가되어 있습니다. 아주 기초적인 부분이라서 어렵지 않고, 코드 하나 하나 설명이 친절히 나와있어요. 이 책의 큰 장점이죠! 데이터는 pima indian입니다. 인디언 768명으로부터 당뇨병의 여부를 예측하는 문제입니다. 먼저 pandas를 이용해 각 column의 네임을 지정해주면서 DataFrame을 불러옵니다. 그리고나서 describe함수를 통해 기초 통계량을 확인합니다. decribe 함수는 각 컬럼들의 정보들을 한눈에 볼 수 있어서 컬럼이 적을 때는 꽤나 유용합니다. 이렇게 각 컬럼들의 기초 통계량과 컬럼들의 정보를 알아가면서 데이터 분석을 시작합니다. 우리가 가장 궁금하고 예측해야할 컬럼은 바로 'class.. 2020. 7. 11.
[모두의 딥러닝] 10장 모델 설계하기 드디어 이론은 끝났습니다! 10장부터는 데이터를 직접 다뤄보고 여러가지 딥러닝 알고리즘을 설계하는 단계가 시작됩니다! 10장은 그 중에서도 아주 기본적으로 케라스에서 제공하는 함수를 이용해 딥러닝을 구현합니다. 코드도 너무 쉬워서 10장까지 따라오면 큰 문제없이 따라하실 수 있습니다. # 필요한 모듈 import from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense import numpy as np import tensorflow as tf import pandas as pd # 실행할 때마다 같은 결과를 출력하기 위해 설정하는 부분 np.random.seed(3) tf.random.set_seed(.. 2020. 7. 10.
[모두의 딥러닝] 6장/7장 단층, 다층 퍼셉트론 6장부터는 신경망의 이해라는 큰 챕터로 들어섭니다. 드디어 인공지능, 딥러닝에 대해 한 발짝 다가가는 거예요~ 어떻게 인공지능이 21세기 최근에서야 발전하고 핫해졌는지 마주쳤던 한계들과 이를 극복했던 방법도 나옵니다. 그 방법론이 바로 다층 퍼셉트론 이거든요~ 'AI(Artificial Intelligence)' 어떻게 컴퓨터로 인간의 지능을 구현해 낼 수 있을까요? 이는 인간의 뇌 구조와 굉장히 비슷합니다. 인간의 뇌는 약 천억 개의 뉴런으로 이루어져서 각각의 뉴런은 자극을 받고 그 자극이 어느 정도의 임계값을 넘기면 다음 뉴런으로 전달합니다.(임계값을 넘기지 못하면 아무것도 하지 않아요.) 이렇게 계속 수많은 뉴런으로 뻗어나가 인간은 지능을 가지고 생각을 하게 되죠. AI는 바로 여기서 출발합니다. .. 2020. 6. 1.