机器学习笔记 // 创建并训练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]))

相关推荐
wdfk_prog20 分钟前
[Linux]学习笔记系列 -- [fs][proc]
linux·笔记·学习
hetao173383729 分钟前
2026-01-04~06 hetao1733837 的刷题笔记
c++·笔记·算法
2501_941878741 小时前
在班加罗尔工程实践中构建可持续演进的机器学习平台体系与技术实现分享
人工智能·机器学习
byzh_rc2 小时前
[机器学习-从入门到入土] 拓展-最小二乘法
人工智能·机器学习·最小二乘法
高洁012 小时前
10分钟了解向量数据库(3
人工智能·深度学习·机器学习·transformer·知识图谱
民乐团扒谱机3 小时前
【微实验】数模美赛备赛MATLAB实战:一文速通各种“马尔可夫”(Markov Model)
开发语言·人工智能·笔记·matlab·数据挖掘·马尔科夫链·线性系统
宵时待雨3 小时前
数据结构(初阶)笔记归纳1:复杂度讲解
c语言·数据结构·笔记
tongxianchao3 小时前
MetaPruning: Meta Learning for Automatic Neural Network Channel Pruning
算法·机器学习·剪枝
今儿敲了吗3 小时前
第二章 C++对C的核心拓展
c++·笔记
2301_800256113 小时前
【数据库pgsql】车辆轨迹分析视图的创建和查询代码解析
人工智能·算法·机器学习