Artificial Intelligence/Deep Learning
[DL] R2 예제_california
inee0727
2022. 6. 23. 21:43
# sklearn.datasets.fetch_california_housing
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.datasets import fetch_california_housing
datasets = fetch_california_housing()
x = datasets.data
y = datasets.target
x_train, x_test, y_train, y_test = train_test_split(x,y, train_size=0.7, shuffle=True, random_state=50)
# print(x)
# print(y)
# print(x.shape, y.shape) #(20640, 8) (20640,)
# print(datasets.feature_names)
# print(datasets.DESCR)
#2. 모델구성
model = Sequential()
model.add(Dense(5,input_dim=8))
model.add(Dense(50))
model.add(Dense(50))
model.add(Dense(10))
model.add(Dense(20))
model.add(Dense(20))
model.add(Dense(10))
model.add(Dense(5))
model.add(Dense(10))
model.add(Dense(1))
#3. 컴파일, 훈련
model.compile(loss='mse', optimizer = 'adam')
model.fit(x_train, y_train , epochs=500, batch_size=20)
#4. 평가, 예측
loss = model.evaluate(x_test, y_test)
print('loss : ',loss)
y_predict = model.predict(x_test)
from sklearn.metrics import r2_score
r2 = r2_score(y_test, y_predict) #R 제곱 = 예측값 (y_predict) / 실제값 (y_test)
print('r2스코어 : ', r2)
#[결과]
#loss : 0.6568951606750488
#r2스코어 : 0.5060183446539768
[결과]
https://github.com/junginee/study/blob/main/keras/keras08_2_california.py
GitHub - junginee/study
Contribute to junginee/study development by creating an account on GitHub.
github.com