导读: 去年,增强分析 ( Augmented Analytics ) 与人工智能、量子计算、和区块链等技术一起被 Gartner 评选为十大战略趋势之一,高调走入公众的视线。Gartner 认为,增强分析将颠覆目前的数据分析模式,代表了数据和 BI 能力的第三大浪潮。在 Gartner 的分析与商业智能技术成熟度曲线上,增强型分析傲视群雄的处在"期望膨胀期"的最高点上,其热度可见一斑。
图1 Gartner 相关研究
那么,这大热的增强分析到底是什么?与传统 BI 有何差别?将为业务带来怎样的影响?现在市场有哪些相关的解决方案?我们有没有相关技术布局?我们查阅了相关文献资料,并尝试通过这篇文章去回答这些问题,希望能抛砖引玉,与大家一起学习、探讨。
增强分析的概念由 Gartner 在2017年提出,在 Gartner 当年的报告《Augmented Analytics Is the Future of Data and Analytics》中,给出了增强分析的定义:
“Augmented analytics is a next-generation data and analytics paradigm that uses machine learning to automate data preparation, insight discovery and insight sharing for a broad range of business users, operational workers and citizen data scientists.——增强分析是下一代数据和分析范式,它面向广泛的业务用户、运营人员和民间数据科学家,利用机器学习将数据准备,洞察发现和洞察共享等过程自动化。”
从 Gartner 这个定义看来,在概念提出之初定义还是很模糊和宽泛的,在之后的两三年,Gartner 也在不同的报告中围绕这一概念做了许多的讨论。我们对其中的观点进行了总结,从三个角度来看增强分析相较于传统数据分析到底"增强"在哪里。
从数据分析的流程而言,数据分析的过程可以抽象为三个阶段:
增强分析的重点在于提高这一流程的易用性 ( 无代码化 ) 和自动化程度。如下图所示,在数据准备,增强分析通过自动化帮助我们加速一些耗时耗力的工作;在洞见发现阶段中,自然语言查询将优化人机之间的交互方式,而自动化洞察能够帮助我们及时的发现数据中的规律和变化,原本复杂的建模也被自动化建模过程取代;此外,在结果的展示方面,自然语言生成、自动化报表等技术也大大降低了数据分析的门槛,催生出更多的"民间数据科学家"。
图2 数据分析流程变化[1]
从数据分析中各角色的分工而言,增强型分析带来的变化非常显著。从下图可见,增强分析在赋能数据分析人员,从而为 IT 人员减压。数据分析人员可以把控的事情变得更多,以前可能需要 IT 技术人员提供的支持,现在数据分析人员自己就能按具体需求操作。这样的变化将带来业务流程的效率大幅提升,也避免了需求传递造成的信息偏差。
图3 数据分析角色任务变化
从数据分析的层次而言,之前 Gartner 曾定义了数据分析的四种能力,如图4。传统的数据分析主要关注于利用统计学方法给出描述性分析和诊断性分析。而对于预测性和处方性分析,之前则必须在数据科学家的帮助下才能完成。随着数据建模的过程不断自动化,基于数据挖掘模型的数据分析能力将越来越普及,也就是说我们能够轻松的做更多的预测性分析和处方性分析,企业对数据认识的整体能力也将不断加强,数据的价值也将被更大程度的释放。
图4 数据分析的四种能力
总结而言,增强分析并不是一种技术或是一个产品,而是一系列的技术和方法,其目的就是为数据分析提效和降低数据分析的门槛。这其中包含的很多技术其实已经问世多年,而 Gartner 为他们取了个酷炫的名字以后,就成功将他们推向了风口浪尖。值得一提的是,"商务智能"这个古老的概念也是由 Gartner 提出的。
对增强分析的概念有了基本的认知之后,我们来看看增强分析具体包含了哪些技术能力。结合 Gartner 的分类,我们可以将增强分析相关的技术分为了三类:增强数据准备、增强数据分析和增强数据挖掘。
准备数据通常是最耗时的工作。这里的数据准备不仅包含所谓的 ETL 或者 ECTL,通常包含有数据探查、数据质量、数据协调、数据模型、数据清洗、数据聚合,元数据管理,以及数据编目等工作,涵盖了数据管理的各个方面,甚至向前延伸到数据集成和数据湖的管理。
增强数据准备通常从两个方向着手加速以上过程:
图5 Paxata 提供智能数据连接
显然,攻克数据准备这一瓶颈将大大提升分析的效率,从2012年前后,市场上开始出现专注于数据准备的供应商,包括 ClearStory Data、Datawatch、Paxata、Trifacta 等公司。近两年,许多 BI 平台和数据科学平台厂商也都在将增强数据准备作为重点提升方向。2018年,CAE 仿真平台厂商 Altair 宣布收购 Datawatch;2019年,专注于 AutoML 的数据科学平台 DataRobot 将 Paxata 纳入麾下;除了资本运作,更多的大厂也在优化自己产品的数据准备功能,例如 Tableau 推出的 Tableau Prep ( 如下图 ),PowerBI 推出的 Power BI Premium 都提供了简单直观的自助式数据准备功能。
图6 Tableau Prep 图形化界面
目前,图形化的操作界面似乎已经被习以为常了,但是,针对数据准备目前能够提供的算法辅助功能还是散点式的,虽然交互式界面使得用户操作数据不再依赖代码,但整个过程仍需要人工大量的参与,相信这一领域仍有很大的发展空间。
与数据准备思路类似,我们也可以将增强数据分析相关的技术按照其业务应用目标划分为了易用和智能两类。易用类技术帮助数据分析的用户无需建模和编写算法,而是通过可视化和对话界面来研究数据,大大提高了数据分析的可用性;而智能类技术在帮助用户自动寻找数据规律,将相关结果自动的转化为可视化表达,提高分析的效率。
① 易用性
易用类技术主要包含了自然语言查询 ( Natural Language Query,NLQ ) 和自然语言生成 ( Natural Language Generation,NLG ) 两个方向。
自然语言查询 ( NLQ ):
自然语言查询是指用户直接在搜索框输入或通过对话的方式查询数据。想要将用户的问题与数据表中的数据对应上,NL2SQL ( Natural Language to SQL ) 技术就是其中的关键。举个例子,用户可能会问「特斯拉的车总共卖了多少辆?」,通过 NL2SQL 就会将其转化为相应的 SQL 表达式是「SELECT SUM(销量) FROM TABLE WHERE 品牌==“特斯拉”;」。NL2SQL 这一任务的本质,是将用户的自然语言语句转化为计算机可以理解并执行的规范语义表示,是语义分析 ( Semantic Parsing ) 领域的一个子任务。
在深度学习方法流行之前,这一领域的解决方案主要是通过高质量的语法树和词典来构建语义解析器,再将自然语言语句转化为相应的 SQL,例如 Google 2017 年提出的 Analyza 方法[2],Sen 等人提出的 NLIDB 方法[3]。这类方法都具有类似的框架,以 NLIDB 为例,通过 Evidence Annotator 按照规则对查询语句进行分解,而后通过多步的"组装"拼接成 SQL 语句。
现在的解决方案主要是深度学习与 SQL 特征规则相结合的方法。
图7 NLQ方法NLIDB[3]系统框架
近几年在学术界和业界这一领域都得到了广泛的关注,Salesforce、斯坦福、耶鲁等机构提出了 WikiSQL、WikiTableQuestions、Spider、SParC 等大规模数据集,并得到多次评测结果的提交。其中,Salesforce 于2017年提出的 WikiSQL 数据集是目前规模最大的有监督数据集。在这个数据集上,SQL 执行结果的准确率目前已经突破90%。但 WikiSQL 数据形式过于简单,只支持最基础的 SQL 语句,而聚组、排序、嵌套等其它众多常用的 SQL 语法都不支持。这样的数据集并不符合真实的应用场景。相比之下,Spider 等数据集更贴近于真实应用场景,支持几乎所有 SQL 语法的用法,而相关的评测各项指标还都很低。如何应对复杂的 SQL 语句仍是非常值得探索的方向。
NLQ 技术在产品形态上主要有两种,搜索式和对话式:
自然语言生成 ( NLG ):
NLG 技术是将语义信息以人类可读的自然语言形式进行表达。根据输入信息的不同,NLG 又可分为:数据到文本的生成、文本到文本的生成、意义到文本的生成、图像到文本的生成等。在数据分析中应用 NLG 主要是数据到文本的生成,它能够将分析结果转换为人类理解的清晰叙述,以帮助用户更好的理解数据,讲好数据故事。
与其他 NLP 领域类似的,在 NLG 技术发展的历史过程中,主要包括基于模板的 NLG 和基于神经网络的 NLG 方法两个阶段。
Reiter 等人[4]将基于模版的系统进行了归纳总结,将 NLG 系统划分为文本规划、句子规划、句法实现3个模块。其中,文本规划决定文本要说什么 ( what );句法实现决定怎么说 ( how );句子规划则负责让句子更加连贯。在该框架下,针对不同模块,若干基于统计的模型被提出。
图8 典型的三阶段式 NLG 架构[4]
近几年,基于深度学习的 NLG 方法也层出不穷。在今年2月份,微软公布了史上最大的语言生成模型,Turing-NLG,拥有170亿参数量,可以说是超级庞然大物。基于神经网络的方法又分为基于神经机器翻译 ( Neural Machine Translation ) 的方法和基于神经语言模型 ( Neural Language Model ) 的方法。前者将基于结构化数据的文本生成任务视为一个翻译任务,即输入的源语言是结构化数据,输出的目标语言是文本[5];后者则主要是将以 bert 为首的大量预训练模型应用到了 NLG 任务中。
对比基于模板的方法和基于深度学习的 NLG 方法,基于模板的更可控,但是结果较为生硬、死板,而且后期扩展对初期规划依赖较大,常用于天气预报、财报、新闻等场景;而基于深度学习的端到端方法可以更好的生成创意性、个性化、娱乐性等文本,但是效果不可控或者难以控制,目前的研究方向主要是将两者进行融合。这一领域的另一个挑战来自于数据,一方面,不同应用场景中的文本要求差异很大,现在能够用于训练的数据集仍然不够丰富;另一方面,data2text 任务的训练数据需要大量数据到文本的映射,收集成本很高。这就限制了需要大量训练数据的深度学习模型发挥出更好的效果。
而在产品应用方面,BI 平台目前对 NLG 的应用还比较简单,例如下图 Tableau 的 Expain Data 中的 C 区域,就是对结果的简单解释。想必其背后应该是一套基于模板的方法,随着分析人员对自动化报告的要求越来越高,这一领域 NLG 的应用也会不断深入,不知道未来BI能不能自己帮董秘们写出一份慷慨激昂的董事会发言稿。
图9 Tableau Expain Data 界面
② 自动化
另一个方向就是自动化,自动的帮助用户完成数据分析中的一些过程。这里典型的技术包括自动洞察 ( automated insights ) 和自动可视化 ( automated visualization )。
自动洞察:
自动洞察,也叫主动洞察,是增强分析的核心功能,但同样也是一个宽泛的概念。现在大部分的主流 BI 平台都有自动洞察的相关功能推出,且方向各有不同。自动洞察的目标就是代替一部分分析师的工作,从数据中发现潜在信息和价值。从任务目的的角度划分,主流的技术有以下几个方向:
现在学术界和 Google、微软等大型科技公司都在自动化 insight 推荐方面走的比较远,且方向各有不同。以微软的 PowerBI 为例,其推出的"快速洞察" ( Quick Insights ) 功能能够自动对于源数据做出各种交叉的一阶或者多阶计算 ( 百分比,排序,同环比 ),从而挖掘数据内部各种趋势,显著点等洞察,同时发现数据之间的相关性、数据内的异常点、时序数据的趋势以及周期性变化规律等等,并进行可视化呈现。
图10 PowerBI 快速洞察功能
自动可视化:
自动可视化的概念就非常直观了,就是根据你的数据结果自动的选择可视化的方式进行展示,以清晰的展现数据分析结果。自动化报表与自然语言查询、自然语言生成等技术配合,将大大加快整个分析流程,对前台业务人员十分友好。
但这同样是个很大的话题,数据可视化毕竟不是选择用柱状图还是折线图展示这么简单。它大概可分成两个层次:
如果把可视化比作是一种数据到设计的翻译,那么好的可视化也需要做到"信达雅"。生成的数据表不仅要能被看懂,还要美,还要能交互,更高的要求是能够帮助用户讲好故事 ( storytelling ),比如直接生成 deck 或者海报。
在学术领域,自动化图表技术可以分为两类,基于规则的方法和基于机器学习的方法[6]。基于规则的方法依赖于预先设置好的规则库,这种方法的效果非常依赖于规则库的质量,也缺少灵活性。另一类方法则是将问题转化为了分类或排序问题,而后训练相应的模型,例如将一种可视化方案分类为"好"或"坏"。这其中,如何刻画源数据的特征和可视化图表的特征是相关研究重点讨论的问题。
在产品方面,基础的自动化图表已经有许多主流BI厂商提供,一些开源的软件也有着不错的支持,例如 AVA,Rath 等等。感兴趣的同学可以关注一年一度的可视化领域顶级会议 IEEE VIS,每年都会有有意思的方法、工具出现。
既然前面已经谈过了数据准备,这里谈到的机器学习就更加纯粹的关注于模型本身,比如特征工程、模型训练、模型部署、模型解释以及最后的模型监控和管理。与增强数据分析相比,增强机器学习面向的更多是数据科学家,通过算法将特征工程、模型选择与超参数优化,以及深度神经网络结构搜索等机器学习过程中的关键步骤自动化,帮助数据科学家更高效的得到满意的模型。许多 BI 平台都提供嵌入的机器学习模型,例如预测、聚类等,其中将许多之前必须数据科学家来做的工作变成了自动的流程,使得数据分析师或者业务人员也可以通过图形化界面完成,这就大大释放了数据科学家的精力。
这部分的核心技术就是近几年大热的自动机器学习 AutoML。早期的 AutoML 研究起源于 Meta Learning,早在上个世纪八十年代就被提出,数十年间在机器学习领域的相关研究主要集中在超参优化。近年来随着深度学习的广泛应用,Meta-Leaning 领域在学术界又一次升温。同时,自动化特征工程、自动化模型评价等技术的研究和商业化也使得 AutoML 的概念覆盖到了机器学习的全流程。
图11 AutoML 应用于机器学习全流程[7]
AutoML 要解决的问题主要是释放机器学习过程中的人力投入。从提升技术生产力的核心环节角度看,AutoML 覆盖的领域可以分为三个方向:
① 特征工程:
特征工程在机器学习中都有着举足轻重的作用,同时也非常考验数据科学家的能力。在 AutoML 中,自动特征工程的目的是自动地发掘并构造相关的特征,使得模型可以有最优的表现。特征工程可以分为特征生成、特征选择、特征编码等步骤,而其中的小步骤是非常繁杂的(做过的人应该深有体感~),因此这部分的策略和技术方法也是非常多样的,在此就不做赘述了。常用的工具包括 Tsfresh、Trane、Categorical Encoding、boruta_py、Featuretools 等等。
② 机器学习 ( 模型选择与超参优化 ):
这部分主要面向传统的机器学习,在训练过程中需要选择模型,设定模型的参数,这是早期的研究重点,也是当前产品化的主要方向。现有的平台基本上都是预定义一系列模型,比如预定义20种不同的模型,在试每个模型的过程中给这些模型选择参数。选择参数比较常见的做法是将调参和训练分离开,调参过程给训练过程建议一组或多组参数,训练过程反馈结果,然后调参过程根据反馈结果产生下一组建议的参数。这个过程一直迭代直至满足了终止条件。调参过程中比较常见的算法为网格搜索,随机搜索和贝叶斯优化等。
③ 深度学习 ( 网络架构 ):
对深度神经网络结构搜索 ( NAS ) 问题的探索是近几年最热的研究方向。T.Elsken 等人[7]将该问题的研究归纳为三个方向: 搜索空间、搜索策略和评价预估。
2018年 Google 推出了一系列 AutoML 商业化产品 ( AutoNLP,AutoCV,AutoTranslation,AutoTable ),这一概念在业界也开始受到广泛关注,之后 Amazon、Microsoft、Facebook、Uber 及很多创业公司都纷纷推出了自己的自动机器学习库或产品。国内互联网公司同样推出了相关产品。阿里云机器学习平台 PAI ( Platform of Artificial Intelligence ) 是阿里巴巴推出的机器学习服务平台,其中 PAI AutoLearning 自动学习是 PAI 推出的全新自动机器学习平台,支持在线标注、自动模型训练、超参优化以及模型评估,在平台上只需准备少量标注数据,设置训练时长即可得到深度优化的模型。
阿里机器智能技术-智能服务事业部于2017年推出了创新产品数据机器人,以对话机器人形式提供多维数据查询、智能分析、预警推送、数据可视化等多项数据智能服务。该项目开始之初,增强分析的概念还远没有现在这么火,而现在看来,数据机器人正是增强分析的一个典型案例。
数据机器人于2017年10月在钉钉上首次上线,最初通过机器人平台的会话流和意图配置提供客户体验领域的指标查询。经过两年多的业务发展,数据机器人已接入阿里集团20多个 BU、100多块子业务的数据,并且以 PaaS 化服务的形式接入到阿里小蜜、钉钉智能助理、内外小蜜、云小助等机器人实例中,提供个性化的数据查询和分析服务。
图12 数据机器人应用实例
从功能而言,数据机器人主要功能特性都完美契合了增强数据分析的能力方向:
数据机器人对业务场景的支持,有 PaaS 和 SaaS 两种形式。通过开放的数据接入和机器人实例定制,可以高效实现业务定制的数据机器人。目前,数据机器人上公有云的准备工作也在紧锣密鼓的进行,不久后就能在云上与更多的用户见面,数据机器人的增强能力实践,也将以系列文章对外发表。
在2019年初,Gartner 在分析和商业智能平台魔力象限报告中曾作出预测:
而身处2020年的我们,似乎并没有对预测的结果有深切的体感。而在今年初,Gartner 做出了对增强分析最新的预测:
从字里行间可以感受到 Gartner 对这一方向的信心。着眼主流 BI 平台和数据科学平台,近几年的确都在这条赛道上蓄力,相信这些预测必然会实现。
正如前面提到的,增强分析旨在为数据分析提效和降低数据分析的门槛,而提升数据分析平台的易用性和自动化程度成为了发力的两个主要方向。从三类增强分析的关键技术来看:
当然,和诸多从技术成熟曲线上跌落的名词一样,当增强分析无处不在的时候,我们肯定也不再觉得它有什么"增强"之处了,而是一种理所当然的存在,这个名词也就会随之消失。
但值得一提的是,虽然增强分析一定程度上改变了目前的数据分析模式,让我们离"人人都是分析师"的共产主义又近了一步,但是并不意味着数据分析师和数据科学家变得不再重要。相反,更多"民间数据科学家"的出现,将对数据科学家的专业能力提出更高的要求,既要站的高,更多的着眼于企业数字化转型的大局对数据价值变现的体系进行设计,又要钻的深,毕竟简单题目别人的都会做了,留下来肯定都是硬骨头了。所以,诸位数据分析和数据科学的小伙伴,前路漫漫,任重而道远。
参考文献:
[1] Carlie Idoine, Cindi Howson, Rita Sallam. “Augmented Analytics Is the Future of Data and Analytics.” https://www.gartner.com/en/documents/3773164. 2017.
[2] Dhamdhere, Kedar, et al. “Analyza: Exploring data with conversation.” Proceedings of the 22nd International Conference on Intelligent User Interfaces. ACM, 2017.
[3] Sen J , Ozcan F , Quamar A , et al. “Natural Language Querying of Complex Business Intelligence Queries.” SIGMOD ’19, 2019.
[4] Reiter and R. Dale. "Building Natural-Language Generation Systems. " Cambridge University Press, 2000.
[5] Mei H, Bansal M, Walter M R. "What to talk about and how? Selective Generation using LSTMs with Coarse-to-Fine Alignment. " Computer Science, 2015.
[6] Hu K Z, Bakker M A, Li S, et al. "VizML: A Machine Learning Approach to Visualization Recommendation. " arXiv: 1808.04819, 2018.
[7] T. Elsken, et al. “Neural Architecture Search: A Survey”. arXiv:1808.05377, 2018.
作者介绍:
马玥,博士,阿里巴巴解决方案架构师。
丁建栋,博士,阿里巴巴高级数据技术专家。
本文来自 DataFunTalk
领取专属 10元无门槛券
私享最新 技术干货