社区网站建设难点关键词带淘宝的网站不收录

web/2025/10/1 22:53:08/文章来源:
社区网站建设难点,关键词带淘宝的网站不收录,友链交易交易平台,网站管理公司#x1f517; 运行环境#xff1a;Matlab #x1f6a9; 撰写作者#xff1a;左手の明天 #x1f947; 精选专栏#xff1a;《python》 #x1f525; 推荐专栏#xff1a;《算法研究》 #x1f510;#### 防伪水印——左手の明天 #####x1f510; #x1f497; 大家…  运行环境Matlab  撰写作者左手の明天  精选专栏《python》   推荐专栏《算法研究》 #### 防伪水印——左手の明天 #### 大家好我是左手の明天好久不见 今天分享Matlab深度学习 —— 时间序列预测   最近更新2024 年 03 月 03日左手の明天的第 316 篇原创博客  更新于专栏机器学习 #### 防伪水印——左手の明天 #### 一、LSTM 网络 LSTM 网络是一种循环神经网络 (RNN)它通过遍历时间步并更新 RNN 状态来处理输入数据。RNN 状态包含在所有先前时间步中记住的信息。可以使用 LSTM 神经网络通过将先前的时间步作为输入来预测时间序列或序列的后续值。要为时间序列预测训练 LSTM 神经网络训练具有序列输出的回归 LSTM 神经网络其中响应目标是将值移位了一个时间步的训练序列。也就是说在输入序列的每个时间步LSTM 神经网络都学习预测下一个时间步的值。 有两种预测方法开环预测和闭环预测。 开环预测仅使用输入数据预测序列中的下一个时间步。对后续时间步进行预测时需要从数据源中收集真实值并将其用作输入。例如假设要使用时间步 1 到 t−1 中收集的数据来预测序列的时间步 t 的值。要对时间步 t1 进行预测等到记录下时间步 t 的真实值并将其用作输入进行下一次预测。在进行下一次预测之前如果有可以提供给 RNN 的真实值则请使用开环预测。 闭环预测通过使用先前的预测作为输入来预测序列中的后续时间步。在这种情况下模型不需要真实值便可进行预测。例如假设要仅使用在时间步 1 至 t−1 中收集的数据来预测序列的时间步 t 至 tk 的值。要对时间步 i 进行预测使用时间步 i−1 的预测值作为输入。使用闭环预测来预测多个后续时间步或在进行下一次预测之前没有真实值可提供给 RNN 时使用闭环预测。 此图显示使用闭环预测的预测值的序列示例。 此示例使用 Waveform 数据集它包含生成的 2000 个不同长度的合成波形有三个通道。该示例训练一个 LSTM 神经网络以同时使用闭环和开环预测根据先前时间步提供的值来预测波形的将来值。 二、matlab时间序列预测 2.1 加载数据 从 WaveformData.mat 加载示例数据。数据是序列的 numObservations×1 元胞数组其中 numObservations 是序列数。每个序列都是一个 numChannels×-numTimeSteps 数值数组其中 numChannels 是序列的通道数numTimeSteps 是序列的时间步数。 load WaveformData 查看前几个序列的大小。 data(1:5) ans5×1 cell array{3×103 double}{3×136 double}{3×140 double}{3×124 double}{3×127 double} 查看通道数。为了训练 LSTM 神经网络每个序列必须具有相同数量的通道。 numChannels size(data{1},1) numChannels 3可视化绘图中的前几个序列。 figure tiledlayout(2,2) for i 1:4nexttilestackedplot(data{i})xlabel(Time Step) end 将数据划分为训练集和测试集。将 90% 的观测值用于训练其余的用于测试。 numObservations numel(data); idxTrain 1:floor(0.9*numObservations); idxTest floor(0.9*numObservations)1:numObservations; dataTrain data(idxTrain); dataTest data(idxTest); 2.2 准备要训练的数据 要预测序列在将来时间步的值请将目标指定为将值移位了一个时间步的训练序列。也就是说在输入序列的每个时间步LSTM 神经网络都学习预测下一个时间步的值。预测变量是没有最终时间步的训练序列。 for n 1:numel(dataTrain)X dataTrain{n};XTrain{n} X(:,1:end-1);TTrain{n} X(:,2:end); end 为了更好地拟合并防止训练发散请将预测变量和目标值归一化为零均值和单位方差。在进行预测时还必须使用与训练数据相同的统计量对测试数据进行归一化。要轻松计算所有序列的均值和标准差请在时间维度中串联这些序列。 muX mean(cat(2,XTrain{:}),2); sigmaX std(cat(2,XTrain{:}),0,2);muT mean(cat(2,TTrain{:}),2); sigmaT std(cat(2,TTrain{:}),0,2);for n 1:numel(XTrain)XTrain{n} (XTrain{n} - muX) ./ sigmaX;TTrain{n} (TTrain{n} - muT) ./ sigmaT; end 2.3 定义 LSTM 神经网络架构 创建一个 LSTM 回归神经网络。 使用输入大小与输入数据的通道数匹配的序列输入层。 接下来使用一个具有 128 个隐藏单元的 LSTM 层。隐藏单元的数量确定该层学习了多少信息。使用更多隐藏单元可以产生更准确的结果但也更有可能导致训练数据过拟合。 要输出通道数与输入数据相同的序列请包含一个输出大小与输入数据通道数匹配的全连接层。 最后包括一个回归层。 layers [sequenceInputLayer(numChannels)lstmLayer(128)fullyConnectedLayer(numChannels)regressionLayer]; 2.4 指定训练选项 指定训练选项。 使用 Adam 优化进行训练。 进行 200 轮训练。对于较大的数据集您可能不需要像良好拟合那样进行这么多轮训练。 在每个小批量中对序列进行左填充使它们具有相同的长度。左填充可以防止 RNN 预测序列末尾的填充值。 每轮训练都会打乱数据。 在绘图中显示训练进度。 禁用详尽输出。 options trainingOptions(adam, ...MaxEpochs200, ...SequencePaddingDirectionleft, ...Shuffleevery-epoch, ...Plotstraining-progress, ...Verbose0); 2.5 训练循环神经网络 使用 trainNetwork 函数以指定的训练选项训练 LSTM 神经网络。 net trainNetwork(XTrain,TTrain,layers,options); 2.6 测试循环神经网络 使用与训练数据相同的步骤准备用于预测的测试数据。 使用从训练数据计算出的统计量来归一化测试数据。将目标指定为值移位了一个时间步的测试序列将预测变量值指定为没有最终时间步的测试序列。 for n 1:size(dataTest,1)X dataTest{n};XTest{n} (X(:,1:end-1) - muX) ./ sigmaX;TTest{n} (X(:,2:end) - muT) ./ sigmaT; end 使用测试数据进行预测。指定与训练相同的填充选项。 YTest predict(net,XTest,SequencePaddingDirectionleft); 为了计算准确度对于每个测试序列请计算预测和目标之间的均方根误差 (RMSE)。 for i 1:size(YTest,1)rmse(i) sqrt(mean((YTest{i} - TTest{i}).^2,all)); end 在直方图中可视化误差。值越低表示准确度越高。 figure histogram(rmse) xlabel(RMSE) ylabel(Frequency) 计算所有测试观测值的 RMSE 均值。 mean(rmse) ans single0.50802.7 预测将来时间步 给定输入时间序列或序列要预测多个将来时间步的值请使用 predictAndUpdateState 函数一次预测一个时间步并在每次预测时更新 RNN 状态。对于每次预测使用前一次预测作为函数的输入。 在绘图中可视化其中一个测试序列。 idx 2; X XTest{idx}; T TTest{idx};figure stackedplot(X,DisplayLabelsChannel (1:numChannels)) xlabel(Time Step) title(Test Observation idx) 开环预测 开环预测仅使用输入数据预测序列中的下一个时间步。对后续时间步进行预测时需要从数据源中收集真实值并将其用作输入。例如假设您要使用时间步 1 到 t−1 中收集的数据来预测序列的时间步 t 的值。要对时间步 t1 进行预测请等到记录下时间步 t 的真实值并将其用作输入进行下一次预测。在进行下一次预测之前如果有可以提供给 RNN 的真实值则请使用开环预测。 首先使用 resetState 函数重置状态来初始化 RNN 状态然后使用输入数据的前几个时间步进行初始预测。使用输入数据的前 75 个时间步更新 RNN 状态。 net resetState(net); offset 75; [net,~] predictAndUpdateState(net,X(:,1:offset)); 要进行进一步的预测请遍历时间步并使用 predictAndUpdateState 函数更新 RNN 状态。通过遍历输入数据的时间步并将其用作 RNN 的输入预测测试观测值的其余时间步的值。第一个预测是对应于时间步 offset 1 的值。 numTimeSteps size(X,2); numPredictionTimeSteps numTimeSteps - offset; Y zeros(numChannels,numPredictionTimeSteps);for t 1:numPredictionTimeStepsXt X(:,offsett);[net,Y(:,t)] predictAndUpdateState(net,Xt); end 将预测值与目标值进行比较。 figure t tiledlayout(numChannels,1); title(t,Open Loop Forecasting)for i 1:numChannelsnexttileplot(T(i,:))hold onplot(offset:numTimeSteps,[T(i,offset) Y(i,:)],--)ylabel(Channel i) endxlabel(Time Step) nexttile(1) legend([Input Forecasted]) 闭环预测 闭环预测通过使用先前的预测作为输入来预测序列中的后续时间步。在这种情况下模型不需要真实值便可进行预测。例如假设您要仅使用在时间步 1 至 t−1 中收集的数据来预测序列的时间步 t 至 tk 的值。要对时间步 i 进行预测请使用时间步 i−1 的预测值作为输入。使用闭环预测来预测多个后续时间步或在进行下一次预测之前没有真实值可提供给 RNN 时使用闭环预测。 首先使用 resetState 函数重置状态来初始化 RNN 状态然后使用输入数据的前几个时间步进行初始预测 Z。使用输入数据的所有时间步更新 RNN 状态。 net resetState(net); offset size(X,2); [net,Z] predictAndUpdateState(net,X); 要进行进一步的预测请遍历时间步并使用 predictAndUpdateState 函数更新 RNN 状态。通过将先前的预测值迭代传递给 RNN 来预测接下来的 200 个时间步。由于 RNN 不需要输入数据来进行任何进一步的预测因此可以指定任意数量的时间步来进行预测。 numPredictionTimeSteps 200; Xt Z(:,end); Y zeros(numChannels,numPredictionTimeSteps);for t 1:numPredictionTimeSteps[net,Y(:,t)] predictAndUpdateState(net,Xt);Xt Y(:,t); end 在绘图中可视化预测值。 numTimeSteps offset numPredictionTimeSteps;figure t tiledlayout(numChannels,1); title(t,Closed Loop Forecasting)for i 1:numChannelsnexttileplot(T(i,1:offset))hold onplot(offset:numTimeSteps,[T(i,offset) Y(i,:)],--)ylabel(Channel i) endxlabel(Time Step) nexttile(1) legend([Input Forecasted]) 闭环预测允许您预测任意数量的时间步但与开环预测相比其准确度可能会降低因为 RNN 在预测过程中不会访问真实值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85298.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站选择理由描述收录软件最多的网站

