프로젝트/인공지능

[인공지능 #17 ] 인공지능/딥러닝 실전입문_머신러닝에 딥러닝 적용

david2012 2017. 8. 19. 16:41

인공지능의 실전입문에 관한 글입니다.

알고리즘을 만드는것이 아니고, 만들어진 알로리즘을 활용하는 방법에 관한 글입니다.

자동차 운전을 위해 자동차를 만드는방법을 알필요는 없습니다. 물론 알면 좋기는 하겠지만, 서로 별도의 분야라고 할수있습니다.


본글은 지금까지 한 머신러닝에  딥러닝을 적용하는 방법에 대한 글입니다.

글의 순서는 아래와 같습니다.


=========================================================================================


1. 머신러닝에 딥러닝 적용 ==>[ # 170819 5 keras-bmi ]

  - 모델구조를 정의하고 , 모델을 컴파일 하고 , 모델을 이용해서 학습을 시킴,  이외 과정은 딥 러닝과 동일함.

  - 즉 딥러닝은 머신러닝의 한 부분임을 알수있음.

170819 6 bmi.csv


4. 참고자료


=========================================================================================


[ # 170819 5 keras-bmi ]


from keras.models import Sequential

from keras.layers.core import Dense, Dropout, Activation

from keras.callbacks import EarlyStopping

import pandas as pd, numpy as np

# BMI 데이터를 읽어 들이고 정규화하기 --- (※1)

csv = pd.read_csv("bmi.csv")

# 몸무게와 키 데이터

csv["weight"] /= 100

csv["height"] /= 200

X = csv[["weight", "height"]].as_matrix() # --- (※1a)

# 레이블

bclass = {"thin":[1,0,0], "normal":[0,1,0], "fat":[0,0,1]}

y = np.empty((20000,3))

for i, v in enumerate(csv["label"]):

    y[i] = bclass[v]

# 훈련 전용 데이터와 테스트 전용 데이터로 나누기 --- (※2)

X_train, y_train = X[1:15001], y[1:15001]

X_test,  y_test  = X[15001:20001], y[15001:20001] 

# 모델 구조 정의하기 --- (※3)

model = Sequential()

model.add(Dense(512, input_shape=(2,)))

model.add(Activation('relu'))

model.add(Dropout(0.1))

model.add(Dense(512))

model.add(Activation('relu'))

model.add(Dropout(0.1))

model.add(Dense(3))

model.add(Activation('softmax'))

# 모델 구축하기 --- (※4)

model.compile(

    loss='categorical_crossentropy',

    optimizer="rmsprop",

    metrics=['accuracy'])

# 데이터 훈련하기 --- (※5)

hist = model.fit(

    X_train, y_train,

    batch_size=100,

    nb_epoch=20,

    validation_split=0.1,

    callbacks=[EarlyStopping(monitor='val_loss', patience=2)],

    verbose=1)

# 테스트 데이터로 평가하기 --- (※6)

score = model.evaluate(X_test, y_test)

print('loss=', score[0])

print('accuracy=', score[1])




[참고자료]


https://www.docker.com/products/docker-toolbox  ==> docker 설치방법

https://www.data.go.kr/main.do