1. 데이터 준비
- 거의 비슷하게
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from sklearn.datasets import fetch_california_housing
- 라이브러리 불러오기
california = fetch_california_housing()
df = pd.DataFrame(california.data, columns = california.feature_names)
df["TARGET"] = california.target
- 토치, 텐서 불러오기
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
- 캘리포니아 주택 데이터셋을 파이토치 Float텐서로 변환하고 x, y값 나누기
data = torch.from_numpy(df.values).float()
x = data[:,:-1]
y = data[:, -1:]
print(x.shape, y.shape)
- 학습, 검증, 테스트 셋으로 나누기
# 6:2:2가 목표
ratios = [.6, .2, .2]
train_cnt = int(data.size(0)*ratios[0])
valid_cnt = int(data.size(0)*ratios[1])
test_cnt = data.size(0) - train_cnt - valid_cnt
cnts = [train_cnt, valid_cnt, test_cnt]
- x, y 나누기
- 단, 나누기 전에 데이터를 한번 랜덤으로 셔플해야됨