
선 체험, 후 이론 전략. 이론만 주야장천 듣는 것이 답답해서, 무작정 구현해 봤습니다. 어디서, 어떻게, 왜 쓰는지 알아야 납득하는 타입입니다. 설명은 차후에 이론 파트에서 다루겠습니다.
import keras
import pandas as pd
import numpy as np
# CSV 파일 읽기
data = pd.read_csv('gpascore.csv')
# 결측값 제거
data = data.dropna()
# 정답(y)과 입력(x) 데이터 분리
y_data = data['admit'].values
x_data = []
for idx, rows in data.iterrows():
x_data.append([rows['gre'], rows['gpa'], rows['rank']])
# 모델 생성 (입력층 → 은닉층 → 출력층)
model = keras.models.Sequential([
keras.layers.Dense(64, activation='tanh'),
keras.layers.Dense(128, activation='tanh'),
keras.layers.Dense(1, activation='sigmoid'),
])
# 모델 컴파일
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
# 모델 학습
model.fit(np.array(x_data), np.array(y_data), epochs=1000)
# 예측 (gre, gpa, rank 순서)
predict = model.predict(np.array([[750, 3.70, 3], [400, 2.2, 1]]))
print(predict)




