from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
# pandas 라이브러리를 불러옵니다.
import pandas as pd
# 깃허브에 준비된 데이터를 가져옵니다.
!git clone https://github.com/taehojo/data.git
# 피마 인디언 당뇨병 데이터셋을 불러옵니다.
df = pd.read_csv('./data/pima-indians-diabetes3.csv')
X = df.iloc[:,0:8] # 세부 정보를 X로 지정합니다.
y = df.iloc[:,8] # 당뇨병 여부를 y로 지정합니다.
# 모델을 설정합니다.
model = Sequential()
model.add(Dense(12, input_dim=8, activation='relu', name='Dense_1'))
model.add(Dense(8, activation='relu', name='Dense_2'))
model.add(Dense(1, activation='sigmoid', name='Dense_3'))
model.summary()
# 모델을 컴파일합니다.
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# 모델을 실행합니다.
history = model.fit(X, y, epochs=100, batch_size=5)
Epoch 1/100
154/154 [==============================] - 2s 2ms/step - loss: 1.7955 -
accuracy: 0.5430
... (중략) ...
Epoch 100/100
154/154 [==============================] - 0s 2ms/step - loss: 0.5705 -
accuracy: 0.7161
약 71%의 정확도를 보이고 있다.
df = pd.read_csv('./data/pima-indians-diabetes3.csv')
X = df.iloc[:,0:8]
y = df.iloc[:,8]
데이터 셋을 불러오고 세부정보를 x로 당뇨병 여부를 y로 지정합니다.
model = Sequential()
model.add(Dense(12, input_dim=8, activation='relu', name='Dense_1'))
model.add(Dense(8, activation='relu', name='Dense_2'))
model.add(Dense(1, activation='sigmoid', name='Dense_3'))
model.summary()
모델을 설정해줍니다.
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])\
history = model.fit(X, y, epochs=100, batch_size=5)
모델을 컴파일 후 실행해줍니다.