实景三维技术作为一种新兴的技术手段,正在逐渐被认为是一种新质生产力。它通过高精度的数据采集、处理和可视化,为多个行业领域提供了全新的工作方式和解决方案,从而推动了生产力的发展和创新。以下是实景三维技术作为新质生产力在不同方面的…

低价代网站淘宝客模板 wordpress

解决zblog博客Gravatar头像不显示方法一第一个,解决zblog博客Gravatar头像不显示解决方法是对其进行修复操作。造成不显示的原因主要是Gravatar头像地址错误。所以,我们需要对头像地址进行更改。1、进入自己的博客后台。2、找到现在使用的主题模板中的&a…

口碑好的企业网站建设东莞万江今天最新通知

使用 django.utils.translation.gettext_lazy() 函数,使得其中的值只有在访问时才会被翻译,而不是在 gettext_lazy() 被调用时翻译。例如:要翻译一个模型的 help_text,按以下进行:from django.utils.translation impor…

英雄联盟视频网站源码织梦模板修改网站颜色

121. 买卖股票的最佳时机 股票只能被买卖一次 dp[i][0] 持有股票所得到的最大现金, dp[i][1] 不持有股票所得的最大现金, 避免定义多个变量递推公式: dp[i][0] 可能是在之前买入, 也可能是在这次被买入 max(dp[i - 1][0],-prices[i])dp[i][1] 可能是在本次抛售, 也可能在之…

