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

相关推荐
Nuyoah_6101 小时前
Java从入门到精通笔记篇(十三)
java·开发语言·笔记
封步宇AIGC1 小时前
量化交易系统开发-实时行情自动化交易-4.1.3.A股平均趋向指数(ADX)实现
人工智能·python·机器学习·数据挖掘
羽t1 小时前
红外遥控报警器设计(模电课设)
笔记
WHabcwu1 小时前
统⼀数据返回格式快速⼊⻔
java·经验分享·笔记·其他
半夏知半秋2 小时前
lua-lru缓存算法解析
笔记·学习·算法·缓存·lua
沉下心来学鲁班3 小时前
模型压缩——基于粒度剪枝
人工智能·算法·机器学习·语言模型·剪枝
YiRan_Zhao3 小时前
tdengine学习笔记实战-jdbc连接tdengine数据库
笔记·学习·tdengine
YiRan_Zhao3 小时前
tdengine学习笔记-建库和建表
笔记·学习·tdengine
weixin_433545984 小时前
矢量拟合(2) - Vector Fitting算法原理
人工智能·算法·机器学习