数据变金矿:一文读懂序列模型(附用例)

简介:

简介

众所周知,人工神经网络(ANN)的设计思路是模仿人脑结构。但是直到10年前,ANN和人类大脑之间唯一的共同点是对实体的命名方式(例如神经元)。由于预测能力较弱并且实际应用的领域较少,这样的神经网络几乎毫无用处。

但是随着近十年来技术的飞速进步,神经网络越来越接近人脑,这使得ANN在各个行业中应用得越来越多。

86718798d9d6fb1044bcb773771ce2535bca5409

本文中,我们将介绍人工神经网络(ANN)领域的两大革新,这些革新使得ANN更接近于人类大脑。

目录

d47e62d2b349aca45e42305ed6714efbe5ed61d9ANN领域的两大革新
d47e62d2b349aca45e42305ed6714efbe5ed61d9思想实验
d47e62d2b349aca45e42305ed6714efbe5ed61d9序列模型的实际应用
d47e62d2b349aca45e42305ed6714efbe5ed61d9序列生成器
d47e62d2b349aca45e42305ed6714efbe5ed61d9序列到序列NLP模型
d47e62d2b349aca45e42305ed6714efbe5ed61d9一些非文本的序列到序列模型

ANN领域的两大革新

d47e62d2b349aca45e42305ed6714efbe5ed61d9 随着GPU极大地提升了计算能力,我们可以大幅度地增加神经元的深度和广度。然而这样的人工神经网络仍然远远不及大脑的神经元数量。
d47e62d2b349aca45e42305ed6714efbe5ed61d9 ANN现在既可以处理输入节点的序列数据,也可以处理输出节点的序列数据。这和我们大脑的工作模式一样。人类大脑并不是通过二分类来理解复杂的理念的。基于一系列给定的信息,我们形成了“思想”,随后大脑会通过一系列可以理解的词汇来表达“思想”。

我们能否在ANN中引入“思想”的概念呢?答案是肯定的,本文将进一步讨论这个理念。

14dd3b5c4dd5a5d04478c54fef6fb1ed2efefe0a

现实世界的大部分数据都是以序列的形式出现的,这使得序列模型受到越来越多的关注。序列可能是数列、图片像素序列、视频序列或者是一段音频序列。

在过去的十年间,我们已经存储了近1000PB(或者超过109GB)的非结构化数据,以前我们很难从中提取信息,幸运的是,我们现在有序列模型这样新型的神经网络结构,它可以把数据变成金矿。

本文并不讨论序列模型背后所有复杂的数学原理,或是提供一些运行序列模型的示例代码(我将把代码留给以后的文章)。本文想要提供一些行业内应用序列模型的实际案例,从而帮助你识别出可以通过此类模型解决的商业问题。

为了更好地理解本文,接下来希望你能想象一个场景。请开启你的分析推理模式吧!

思想实验

假如现在沃尔玛指派你负责一个新项目 – WalKiosk,希望你带领团队开发出无人自助超市,顾客只需要和沃尔玛的Kiosk互动就可以完成购物,就好像自动售卖机一样。沃尔玛想把这样的Kiosk应用在美国各地。


Kiosk和普通自助售卖机的关键区别是Kiosk不会展示售卖商品的名录,而是通过音频开启一个类似Google 的搜索引擎。顾客走到Kiosks面前,以“OK Walmrt, xxxxxx”这样的关键字开头,然后说出或输入想要的商品。下面是一个交互案例(你可以试着评估一下人类售货员是否能比Kiosk 做的更好):

顾客说“OK Walmrt,,我想要Leonardo DiCaprio 和Nolan搭档的第一个电影中,第一幕里他穿的那双鞋。”使用的是某国语言。

你的团队要做的是让Kiosk快速搜索,如果找到一个可靠的答案,就通过客户咨询时使用的语言来回复,比如“Leonardo DiCaprio穿的是黑色xxxxx款的Nike鞋。点击链接观看您所需物品的短视频介绍。好消息--我们目前有您需要的款式和鞋码,价格是200美元。由于您是沃尔玛的忠实用户,我为您找到了合适的折扣!立即购买仅需150美元。”

如果顾客说“好的我买了”,Kiosk会在顾客付款后立刻交货。

Kiosk最后说道“感谢XYZ先生今日的惠顾,请为我们的服务提供宝贵建议,以便我们不断改进”,然后顾客通过文字或语音留下对本次交易的反馈后离开。

这样一个简单的交易现在如今的世界里要占据你大块的时间,但是今后只需要不到两分钟(如果一切正常的情况下)。

这听起来是不是很超前?实现Kiosk的功能主要通过一个简单的结构--序列模型。以下是Kiosk需要具备的功能列表:

