热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

交通预见未来(4):从NLP自然语言处理到工程领域中的时间序列:我们能学到什么?...

NLP自然语言处理中的单词,句子,经过各种处理编码,电脑识别到的还是一串数字,即一个有前后关系的时间序列。放到交通工程、土木

NLP自然语言处理中的单词,句子,经过各种处理编码,电脑识别到的还是一串数字,即一个有前后关系的时间序列。放到交通工程、土木工程领域,时间、速度、客流量、轨道形变量、桥梁变形位移等各类时间序列本来就是数值,相比于NLP,还省去了编码的过程呢,哈哈哈!所以做个大自然的搬运工岂不省事?!!!计算机小白的我,还是从NLP领域大火的Seq2Seq模型开始蜗牛吧……

文章信息

《Sequence to Sequence Learning with Neural Networks》。

这篇文章是2014年Google Brain团队的三位老外发的一篇文章,首次真正提出了Seq2Seq模型,被引6000多次。其实还有另外一篇文章《Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation》也是在2014年使用了 Seq2Seq 模型来解决机器翻译的问题,被引5000多次,这边文章比前者早了几个月,两篇文章的区别是前者是来自于谷歌的论文,工程应用性更强,后者来自蒙特利尔大学的一个博士生,学术性更强,后面这篇文章有空再看。

摘要

本文提出了一种end-to end序列学习方法,使用多层LSTM将输入序列映射到一个固定维数的向量上(编码),然后用另一个深层LSTM从向量上解码目标序列。将该方法应用在WMT-14数据集的英法翻译任务中。此外,LSTM擅长处理长句子(得益于LSTM处理long-term dependency的良好性能,交通领域即能记忆很久以前的交通状态,从而应用到当前状态的预测中)。LSTM还学习了对词序敏感、对主动语态和被动语态相对不敏感的短语和句子表示。最后,我们发现对所有输入序列(不是目标序列)做逆序处理后显著地提高了LSTM的性能,因为这样做会在输入序列和目标序列之间引入许多短期依赖关系,从而使优化问题变得更加容易。

简介

深度神经网络(DNNs)是一种功能极其强大的机器学习模型,在语音识别和视觉对象识别等困难问题上表现优异。DNNs之所以功能强大是因为它们可以用很少的步骤执行任意并行计算。虽然神经网络与传统的统计模型有关,但它们能够学习复杂的计算。此外,只要有足够的有标记的训练集来确定网络参数,就可以使用有监督的反向传播算法对DNNs进行训练。

尽管DNNs具有灵活性和强大的功能,但其输入和输出只能用用固定维数的向量来编码。这是很大限制,因为许多重要的问题最好用长度未知的序列来表示。例如,语音识别和机器翻译(输入输出不可能长度相等)。因此,一个学习将序列映射到序列的不受输入输出维数限制的方法显然是有用的。

DNNs要求输入和输出的维数是已知的和固定的。(对于RNN,只要预先知道输入和输出之间的固定长度,RNN就可以轻松地将序列映射到序列。然而,如何将RNN应用于输入和输出序列长度不同且关系复杂且非单调的问题,目前尚不清楚)。

本文展示了一个直观的长短期记忆(LSTM)结构解决一般序列对序列的问题(如下图)。其思想是使用一个LSTM来读取输入序列(每次一个时间步长)通过编码获得固定维度的向量,然后使用另一个LSTM进行解码,即从该向量中提取输出序列。第二个LSTM本质上是一个递归神经网络语言模型,但它的输入是编码得到的固定维度的向量。LSTM能够成功地学习具有长期时间依赖关系的数据,所以本文中的模型也自然是基于LSTM。

简单理解一下就是输入序列为ABC以及输入序列结束符号,从开始解码出WXYZ以及结束符号,停止解码。多说一句该模型架构在翻译任务上,均取得了不错的效果,且还有巨大的提升空间(比如引入Attention注意力机制)

该模型在长句子上表现很好,因为我们颠倒了训练集和测试集中输入序列中单词的顺序(只颠倒输入序列,不颠倒输出序列)。这样做,我们引入了许多短期依赖关系从而使优化问题变得更简单。

LSTM的一个特性是它能将一个可变长度的输入语句映射成一个固定维度的向量表示。考虑到翻译往往是原句段落的释义,翻译目标鼓励LSTM找到能够表示其含义的句子表示形式,因为具有含义相近的句子彼此接近,而含义不同的句子会距离很远。结果表明我们的模型能够识别词序,并且对主动语态和被动语态也不敏感。

创新点

(1)首先我们使用了两种不同的LSTM:一种用于输入序列,另一种用于输出序列,这样虽然增加了模型参数,但计算成本的增加可以忽略不计,并且可以提高模型的泛化能力。

