范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

利用LSTM实现股价预测

  长短时记忆(LSTM)是一种能增加递归神经网络(RNN)记忆的模型。递归神经网络保留短期记忆,因为它们允许在当前神经网络中更早地确定信息。
  对于即时任务,RNN使用早期的数据,但我们可能没有利用神经元所有的早期信息。在RNN中,LSTM得到了广泛的应用。视频、自然语言处理、地理空间和时间序列等多个应用领域中,都证实了LSTM的有效性。
  RNN的一个主要问题是梯度消失问题,它是由于在RNN块中重复使用相同的参数而产生的。我们必须在每个时间步中尝试使用不同的参数来克服这个问题。
  我们努力在这样的情况下找到平衡。 在生成变长序列的同时,我们在每一步引入新的参数,同时保持可学习参数的总数量不变。我们引入了基于门控机制的RNN单元,如LSTM和GRU。
  门控单元保存内部变量,即利用其中的门。每个时间步的每个门的值取决于该时间步的信息,包括早期状态。然后,门的值乘以不同的权重变量来影响它们。
  时间序列数据是在一段时间内收集的一系列数据值,允许我们跟踪一段时间内的差异。时间序列数据可以以毫秒、天和年为单位跟踪进程。
  早期,我们把时间序列数据视为静态的;每天气温下的高点和低点,股市的开盘价和收盘价。现在我们将进入编码部分。我们将在股票数据集上实现LSTM。
  数据集:
  https://github.com/PacktPublishing/Learning-Pandas-Second-Edition/blob/master/data/goog.csv
  二、利用LSTM实现股票的时间序列预测
  读取数据:
  gstock_data = pd.read_csv("data.csv") gstock_data .head()
  数据集探索:
  该数据集包含14列与时间序列(如日期)和不同的变量(如close、high、low和volume)相关。我们将使用开盘价和收盘价来用LSTM进行时间序列预测。
  gstock_data = gstock_data [["date","open","close"]] gstock_data ["date"] = pd.to_datetime(gstock_data ["date"].apply(lambda x: x.split()[0])) gstock_data .set_index("date",drop=True,inplace=True) gstock_data .head()
  我们在这里进行了一些特征提取。我们从整个日期变量中单独取出日期。现在,我们可以使用matplotlib来可视化可用数据,并查看数据中的价格值是如何显示的。如下所示的价格-日期图中绿色表示开盘价,红色表示收盘价。
  fg,ax=plt.subplots(1,2,figsize=(20,7)) ax[0].plot(gstock_data ["open"],label="Open",color="green") ax[0].set_xlabel("Date",size=15) ax[0].set_ylabel("Price",size=15) ax[0].legend() ax[1].plot(gstock_data ["close"],label="Close",color="red") ax[1].set_xlabel("Date",size=15) ax[1].set_ylabel("Price",size=15) ax[1].legend() fg.show()
  数据预处理:
  我们必须在使用LSTM应用在股票价格之前对这些数据进行预处理。在fit_transform函数的帮助下转换数据中的值。Min-max scaler用于缩放数据,以便我们可以对所有的价格值归一化 然后,我们使用80%的数据进行训练,其余20%用于测试,并将它们分配到单独的变量中。
  from sklearn.preprocessing import MinMaxScaler Ms = MinMaxScaler() gstock_data [gstock_data .columns] = Ms.fit_transform(gstock_data ) training_size = round(len(gstock_data ) * 0.80) train_data = gstock_data [:training_size] test_data  = gstock_data [training_size:]
  训练数据的划分:
  创建一个函数,以便我们可以创建用于训练和测试的序列。
  def create_sequence(dataset):   sequences = []   labels = []     start_idx = 0     for stop_idx in range(50,len(dataset)):     sequences.append(dataset.iloc[start_idx:stop_idx])     labels.append(dataset.iloc[stop_idx])     start_idx += 1   return (np.array(sequences),np.array(labels))   train_seq, train_label = create_sequence(train_data) test_seq, test_label = create_sequence(test_data)
  LSTM模型的实现:
  在下一步中,我们创建LSTM模型。在本文中,我们将使用从Keras导入的Sequential模型,并导入所需的库。
  from keras.models import Sequential from keras.layers import Dense, Dropout, LSTM, Bidirectional
  我们在模型中使用了两个LSTM层,并在层与层之间使用dropout以实现正则化。在LSTM参数中分配的单元数是50个。Dropout为10%。损失函数是均方误差并使用Adam优化器优化问题的损失函数。平均绝对误差是我们在LSTM网络中使用的评估度量,因为它与时间序列数据相关。
  model = Sequential() model.add(LSTM(units=50, return_sequences=True, input_shape = (train_seq.shape[1], train_seq.shape[2])))   model.add(Dropout(0.1)) model.add(LSTM(units=50))   model.add(Dense(2))   model.compile(loss="mean_squared_error", optimizer="adam", metrics=["mean_absolute_error"])   model.summary()   model.fit(train_seq, train_label, epochs=80,validation_data=(test_seq, test_label), verbose=1) test_predicted = model.predict(test_seq) test_inverse_predicted = MMS.inverse_transform(test_predicted)
  可视化:
  将数据与我们的模型拟合后,我们用它进行预测。 我们必须用逆变换使得变换后的函数返回原值。现在我们可以使用这些数据来进行可视化预测 。
  # Merging actual and predicted data for better visualization gs_slic_data = pd.concat([gstock_data .iloc[-202:].copy(),pd.DataFrame(test_inverse_predicted,columns=["open_predicted","close_predicted"],index=gstock_data .iloc[-202:].index)], axis=1) gs_slic_data[["open","close"]] = MMS.inverse_transform(gs_slic_data[["open","close"]]) gs_slic_data.head()   gs_slic_data[["open","open_predicted"]].plot(figsize=(10,6)) plt.xticks(rotation=45) plt.xlabel("Date",size=15) plt.ylabel("Stock Price",size=15) plt.title("Actual vs Predicted for open price",size=15) plt.show()   gs_slic_data[["close","close_predicted"]].plot(figsize=(10,6)) plt.xticks(rotation=45) plt.xlabel("Date",size=15) plt.ylabel("Stock Price",size=15) plt.title("Actual vs Predicted for close price",size=15) plt.show()
  三、结论
  在本文中,我们利用LSTM研究了股票价格并将开盘和收盘价可视化。 参考:
  https://the-learning-machine.com/article/dl/long-short-term-memory
  https://www.kaggle.com/amarsharma768/stock-price-prediction-using-lstm/notebook

