当前位置: 首页 > news >正文

scratch少儿编程网站WordPress十大免费CMS主题

scratch少儿编程网站,WordPress十大免费CMS主题,asp.net 网站备份,wordpress文章页面源码路径项目介绍 项目基于GRU算法通过20天的股票序列来预测第21天的数据#xff0c;有些项目也可以用LSTM算法#xff0c;两者主要差别如下#xff1a; LSTM算法#xff1a;目前使用最多的时间序列算法#xff0c;是一种特殊的RNN#xff08;循环神经网络#xff09;#xf…项目介绍 项目基于GRU算法通过20天的股票序列来预测第21天的数据有些项目也可以用LSTM算法两者主要差别如下 LSTM算法目前使用最多的时间序列算法是一种特殊的RNN循环神经网络能够学习长期的依赖关系。主要是为了解决长序列训练过程中的梯度消失和梯度爆炸问题。简单来说就是相比普通的RNNLSTM能够在更长的序列中有更好的表现。GRU算法是一种特殊的RNN。和LSTM一样也是为了解决长期记忆和反向传播中的梯度等问题而提出来的。相比LSTM使用GRU能够达到相当的效果并且相比之下更容易进行训练能够很大程度上提高训练效率因此很多时候会更倾向于使用GRU。 一、准备数据 1、获取数据 通过命令行安装yfinance通过api获取股票数据保存到csv中方便使用 import pandas_datareader.data as web import datetime import matplotlib.pyplot as plt import pandas as pd import numpy as np plt.rcParams[font.sans-serif]SimHei #图表显示中文import yfinance as yf yf.pdr_override() #需要调用这个函数# 1、获取股票数据 #上海的股票代码.SS;深圳的股票代码.SZ : stock web.get_data_yahoo(601318.SS, start2022-01-01, end2023-07-17) # 保存到csv中 pd.DataFrame(datastock).to_csv(./stock.csv)# 2、获取csv中的数据 features pd.read_csv(stock.csv) features features.drop(Adj Close,axis1) features.head()2、数据可视化 通过绘图的方式查看当前的数据情况 # 3、绘图看看收盘价数据情况 closefeatures[Close] # 计算20天和100天移动平均线 short_rolling_close close.rolling(window20).mean() long_rolling_close close.rolling(window100).mean() # 绘制 fig, ax plt.subplots(figsize(16,9)) #画面大小可以修改 ax.plot(close.index, close, label中国平安) #以收盘价为索引值绘图 ax.plot(short_rolling_close.index, short_rolling_close, label20天均线) ax.plot(long_rolling_close.index, long_rolling_close, label100天均线) #x轴、y轴及图例 ax.set_xlabel(日期) ax.set_ylabel(收盘价 (人民币)) ax.legend() #图例 plt.show() #绘图3、数据预处理 取出当前的收盘价删除无用的日期元素 # 4、取出label值 labels features[Close] time features[Date] features features.drop(Date,axis1) features.head()进行数据的归一化 # 5、数据预处理 from sklearn import preprocessing input_features preprocessing.StandardScaler().fit_transform(features) input_features4、构建数据序列 由于RNN的算法要求我们要有一定的序列来预测出下一个值所以我们按照20天的数据作为一个序列 # 6、定义序列[下标1-20天预测第21天的收盘价] from collections import dequex [] y []seq_len 20 deq deque(maxlenseq_len) for i in input_features:deq.append(list(i))if len(deq) seq_len:x.append(list(deq))x x[:-1] # 取少一个序列因为最后个序列没有答案 y features[Close].values[seq_len: ] #从第二十一天开始下标为20 time time.values[seq_len: ] #从第二十一天开始下标为20x, y, time np.array(x), np.array(y), np.array(time) print(x.shape) print(y.shape) print(time.shape)二、构建模型 1、搭建GRU模型 import tensorflow as tf from tensorflow.keras import initializers from tensorflow.keras import regularizers from tensorflow.keras import layersfrom keras.models import load_model from keras.models import Sequential from keras.layers import Dropout from keras.layers.core import Dense from keras.optimizers import Adam# 7、搭建模型 model tf.keras.Sequential() model.add(layers.GRU(8,input_shape(20,5), activationrelu, return_sequencesTrue,kernel_regularizertf.keras.regularizers.l2(0.01))) model.add(layers.GRU(16, activationrelu, return_sequencesTrue,kernel_regularizertf.keras.regularizers.l2(0.01))) model.add(layers.GRU(32, activationrelu, return_sequencesFalse,kernel_regularizertf.keras.regularizers.l2(0.01))) model.add(layers.Dense(16,kernel_initializerrandom_normal,kernel_regularizertf.keras.regularizers.l2(0.01))) model.add(layers.Dense(1)) model.summary()2、优化器和损失函数 # 优化器和损失函数 model.compile(optimizertf.keras.optimizers.Adam(0.001),losstf.keras.losses.MeanAbsoluteError(), # 标签和预测之间绝对差异的平均metrics tf.keras.losses.MeanSquaredLogarithmicError()) # 计算标签和预测3、开始训练 25%的比例作为验证集75%的比例作为训练集 # 开始训练 model.fit(x,y,validation_split0.25,epochs200,batch_size128)4、模型预测 # 预测 y_pred model.predict(x) fig plt.figure(figsize(10,5)) axes fig.add_subplot(111) axes.plot(time,y,b-,labelactual) # 预测值红色散点 axes.plot(time,y_pred,r--,labelpredict) axes.set_xticks(time[::50]) axes.set_xticklabels(time[::50],rotation45)plt.legend() plt.show()5、回归指标评估 from sklearn.metrics import mean_squared_error,mean_absolute_error,r2_score from math import sqrt#回归评价指标 # calculate MSE 均方误差 msemean_squared_error(y,y_pred) # calculate RMSE 均方根误差 rmse sqrt(mean_squared_error(y, y_pred)) #calculate MAE 平均绝对误差 maemean_absolute_error(y,y_pred) print(均方误差: %.6f % mse) print(均方根误差: %.6f % rmse) print(平均绝对误差: %.6f % mae)源代码 源码查看
http://www.hkea.cn/news/14530535/