d47e62d2b349aca45e42305ed6714efbe5ed61d9语音识别 用于理解顾客所述的内容。
d47e62d2b349aca45e42305ed6714efbe5ed61d9机器语言翻译 用于将顾客的语言翻译为指定的语言(比如英语)。
d47e62d2b349aca45e42305ed6714efbe5ed61d9命名实体/主题提取 用于找到步骤2中顾客需要的主要物品。
d47e62d2b349aca45e42305ed6714efbe5ed61d9关系分类 用于标记步骤3中各种实体之间的关系。
d47e62d2b349aca45e42305ed6714efbe5ed61d9查询应答 (类似Google搜索)通过核心知识图,找到步骤3和4中实体的关系。
d47e62d2b349aca45e42305ed6714efbe5ed61d9语音生成 将步骤5中找到的所有相关信息生成顾客需要的答案。
d47e62d2b349aca45e42305ed6714efbe5ed61d9聊天机器人 使机器的对话能力更接近于人类。
d47e62d2b349aca45e42305ed6714efbe5ed61d9文本总结 用于将用户的反馈总结为关键点或痛点。

d47e62d2b349aca45e42305ed6714efbe5ed61d9产品销售预测用于补充库存。

5853244d4316c3501f9ab5565562f3302e6ef2be

完成Walkiosk所需的不仅仅是以上九个功能,但是它们足以实现核心想法。九个功能中的任意一个都可以通过单一结构----序列模型构建。

你可以将序列模型想象为一个几乎保持不变的黑匣子,只需要按这九个功能改变输入和输出数据,每个功能的模型架构是相同的。我们可以进一步生成以任何语言为输入的单一模型,一并完成自助服务过程、报告过程、库存管理过程。

如果这还不足以帮助你完整了解序列模型,让我们整理一个序列模型可以实现哪些功能的详尽列表。

序列模型的实际应用

为了确保列表尽可能涵盖序列模型的潜在用例,我们基于输入和输出序列的类型进行分类。输入和输出可以是以下任意一种:标量(Scalar)、趋势、文本、图像、音频和视频。如果以上六种都可以作为输出和输入,我们一共得到36种分类,然而不是每一种组合的研究都已经成熟。

在阅读下面这个列表之前,你可以先停下来。尝试写出你自己的用例列表(可以参考前文的思想实验)。

列表如下:

4d82999a4a7be4a7abb6f1e199f2cc4023abb97a

表格中的名词解释:

类型是输入或输出的类型。

元素是输入或输出序列中元素的数目。

用例是分类中可能的应用方向。

下面我们将介绍一些实际案例,带你领略序列模型的超能力。

首先,我们先介绍最简单的—序列生成器

这些生成器通常采用标量作为输入,标量输入可以是任意的随机种子或数据。以下是一些生成器的案例:

ff68c72ec4733b1c24b1edb5efde6ae012c8c1aa

值得注意的是,我们可以用任何特定类型的数据来训练模型。例如,如果我们用哈利波特的书来训练文本生成器(Text generator),很可能会得到一段有关于哈利波特主人公的奇幻文字。如果你足够幸运,可能会得到一个有实际意义的章节,于是你创造了属于你的独创内容。

如果你用爵士乐训练模型,你可能会通过模型生成同一风格的新曲子。如果你用动物的图片训练模型,你可能会看到杂交物种的样子。

其次,我们介绍最受欢迎的-序列到序列 NLP模型

401a9f3e1190d146f466fb452476085433313ad1

机器语言翻译(Machine Language Translation)已经达到新的高度,现在正和人工翻译展开激烈的竞争。如今,你可以轻松找到基于序列到序列模型(Sequence to sequence, seq2seq)核心概念的实时翻译机器。

文本总结(Text Summarization)是序列模型的另一个重要用例。文本总结可以显著减轻以下工作负担--阅读顾客冗长的投诉、电话/通讯监控、汇总顾客对产品的反馈等。

聊天机器人(Chatbot)是另一个重要的用例,目前被广泛地应用于经营活动、呼叫中心、交流中心和类似Siri、Google Home、Alexa类型的用户辅助。

最后,我们介绍更多非文本的序列到序列模型

fc12b7ec21e398c2b9a2f98ee1a005db625a555a

语音识别(Speech Recognition)是目前最受投资追捧的一个领域,其在个人Al助理(Alexa、Google Home等)和呼叫中心语音记录工具等用例中扮演了非常重要的角色。

在上图提到的三项技术中,目前有市值约10亿美元的企业以语音识别为核心竞争力,语音识别中广泛地使用序列到序列模型。图像描述(Image Captioning)是最热门的研究领域之一,它在社交媒体领域有广泛应用。至于字幕生成(Subtitle Generator),这项技术尽管还没有达到产品阶段,但是目前也在积极地探索中。

