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

相关推荐
红石榴花生油几秒前
近期服务器大规模攻击事件解析与防御全笔记
运维·服务器·笔记
涡轮蒸鸭猫喵1 小时前
-------------------UDP协议+TCP协议-------------------------
java·网络·笔记·网络协议·tcp/ip·udp
思成不止于此1 小时前
【MySQL 零基础入门】DML 核心语法全解析:表数据的增删改操作篇
数据库·笔记·sql·学习·mysql
AI营销快线2 小时前
2025金融AI语音质检系统选型指南
笔记
代码游侠2 小时前
应用——统计文件字符数、单词数、行数
服务器·笔记·算法
EQ-雪梨蛋花汤2 小时前
【Unity笔记】 WorldStreamer2指南——针对大世界的流式加载与优化
笔记·unity·游戏引擎
Salt_07282 小时前
DAY27 pipeline管道
python·机器学习
一招定胜负2 小时前
机器学习开篇
人工智能·机器学习
haiyu柠檬2 小时前
Ruby On Rails 笔记6——常用回调上
笔记·后端·ruby on rails
大千AI助手2 小时前
多重共线性:机器学习中的诊断与应对策略
人工智能·机器学习·线性回归·相关性·大千ai助手·多重共线性·线性组合