自适应网站模板怎么做做期货要看哪些网站

前端数据层高可用架构 前后端架构模式如下图 在这个架构下,客端数据可用率计算方式: 因此整体数据可用性分析表如下: 只有在客端和 BFF 都正常的情况下数据才能可用,而这种情况占比不是很高,因此整体的用户体验就不是很好。 本次建设目标 本文的设计方案就是要解决…

合肥企业网站建设软件产品如何做网站推广

一、说明 每天,人类在执行诸如过马路之类的任务时都会做出被动预测,他们估计汽车的速度和与汽车的距离,或者通过猜测球的速度并相应地定位手来接球。这些技能是通过经验和实践获得的。然而,由于涉及众多变量,预测天气或…

手机网站模板代码柳江企业网站建设公司

目录 一.准备工作 二.编写各个组件的页面结构 三.实现初始任务列表的渲染 四.新增任务 五.删除任务 六.展示未完成条数 七.切换状态-筛选数据 八.待办事项(全)代码 一.准备工作 在开发“ToDoList”案例之前,需要先完成一些准备工作&a…

电子商务网站开发难点西安外包网络推广

1. 事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。数据库开启事务命令•start transaction开启事务•Rollback回滚事务•Commit提交事务JDBC控制事务语句•Connection.setAutoCommit(false); //start transa…

