1 如果只是学习怎么用LSTM,那么可以这么理解LSTM

LSTM可以看成一个仓库,而这个仓库有三个门卫,他们的功能分别是

  • 遗忘门。决定什么样的物品需要从仓库中丢弃。

  • 输入门。决定输入的什么物品用来存放在仓库。

  • 输出门。根据输入的物品和当前仓库的状态决定输出什么。

但这三个门外怎么判断遗忘什么,输入什么和输出什么呢?这需要他们通过从历史的数据中学习,这样当未来输入货物时,就知道如何处理。

这就是为什么LSTM能够从历史数据中学习并记住知识的原因,就是有了这三个门。

我在学习LSTM过程中一直混淆的几个概念是

1 多时间步长

图片来自:https://www.jiqizhixin.com/articles/2019-04-01-8?from=synced&keyword=LSTM

也就是使用t-2,t-1,t 的去预测 t+1时刻的值

2 多变量

也就是使用多个特征去预测,上图没有用到多时间步长

https://machinelearningmastery.com/multivariate-time-series-forecasting-lstms-keras/

这里有一片的博客,或许对你有帮助,其中需要注意的地方是:

他分别用多变量单步时长    和   多变量多步时长(Multiple Lag Timesteps)。

它们最大的不同点在于:

下图是单步时长:1

下面是多步时长:n_hours = 3 (可以设置为任何时长)

经过实践,发现多步时长的训练时间要长于单步的,准确率相比也有提高。相当于手动设置了要预测的值和之前多长时间中的值相关。有中上下文相关的意味。

3 预测未来多个时长

以上不管是多时步长还是单时步长,预测是输出值只有一个,如果我想输入当前值,预测未来多个值呢?

LSTM容易混淆的地方的更多相关文章

  1. this、new,容易混淆的地方

    this.new,容易混淆的地方 情况1 关系 情况2 new Foo() 等价于,推荐的写法是new Foo() new Foo new Foo() 不一样 Foo(), Foo()这种情况下,构造 ...

  2. pod和容器(容易混淆的地方)

    在Kubenetes中,所有的容器均在 pod 中运行,一个pod可以承载一个或者多个相关的docker容器(或rkt,以及用户自定义容器),同一个Pod中的容器可以部署在同一个物理机器(可以叫宿主机 ...

  3. Android 混淆与混淆过滤

    Android 中代码混淆一般用的是ProGuard.它除了混淆代码之后还有其它许多实用的功能.这里主要记录混淆相关的实现. 1.ProGuard的作用 删除无用代码,压缩和优化Class文件,缩小A ...

  4. android 通过eclipse混淆代码 打包 + proguard 总结

    android应用程序的混淆打包 1 . 在工程文件project.properties中加入下proguard.config=proguard.cfg , 如下所示: target=android- ...

  5. android 混淆配置

    proguard 原理Java代码编译成二进制class 文件,这个class 文件也可以反编译成源代码 ,除了注释外,原来的code 基本都可以看到.为了防止重要code 被泄露,我们往往需要混淆( ...

  6. a链接易混淆与form表单简易验证用法详解

    链接可以说遍布互联网,比如你想提供一个可以跳转到百度首页的链接给网友,那么代码如下: <a href="http://www.baidu.com">百度一下,你就知道& ...

  7. nasm汇编一些需要注意的地方

    经常用msam或tasm的童鞋一下转换到nasm下可能觉得不怎么适应,它们应该先去晓习一下gas的语法,然后就适应了-that's only a joke! :) section .data v101 ...

  8. LSTM时间序列预测及网络层搭建

    一.LSTM预测未来一年某航空公司的客运流量 给你一个数据集,只有一列数据,这是一个关于时间序列的数据,从这个时间序列中预测未来一年某航空公司的客运流量.数据形式: 二.实战 1)数据下载 你可以go ...

  9. [java基础]一文理解java多线程必备的sychronized关键字,从此不再混淆!

    java并发编程中最长用到的关键字就是synchronized了,这里讲解一下这个关键字的用法和容易混淆的地方. synchronized关键字涉及到锁的概念, 在java中,synchronized ...

随机推荐

  1. 【Collect】免费图片库网站推荐(国外高清可商用)

    #国外高清可商用免费图片库 1.https://unsplash.com/2.https://pixabay.com/3.https://www.sitebuilderreport.com/stock ...

  2. Leetcode练习题Longest Common Prefix

    Question: Longest Common Prefix Write a function to find the longest common prefix string amongst an ...

  3. Kubernetes V1.15 二进制部署集群

    1. 架构篇 1.1 kubernetes 架构说明              1.2 Flannel网络架构图 1.3 Kubernetes工作流程             2. 组件介绍 2.1 ...

  4. 如何将Javaweb工程的访问协议由http改为https及通过域名访问?

    将javaweb工程的http访问协议更改为https,需要做一下几部操作: 通过jre生成证书 调整tomcat的配置 调整工程的web.xm配置 具体详细过程如下: 一.生成证书 打开cmd切换到 ...

  5. js判断undefined和null

    js判断undefined var exp = undefined; if (typeof(exp) == "undefined") { alert("undefined ...

  6. Python笔记:设计模式之观察者模式

    观察者模式中的主题对象一般存在着一个其他服务依赖的核心服务,并且维护着其他依赖此核心服务的对象列表(即观察者或监视者列表),当主题对象发生变化时,观察者应该改变自己的状态或者进行某些操作 观察者模式中 ...

  7. LeetCode题解001:两数之和

    两数之和 题目 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个 ...

  8. iOS中WebSocket的使用

    https://github.com/square/SocketRocket 简单使用如下 1.初始化socket _webSocket = [[SRWebSocket alloc] initWith ...

  9. [b0025] vmware_桥接网路设置

    总结: 桥接 模式上外网比较简单. 缺点是每次重启虚拟机,分配的IP可能变化,导致 xshell  连接 时都要修改,很麻烦 桥接模式能不能配置静态IP  ? 1. 环境 物理机网络 情况,从外部自动 ...

  10. 『010』NoSQL

    『010』索引-Database NoSQL [001]- 点我快速打开文章[01-Redis 简单介绍] 更新中