机器学习笔记 // 创建并训练DNN来拟合和预测序列数据

DNN是"Deep Neural Network"的缩写,中文译为深度神经网络。

dataset = windowed_dataset(series, window_size, batch_size, shuffle_buffer_size)

model = tf.keras.models.Sequetial([

tf.keras.layers.Dense(10, input_shape=window_size,

activation='relu'),

tf.keras.layers.Dense(10, activation='relu'),

tf.keras.layers.Dense(1)])

这是一个非常简单的DNN模型,它包含两个密集层,第一层接收的输入形状是window_size,第二个是包含预测值的输出层。

与之前一样,这个模型在编译时使用一个损失函数和一个优化器。在这个例子中损失函数被指定为mse(均方误差)​,优化器为sgd(随机梯度下降)​。SGD接收参数作为学习率(lr)和动量,这些参数调整优化器的学习方式。每一个数据集都不一样,因此最好能控制它们。在下一节中,你会看到如何求出最优值,但现在只需要像这样设置它们:

mdel.compile(loss="mse", optimizer=tf.keras.optimizaers.SGD(lr=1e-6,momentum=0.9))

接下来调用model.fit训练,将你的数据集传给它,然后指定训练的回合数:

model.fit(dataset,epochs=100,verbose=1)

训练好以后,就可以开始使用它进行预测。

print(seriesstart_point:start_point+window_size)

print(seriesstart_point+window_size)

print(model.predict(

seriesstart_point:start_point+window_sizenp.newaxis))

相关推荐
Shell运维手记25 分钟前
Linux mdadm 软 RAID + LVM 完整综合笔记
linux·运维·笔记·5g
疯狂打码的少年39 分钟前
【数据库技术】SQL数据查询(SELECT基本语法)
数据库·笔记·sql·oracle
Made in Haven7121 小时前
HTML课程笔记补2
前端·笔记·html
小道士写程序1 小时前
自然语言处理NLP - 第3章 从字符到Token:机器的输入长什么样
人工智能·机器学习
夕除1 小时前
redis--010
笔记·分布式·学习
ouynagda2 小时前
HTTP协议与Socket网络编程笔记
网络·笔记·http
摇滚侠2 小时前
《SpringBoot 3:入门与应用实战》第 10 章 REST 服务请求与调用 Reactor 与 WebFlux 笔记 28
spring boot·笔记·后端
幸运小圣2 小时前
JavaScript 关键字与保留字学习笔记详细讲解,一篇get ✅【JavaScript查缺补漏】
javascript·笔记·学习
IT毕设实战小研2 小时前
基于大数据的AI应用对就业与收入增长的区域差异分析及可视化
大数据·人工智能·python·随机森林·机器学习·课程设计
十铭忘3 小时前
英语介词怎么理解?
笔记