西宁网站seo价格白石洲附近做网站公司

目录 问题: 使用的代码: 官方文档的说明: 可能的问题所在: 关于使用了作用域插槽: a.自定义内容的样式覆盖: b.表格结构的改变: 解决方案: 通过css样式解决: 下面…

苏州企业网站建设制作方案开发公司注销时剩余未售房产如何处理

linux服务器怎么创建用户 在Linux服务器上,可以使用以下步骤创建用户: 使用adduser命令创建新用户: sudo adduser username将 username 替换为你要创建的用户名。这个命令会提示你输入新用户的密码以及其他相关信息。 如果需要为新用户设…

绵阳汽车网站制作wordpress转服务器

1.一个汉字在存储时,占据( )个字节的存储空间。 A.1 B.2 C.4 D.3 错误 正确答案:左边查询 学生答案:A 2.学习好Office办公软件这门课程,应该( )。 A.可以随便学习一下 B.只看不练 C.…

代理企业网站备案盐城网站app建设

这是您请求的故宫雪景图,角落有一只可爱的胖猫,采用了水墨画风格,类似于张大千的作品。希望您喜欢这幅画! 🎨 选项 1【转变风格】——将这幅画转变为梵高的后印象派风格,增添一些梵高特有的笔触和色彩。 &…

手机建个人网站免费word模板

Hittest 机制原理 hitTest的原理就是,当我们点击的时候,会触发 window的 hittest方法,在该方法中会首先使用point inside方法判断 点击的地方是否在window范围内,如果在的话,就倒序遍历姿子视图,然后将poi…

有没有好用的网站推荐站点推广策略包括

一.LCR 152. 验证二叉搜索树的后序遍历序列 题目描述: 给你一个二叉搜索树的后续遍历序列,让你判断该序列是否合法。 解题思路: 根据二叉搜索树的特性,二叉树搜索的每一个结点,大于左子树,小于右子树。…

免费的网站软件南昌建设银行网站

Escape Simulator 是一款逃生模拟游戏,玩家在游戏中需要寻找线索、解决谜题,以逃离各种房间或环境。这种类型的游戏通常设计有多个关卡或场景,每个场景都有不同的设计和难度。 在 Escape Simulator 中,玩家的目标通常是找到出口或…

天河高端网站建设在线课堂网站开发

文章目录 前言add_item_to_object函数是干什么的add_item_to_object代码解析函数实现函数原理解析开头的代码constant_key参数的作用最后的if判断 add_item_to_array函数 总结 前言 在我们的日常编程中,JSON已经成为了一种非常常见的数据交换格式。在C语言中&#…

怎么注册网站可视化网站制作软件

一、引言 随着前端技术的飞速发展,企业对于官网的需求也从简单的展示型网站向功能丰富、交互体验良好的方向转变。在这样的背景下,图鸟模板-官网以其基于Vue 3的纯前端开发特性,以及支持微信小程序、支付宝小程序、APP和H5的跨平台能力&…

福田园岭网站建设专业网站建设网页

CSS注释 CSS修改页面中的所有标签,必须借助选择器选中。选择器中,可以写多对CSS属性,用{}包裹;每个属性名与属性值之间用:分隔,多对属性之间,必须用;来分隔选择器{ 属性1:属性值1; 属性2:属性值2; 【选择器…

明星网站怎么设计做网站简单还是做app简单

1、情况简述 在使用VS时,会发现与QCreator存在一些差异。最主要的就是要设置很多东西,如果不配置的话,就会遇到一些问题。下面我分享下我调试过程中遇到的一个问题。使用Qdesigner的UI提升类时,找不到头文件的情况: …

网站名称在哪里注册订阅 wordpress

上节回顾 1 搜索功能-前端:搜索框,搜索结果页面-后端:一种类型课程-APIResponse(actual_courseres.data.get(results),free_course[],light_course[])-搜索,如果数据量很大,直接使用mysql,效率非常低--》E…