(2)其次,我们发现深度LSTM明显优于浅层LSTM,因此我们选择了一个4层的LSTM。

(3)第三,我们发现颠倒输入句子的单词顺序非常有价值。例如,不是映射将a, b, c 映射到α, β, γ,而是将 c, b, a 映射到α, β, γ。其中α, β, γ是翻译后的a, b, c。这样, a 就离α很近, b 就离β很近, 依此类推。(正如上面所提到的,一个段落中有含义相近的句子彼此接近,而含义不同的句子会距离很远)

主体内容

只是学习建模思想,所以NLP领域的专业知识和建模过程就略过了。

模型的实现上,其实Seq2Seq模型就是一个使用了LSTM层Encoder-Decoder自编码器模型,Keras 中也比较适合新手实现。

类似于这样的……


或者这样的……

特别之处

将输入进行颠倒逆序:

文章说虽然我们对这一现象没有一个完整的解释,但我们认为这是由于对数据集引入了许多短期依赖关系造成的。

但是又强行解释到:通过颠倒输入序列中的单词,保持输入序列中对应单词与输出序列的平均距离不变。然而,输入序列中的前几个单词现在与输出序列中的前几个单词非常接近,因此问题的最小time lag大大减少,而句子末尾的词距离变长的代价似乎并不显著。因此,反向传播更容易在输入序列和输出序列之间“建立通信”,从而大大提高了整体性能。

展望

土木工程和交通工程领域的时间序列处理问题上,或许可以探索借鉴本文的建模思想,以得到更好的结果。

每一个不曾起舞的日子,都是对生命的辜负。

——  尼采

Transportation-ML

与你分享科研成长的乐趣

长按二维码关注


推荐阅读
  • 本文探讨了图像标签的多种分类场景及其在以图搜图技术中的应用,涵盖了从基础理论到实际项目实施的全面解析。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 探索电路与系统的起源与发展
    本文回顾了电路与系统的发展历程,从电的早期发现到现代电子器件的应用。文章不仅涵盖了基础理论和关键发明,还探讨了这一学科对计算机、人工智能及物联网等领域的深远影响。 ... [详细]
  • 基于2-channelnetwork的图片相似度判别一、相关理论本篇博文主要讲解2015年CVPR的一篇关于图像相似度计算的文章:《LearningtoCompar ... [详细]
  • 京东AI创新之路:周伯文解析京东AI战略的独特之处
    2018年4月15日,京东在北京举办了人工智能创新峰会,会上首次公开了京东AI的整体布局和发展方向。此次峰会不仅展示了京东在AI领域的最新成果,还标志着京东AI团队的首次集体亮相。本文将深入探讨京东AI的发展策略及其与BAT等公司的不同之处。 ... [详细]
  • 计算机学报精选论文概览(2020-2022)
    本文汇总了2020年至2022年间《计算机学报》上发表的若干重要论文,旨在为即将投稿的研究者提供参考。 ... [详细]
  • 非公版RTX 3080显卡的革新与亮点
    本文深入探讨了图形显卡的进化历程,重点介绍了非公版RTX 3080显卡的技术特点和创新设计。 ... [详细]
  • 本文探讨了卷积神经网络(CNN)中感受野的概念及其与锚框(anchor box)的关系。感受野定义了特征图上每个像素点对应的输入图像区域大小,而锚框则是在每个像素中心生成的多个不同尺寸和宽高比的边界框。两者在目标检测任务中起到关键作用。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • 信用评分卡的Python实现与评估
    本文介绍如何使用Python构建和评估信用评分卡模型,涵盖数据预处理、模型训练及验证指标选择。附带详细代码示例和视频教程链接。 ... [详细]
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • 机器学习核心概念与技术
    本文系统梳理了机器学习的关键知识点,涵盖模型评估、正则化、线性模型、支持向量机、决策树及集成学习等内容,并深入探讨了各算法的原理和应用场景。 ... [详细]
  • 2017年人工智能领域的十大里程碑事件回顾
    随着2018年的临近,我们一同回顾过去一年中人工智能领域的重要进展。这一年,无论是政策层面的支持,还是技术上的突破,都显示了人工智能发展的迅猛势头。以下是精选的2017年人工智能领域最具影响力的事件。 ... [详细]
  • 本文档旨在帮助开发者回顾游戏开发中的人工智能技术,涵盖移动算法、群聚行为、路径规划、脚本AI、有限状态机、模糊逻辑、规则式AI、概率论与贝叶斯技术、神经网络及遗传算法等内容。 ... [详细]
  • 回顾与学习是进步的阶梯。再次审视卷积神经网络(CNNs),我对之前不甚明了的概念有了更深的理解。本文旨在分享这些新的见解,并探讨CNNs在图像识别和自然语言处理等领域中的实际应用。 ... [详细]
author-avatar
翻版的袁城
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有