相关文章:

  • 网站对于一个企业的优势国内最好的crm视频
  • 广州网站建设studstu东莞网站建设是什么意思
  • 自媒体网站 程序葫芦岛市住房和城乡建设局网站
  • 在自己电脑建设网站网站建设个人主页图
  • 柳州网站建设哪家便宜宝安建网站外包
  • 手机可以建设网站吗米各庄网站建设
  • 网页模板下载网站10响应式网页模板下载
  • 竹子建站邀请码手机做印章网站
  • 网站模版怎么上传到空间深圳比较大的贸易进口公司
  • 总结网站推广策划思路的内容网站 数据库 sql 导入数据库文件
  • 建设网站基本步骤6网站免费建站
  • 批量上传网站产品本科自考报名官网
  • iis 网站设置上海网页设计报价
  • 邯郸建设局公开网站淘客采集网站怎么做的
  • 做机械的网站潍坊网站制作最低价格
  • 北京珠宝网站建设网页设计与制作实例教程方其桂
  • 网站的域名技巧和空间选择书店网站模板
  • 网站流量查询网站学校响应式网站模板
  • 网站突然找不到了 然后降权重 排名不变网站建设调研报告
  • 网站后台登入模板网络推广的基本方法有哪些
  • 公司建网站费用怎么做分录a站是哪个app
  • 求个国外在线网站网站 刷流量 SEO
  • 网站设计怎么算间距河北高端网站建设
  • 如何做社交网站色彩搭配的网站
  • 上海网站建设网站优化app抖音代运营需要什么
  • 如何创建网站推广产品网络推广员一个月多少钱
  • 学做网站视频教程pc 移动端网站建设
  • 五个常见的电子商务网站网址小型门户网站模板
  • 湖南省新化县建设局网站linux wordpress 中文字体
  • 响应式网站怎么做pc端的flash 网站引导页