티스토리 뷰

import json, pandas as pd

import tensorflow as tf
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split

json_string='''
{
  "Unnamed":{
    "0":"1",
"1":"2",
"2":"3",
"3":"4",
"4":"5"
  },
  "FB":{
    "0":"230.1",
"1":"44.5",
"2":"17.2",
"3":"151.5",
"4":"180.8"
  },
  "TV":{
    "0":"37.8",
"1":"39.3",
"2":"45.9",
"3":"41.3",
"4":"10.8"
  },
  "Newpaper":{
    "0":"69.2",
"1":"45.1",
"2":"69.3",
"3":"58.5",
"4":"58.4"
  },
  "Sales":{
    "0":"22.1",
"1":"10.4",
"2":"9.3",
"3":"18.5",
"4":"12.9"
  }
}
'''

json_object=json.loads(json_string)
df = pd.DataFrame(json_object)
df

print('원본 데이터 샘플 :')
print(df.head(),'\n')

# 의미없는 변수는 삭제합니다.
df = df.drop(columns=['Unnamed'])
df

"""
1. Sales 변수는 label 데이터로 Y에 저장하고 나머진 X에 저장합니다.
"""
X = df.drop(columns=['Sales'])
Y = df['Sales']

# 학습용 테스트용 데이터로 분리합니다.
train_X, test_X, train_Y, test_Y = train_test_split(X, Y, test_size=0.3)

# Dataset 형태로 변환합니다.
train_ds = tf.data.Dataset.from_tensor_slices((train_X.values, train_Y))
train_ds = train_ds.shuffle(len(train_X)).batch(batch_size=5)

"""
1. tf.keras.models.Sequential()를 활용하여 신경망 모델을 생성합니다.
   자유롭게 layers를 쌓고 마지막 layers는 노드 수를 1개로 설정합니다.
"""
model = tf.keras.models.Sequential([
    tf.keras.layers.Dense(5, input_dim=3),
    tf.keras.layers.Dense(5),
    tf.keras.layers.Dense(1)
    
    ])

print(model.summary())

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함