본문 바로가기

Minding's Programming/Tensorflow tutorial

[Tensorflow Tutorial] 자동차 연비 예측하기 : 회귀

728x90
반응형

https://www.tensorflow.org/tutorials/keras/regression?hl=ko 

 

자동차 연비 예측하기: 회귀  |  TensorFlow Core

Note: 이 문서는 텐서플로 커뮤니티에서 번역했습니다. 커뮤니티 번역 활동의 특성상 정확한 번역과 최신 내용을 반영하기 위해 노력함에도 불구하고 공식 영문 문서의 내용과 일치하지 않을 수

www.tensorflow.org


 

  • 회귀는 가격이나 확률 같이 연속된 출력 값을 예측하는 것
  • Auto MPG 데이터셋 사용하여 70~80년대 자동차 연비 예측하는 모델 제작
  • 실린더 수, 배기량, 마력, 공차 증량 같은 속성 있음
# 산점도 행렬 위해 seaborn패키지 설치
!pip install -q seaborn

import pathlib

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers

Auto MPG 데이터셋

데이터 다운로드

dataset_path = keras.utils.get_file("auto-mpg.data", "http://archive.ics.uci.edu/ml/machine-learning-databases/auto-mpg/auto-mpg.data")
dataset_path

>>>
/root/.keras/datasets/auto-mpg.data
# 판다스 사용하여 데이터 읽기
column_names = ['MPG','Cylinders','Displacement','Horsepower','Weight',
                'Acceleration', 'Model Year', 'Origin']
raw_dataset = pd.read_csv(dataset_path, names=column_names,
                      na_values = "?", comment='\t',
                      sep=" ", skipinitialspace=True)

dataset = raw_dataset.copy()
dataset.head()

dataset.head()

데이터 정제하기

  • null값 제거
dataset.isna().sum()

>>>
MPG             0
Cylinders       0
Displacement    0
Horsepower      6
Weight          0
Acceleration    0
Model Year      0
Origin          0
dtype: int64
# null값 삭제
dataset = dataset.dropna()

 

  • 데이터 타입 확인 : Origin 칼럼은 범주형이므로 원-핫 인코딩 변환
dataset.dtypes

>>>
MPG             float64
Cylinders         int64
Displacement    float64
Horsepower      float64
Weight          float64
Acceleration    float64
Model Year        int64
Origin            int64
dtype: object
origin = dataset.pop('Origin')
dataset['USA'] = (origin == 1)*1.0
dataset['Europe'] = (origin == 2)*1.0
dataset['Japan'] = (origin == 3)*1.0
dataset.tail()

728x90