import tensorflow as tf import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline
读取csv数据
1
data = pd.read_csv('Advertising.csv')
1 2
#打印数据 data.head() #head打印前5行
Unnamed: 0
TV
radio
newspaper
sales
0
1
230.1
37.8
69.2
22.1
1
2
44.5
39.3
45.1
10.4
2
3
17.2
45.9
69.3
9.3
3
4
151.5
41.3
58.5
18.5
4
5
180.8
10.8
58.4
12.9
散点图绘制
1
plt.scatter(data.TV,data.sales)
1
plt.scatter(data.radio,data.sales)
1
plt.scatter(data.newspaper,data.sales)
数据处理
1 2
x = data.iloc[:,1:-1]#取所有x行,列取1到倒数第一个 y = data.iloc[:,-1]#取每一行的最后一个sales值
模型搭建
1 2 3
model = tf.keras.Sequential([tf.keras.layers.Dense(10,input_shape=(3,),activation='relu'),#activation激活函数#Dense(隐藏层,层数越大拟合越强) tf.keras.layers.Dense(1)]#输出层,输出维度为1 )
模型情况
1
model.summary()
模型优化函数等设置
1 2 3
model.compile(optimizer='adam', loss='mse' )
模型训练
1
model.fit(x,y,epochs=100)
模型测试
1 2 3
test = data.iloc[:10,1:-1] model.predict(test) data.iloc[:10,-1]