2.5个多层感知器(神经网络)的代码实现
所需文件链接:
提取码:guzz
点击查看代码
import pandas as pd
data = pd.read_csv("./dataset/Advertising.csv") #将上面下载下来的文件放在代码目录下的dataset目录
print(data.head())
图 2-12
本次数据如下图2-12所示,分别代表了电视、广播的广告成本,以及最终的销售额。
直接运行代码
点击查看代码
import tensorflow as tf
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data = pd.read_csv("./dataset/Advertising.csv")
# print(data.head())
x = data.iloc[:,1:-1] #所有的行以及除了第一列和最后一列
y = data.iloc[:,-1] #所有的行以及最后一列
model = tf.keras.Sequential(
#添加激活函数,增加非线性拟合效果
[tf.keras.layers.Dense(10,input_shape=(3,),activation='relu'), #第一层是10个神经元,也就是第一层的输出是10个,输入是(3,),因为每组数据都是由三个输入数据构成
tf.keras.layers.Dense(1)] #第二层,一个神经元,输出为1个,也即是最后的销量结果
)
print(model.summary())
model.compile(optimizer='adam',loss='mse')
model.fit(x,y,epochs=100)
![图片[1]-tensorflow学习006——多层感知器(神经网络)的代码实现-唐朝资源网](https://images.43s.cn/wp-content/uploads//2022/06/1655198202544_5.png)
#预测前10个训练集中的数据
print(model.predict(data.iloc[:10,1:-1]))
print(data.iloc[:10,-1]) #输出真实结果
图2-13
以上代码生成的模型结构如图2-13所示,第一层中间有10个神经元,参数为40,40=10*(3+1)@ > 其中3代表三个输入量的权重,1是每个神经元Bias的偏差。
© 版权声明
本站下载的源码均来自公开网络收集转发二次开发而来,
若侵犯了您的合法权益,请来信通知我们1413333033@qq.com,
我们会及时删除,给您带来的不便,我们深表歉意。
下载用户仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,访问及下载者下载默认同意本站声明的免责申明,请合理使用切勿商用。
THE END
暂无评论内容