全球首款音乐阅读器海信TOUCH正式发布开启沉浸听读新时代5月20日,海信举办主题为HiTOUCH的新品发布会,正式推出护眼阅读新产品全球首款音乐阅读器海信TOUCH。凭借行业内首搭四通道环境光传感器与瑞声声学合作,联合瑞典Dirac音效海信TOUCH带你体验更香的高品质音乐相伴的护眼阅读虽然说现在的工作节奏紧张,可仔细盘算一下,独处的时间还是很多的。可偏偏就是在这独处时间里,很多人的娱乐质量并不能达到预期效果。就比如看小说消遣时光,如果有高品质音乐伴奏,那感觉岂不音阅相随生活更美海信TOUCH带你618欢乐畅读喜欢看书的朋友,很多都经历了纸质书籍向电子书的转变,科技发展让阅读工具与时俱进。只是用来看电子书的电子设备存在有害蓝光,眼睛会出现眼干眼涩视力下降等问题,这让我们不得不寻找更健康的翻译总是有偏差?讯飞扫描词典笔专业水准值得信赖学生在学习英语的过程中经常会遇到不会的句子,这时候一般都有两种解决方法一个一个的查询出句子中的生词自我翻译,或者直接将整句话输入到手机中借助相关软件进行翻译,无论是哪一种效率都比较RXR时雾正式发布全新产品线不二,自带IP形象的高端换弹产品4月15日RXR时雾宣布,不二系列换弹电子雾化器正式上线,这是继呆呆系列之后推出的全新旗舰款产品线,采用了包括功率自动切换曝光显影,等边CNC等多个行业首创技术的中高端产品。RXR悦读节海信阅读手机超值福利来袭乐享极致护眼阅读体验数字阅读时代,人们获得信息以及阅读的方式都发生了很大的变化,在更便捷地利用碎片化时间的同时,电子设备带来的蓝光伤害却成了让人头疼的问题。而海信阅读手机从根源出发来为用户提供更舒适护阅读和音乐更般配海信TOUCH疏压悦读好搭档下班后,宅在家里,用海信TOUCH音乐阅读器听着音乐看着书,沉浸在书的海洋里,这种悦耳悦心的美好体验,真是既疏压又解惑。和一般的电子书阅读器不同,海信TOUCH音乐阅读器的音效真的参与地球日的最佳方式普洛斯践行可持续发展江苏常熟,普洛斯正在开发建设总建筑面积15,000平方米的互联网数据中心,为云计算互联网公司金融以及政府和企业客户服务,为长三角地区互联网大数据及人工智能产业发展提供基础设施支持。远景限时优惠高达8000元欢迎垂询福田深圳深意店远景现车限时优惠,可试乘试驾远景现车在店,购车可享多重优惠方案零息方案首付20,2年0息50享3年0息超长期限超低月供方案首付50,每天18元远景带回家附加贷0首付低帝豪GL新能源限时优惠让利高达1。3万深圳深意吉利汽车全系底价促销,恭迎到店品鉴!近期购帝豪GLPHEV优惠政策如下1。现金优享现金优惠13000元,2。金融优享银行贴息4000元,3。置换优享置换补贴7000元,4。海信TOUCH音乐阅读器口袋中的音乐库与藏书阁经常听到这么一句话要么去旅行,要么去读书,身体和灵魂必须有一个在路上。最近小编发现了一款特别适合在路上阅读的神器海信TOUCH音乐阅读器。带着这款阅读音乐器出门,完全无需在背囊中开
英国测小米11Ultra击败三星苹果,迄今为止200款手机中质量第1小米11Ultra不仅是小米11系列中最好的手机,它还是英国消费者测试机构所测195款智能手机中的佼佼者。后置摄像头的强大性能不仅弥补了前置摄像头通常较弱的自拍功能,而且出色的电池华为新机下月开卖备货充足但还是只支持4G此前,华为的nova系列新机nova9的相关外观图和部分配置已经在网上出现,但当时并不知晓这款手机的具体发布时间,据最新的消息显示,nova9系列的发布时间已经敲定,保密限制不能明魅族新机入网CPU主频2。95GHz,应为魅族18Pro换芯版品玩8月31日讯,型号为M182Q与M192Q的两款魅族新机现已入网工信部。魅族18入网型号为M181Q,魅族18Pro入网型号为M191Q。这两款手机应为搭载骁龙888Plus处升级骁龙888,魅族18s系列新机入网8月31日消息,近日型号为M182Q和M192Q的两款魅族新机在工信部的入网照及相关参数被曝光,从入网照来看,这两款机型的外观设计与上半年发布的魅族18以及18Pro并无分别,可能CPU插槽是什么,如何选择合适的?CPU插槽是主板上的特定部件,专门设计用于容纳中央处理器。CPU插槽或CPU插槽设计有数千个引脚或触点,用于CPU与主板上其他处理器之间的电源和数据传输。CPU插槽设计常见于台式P自动驾驶紧追不舍,网约车再现退车潮,260万出租车何去何从?你觉得自动驾驶靠谱吗?这对当下来讲无疑是一个新鲜事物,和曾经网约车风靡一时的情况差不多,滴答出行哈啰一喂顺风车等平台是否会受到影响?这不得而知,不过最该担心的还是网约车出租车!一自智能冰箱具有什么特点?功能更多智能冰箱,顾名思义就是带有AI智能的冰箱。要把智能冰箱跟传统冰箱放在一起比较的话,其优势可圈可点。就拿自己家用的TCL灵悉来说,首先最为明显的就是AI人工智能,它可根据环境晚点独家美团快驴大收缩难以改造的餐饮供应链最大餐饮平台改造餐饮供应链的计划暂时失败了。文万珮马可欣编辑黄俊杰大扩张不到一年,美团为外卖商家供货的B2B业务快驴转向收缩。晚点LatePost独家获悉,快驴在近百个城市提供服务scala系列之06scala懒加载lazy7懒加载lazy惰性变量用法放在不可变变量之前只有在调用惰性变量时才会去实例化这个变量,类似于java中单例模式的懒汉模式作用是将推迟复杂的计算,直到需要计算的时候才计算,而如果不国家批准新试点中高速磁悬浮列车有望迎高速发展交通运输部近日发布中国中车集团开展绿色智能交通装备研制及应用等交通强国建设试点工作的意见原则同意在绿色智能交通装备研制及应用,中高速磁悬浮列车研制及工程化应用,智慧城轨地铁列车研制K50系列已经准备就绪?Redmi新商标申请中随着骁龙898的曝光,经常获得骁龙旗舰芯片首发权的小米,也被曝光下一代数字系列旗舰小米12系列将在12月份正式发布。由此还引出了另外一款备受期待的新机RedmiK50系列。根据知名