机器学习笔记 // 创建并训练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(series[start_point:start_point+window_size])

print(series[start_point+window_size])

print(model.predict(

series[start_point:start_point+window_size][np.newaxis]))

相关推荐
autism_cx4 分钟前
TCP/IP协议栈
服务器·网络·笔记·网络协议·tcp/ip·ios·osi
报错小能手6 分钟前
C++笔记(面向对象)对于对象返回方式的讲解
笔记
Olrookie18 分钟前
StreamX部署详细步骤
大数据·笔记·flink
报错小能手25 分钟前
项目——基于C/S架构的预约系统平台(3)
linux·开发语言·笔记·学习·架构·1024程序员节
南方的狮子先生41 分钟前
【逻辑回归】从线性模型到逻辑回归
算法·机器学习·逻辑回归
AAA阿giao1 小时前
JavaScript 中的变量声明:var、let 与 const 深度解析
javascript·笔记
W.Y.B.G1 小时前
css3 学习笔记
笔记·学习·css3·1024程序员节
摇滚侠1 小时前
Spring Boot3零基础教程,函数式 Web 新特性,笔记51
java·spring boot·笔记
moringlightyn1 小时前
c++ 智能指针
开发语言·c++·笔记·c++11·指针·智能指针
风已经起了3 小时前
FPGA学习笔记——用Vitis IDE生成工程(串口发送)
笔记·学习·fpga开发·fpga·1024程序员节