尾记

如今数据科学领域的很多牛人都在致力于解决已经存在的问题。然而对于任何成功的数据科学家或分析员来说,识别并提出可以分析解决的问题是同样重要的任务。后者是非常不同的工作,并且不需要过多的编程经验或数学背景。你唯一需要做的是通过给定的工具了解哪些是可能实现的,而哪些不能。

问题识别是资深的分析专业人士必备的技能。我希望这篇序列模型的入门文章可以激励你去寻找领域内能以此工具解决的新问题。


原文发布时间为:2018-05-28

本文作者:数据派

本文来自云栖社区合作伙伴“数据派THU”,了解相关信息可以关注“数据派THU”。

相关实践学习
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
5月前
如何用公式化思维?几个经典公式收集
如何用公式化思维?几个经典公式收集
|
11天前
|
机器学习/深度学习 自然语言处理 算法
汉字的探索性分词方式:基于字图的部首分解与图神经网络的多因素表示
本文提出一种结合传统字符嵌入与部首结构的图表示法,用于捕捉汉字的语义和组成结构,提升大模型对汉字的理解能力。方法包括将字符分解为部首,构建部首图,并利用图卷积网络生成嵌入。此方法增强了模型的泛化能力和灵活性,并提供了代码实现。未来可优化的方向包括改进图构建算法、扩展部首系统、探索更先进的图神经网络架构及多模态融合。
|
1月前
|
人工智能 自然语言处理 计算机视觉
浙大李玺团队:指代表达理解新方法,ScanFormer粗到细迭代消除视觉冗余
【9月更文挑战第14天】近年来,人工智能的迅猛发展推动了计算机视觉与自然语言处理交叉领域的研究,其中指代表达理解任务备受关注。REC的目标是在图像中根据自然语言描述定位目标对象。然而,现有方法因密集感知图像而导致计算开销大。为此,浙江大学李玺团队提出了ScanFormer,一种迭代感知框架,通过自顶向下的方式逐步提取与语言相关的视觉块,并通过信息性预测丢弃不相关部分,有效减少冗余,提升模型效率。实验表明,ScanFormer在多个基准数据集上表现优异,实现了准确性和效率的良好平衡。不过,它目前仅支持单目标定位,且在某些场景下可能不如其他方法精确。
26 1
|
3月前
|
存储 算法 索引
深度挖掘:Python并查集背后的秘密,让你的代码逻辑清晰如水晶!
【7月更文挑战第17天】并查集,一种高效处理集合合并与查询的数据结构,常用于图论、社交网络分析等。Python中的实现利用数组存储元素的父节点,通过路径压缩和按秩合并优化查找和合并操作。简单代码示例展示了查找和合并方法,以及应用在检测无向图环路。并查集以其优雅的解决方案在算法世界中闪耀,提升代码的清晰度和效率。
46 5
|
5月前
|
机器学习/深度学习 算法 人机交互
编码之禅:技术洞见与内在平衡
【2月更文挑战第15天】 在技术的世界中,我们常常追求更快、更高效、更智能。然而,在这无限追求的过程中,我们是否忽略了技术本身的精神层面?本文将探讨技术发展背后的哲学思考,以及如何在快节奏的编程生活中寻找内在的平衡点。通过分享个人的编程感悟和实践,旨在启发读者对技术的深入理解和生活的和谐统一。
|
5月前
|
C++
【SPSS】两独立样本的曼-惠特尼U检验详细操作教程(附案例实战)
【SPSS】两独立样本的曼-惠特尼U检验详细操作教程(附案例实战)
1500 0
|
机器学习/深度学习 人工智能 算法
NeurIPS 2022 | 直面图的复杂性,港中文等提出面向图数据分布外泛化的因果表示学习(1)
NeurIPS 2022 | 直面图的复杂性,港中文等提出面向图数据分布外泛化的因果表示学习
NeurIPS 2022 | 直面图的复杂性,港中文等提出面向图数据分布外泛化的因果表示学习(1)
|
机器学习/深度学习 人工智能 自然语言处理
NeurIPS 2022 | 直面图的复杂性,港中文等提出面向图数据分布外泛化的因果表示学习(2)
NeurIPS 2022 | 直面图的复杂性,港中文等提出面向图数据分布外泛化的因果表示学习
224 0
|
机器学习/深度学习 人工智能 自然语言处理
将数学题转化成代码,谷歌这项研究让机器证明的正确率大幅提高
将数学题转化成代码,谷歌这项研究让机器证明的正确率大幅提高