罗志鹏作者深兰科技北京AI研发中心单位

AutoML在IEEE-ISI World Cup 2019竞赛中的应用:冠军团队DeepBlueAI技术分享

近日,IEEE ISI 2019国际大数据分析竞赛结果出炉,今年的竞赛包括企业投资价值评估和法律诉讼类型预测两个赛题,来自深兰科技北京AI研发中心的DeepBlueAI团队分别取得了一项冠军和一项季军的优异成绩,本文带来该团队在企业投资价值评估赛题中的算法思路与技术细节分享。

l  背景介绍

IEEE年度国际会议是安全信息学领域的旗舰会议,于2003年首次在美国亚利桑那州图森市召开。在过去的16年中,IEEE ISI会议已经从传统的智能和安全领域发展到多领域联合研究与创新。今年,第17届IEEE ISI会议在中国深圳于7月1日至3日由深圳人工智能数据科学研究所主办。 

为了促进人工智能分析行业的发展,并为学术交流和技术讨论提供一个平台,IEEE ISI会议发起了此次国际大数据分析竞赛(IEEE ISI 2019年世界杯,IWC 2019)。本竞赛面向全球高校、研究机构、企业、政府开放。共有来自中国、美国、巴基斯坦、伊拉克、英国、德国、挪威7个国家,来自华为京东、滴滴等知名企业,以及来自清华大学、北京大学、浙江大学等知名高校的三百余支队伍参赛,参赛总人数逾千人。

l  团队成绩

在企业投资价值评估赛题中DeepBlueAI团队以较大领先优势获得冠军,排名如下:

图1 最终排行榜

本次比赛提供了基于3500家上市公司全量信息,描述公司在财务、法务、股权、经营状况、舆论等方面的属性特征,包含企业的工商信息、年报、财务信息、纳税信息、股权信息、法务信息、知识产权信息、经营信息、购地信息等数据(以实际发布的数据集为准)。这些数据来自于官方统计平台,数据真实可信。每一家企业对应一个类目ID。参赛选手需要合理运用现有数据集材料,筛选出对竞赛有价值的信息进行特征构建和模型训练。

本次会议共有两个赛题:

赛题 1 企业投资价值评估

参赛者可参照企业的年报、财务信息、经营信息、资产信息、税务信息,知识产权等企业综合信息对企业投资情况进行打分,为投资者提供投资依据。

赛题 2 法律诉讼类型预测

参赛者可根据企业的法院公告、裁判文书、动产抵押、司法冻结、行政处罚、欠税信息、开庭公告等法务信息预测企业未来一段时间可能收到的法律诉讼类型,为企业规避法律风险。

本文接下来分享赛题1的思路与技术细节。

  • 评测指标

使用均方根误差RMSE 作为本次竞赛的主要性能指标。返回结果越小代表模型性能越好。 比赛成绩以参赛团队提交的测试集结果为准,此部分占总成绩 90%。同时会根据代码的鲁棒性、可扩展性、可读性为算法模型打分,此部分占总成绩 10%。比赛最终排名取决于以上 2 部分成绩总和。

l  题目特点以及主要工作

在这次比赛中,主要有以下难点:

  • 数据维度广

该赛题主办方提供37张xlsx格式的数据表格,一共包括304列。

  • 信息复杂

包括公司产品信息、工商基本信息、购地信息、海关进出口信息、年报信息、融资信息、商标信息、上市财务信息、专利信息、招标信息等。

  • 数据特征类型丰富

包括字符串、数值型、类目型、时间等

  • 数据量小

训练集仅有3000条。

对于这样大量的字段,如果直接采用人工去做特征,一方面工作量巨大,另外一方面很多特征也难以想到。故团队成员基于以上难点,采用了自研的AutoML系统进行建模,该系统包括了自动数据清洗、自动特征工程、自动特征选择、自动模型调参、自动模型融合等步骤,能极大的提高任务建模的效率,并且在此次竞赛中也大大提升了效果,使得我们在这次竞赛中取得较大领先优势。

  • 自动化数据清洗

在通常的竞赛中,我们的数据往往是比较干净的,要么采集比较规范,要么已经经过加工处理。这次竞赛提供的数据是真实的工业界应用数据,含有大量的不规范字段。比如时间列,就存在各种各样的格式,比如存在年份缩写、中文年月日、标记格式不统一(有时用“\”,有时用“-”来分隔)等情况。

7625718886eea3953b048881cbf45761579ac33692856259ad6f829ad1fc75

原始数据展示

考虑这些数据情况,可能是由于数据录入的时候,不同年代采用不同的格式,并且数据保留了原来的格式,从而造成了大量数据不规范的问题。另外数据中存在着大量的噪声。而我们的自动化数据清洗模块,对不同类型的数据使用不同的清洗方法,能够有效的清洗不规范数据。

l  特征工程

我们的特征工程部分包含两个阶段:AutoML自动特征工程阶段和业务特征强化阶段。

在AutoML自动特征工程阶段,将原始数据清洗成AutoML系统可处理的格式后,进行自动特征生成,然后进行特征选择迭代。在特征选择阶段我们采用lightGBM单模型。在自动特征工程中,我们假设通用场景类型,选择和本次任务契合的场景类型进行自动特征工程,在每一轮特征迭代过程中我们参考了上一轮特征的重要性,在重要性高的特征上面进行迭代更新。筛选出的特征中比较重要的有:行业细类特征、资历、年报等。具体的,原始特征包含了数值类型,分类类型,时间类型以及文本类型。我们对数值类型和类目特征生成了基本统计特征,以及数值和分类的聚合特征。对时间类型,提取了周期性特征。对文本特征,采用TF-IDF、LDA方法提取特征。同时我们也提取重要特征进行高阶组合,从而避免了指数级的特征组合,并且能挖掘三阶甚至四阶不同类型的特征组合,有效地提升模型性能。

图3 AutoML自动特征工程在自动特征阶段生成的全部特征累计有7000多列,自动特征选择采用递减的方式,在业务特征强化阶段,我们通过深入思考业务的逻辑,结合已有特征的重要性,挖掘出业务中我们认为应该考虑进去的信息,然后构造出能反应这些信息的特征。

在自动特征工程阶段,我们发现专利和资质认证两个信息对模型效果提升较大。这很符合我们的直觉,在对企业价值评分时,专利的数量、种类等信息无疑是非常重要的。但对不了解该领域的开发人员来说,面对有着这么多字段的复杂数据,可能要花费很长时间才能挖掘到这方面的特征。使用AutoML帮助我们快速地捕捉到了这一重要信息,从而进一步构建业务特征。

首先是针对专利信息,我们挖掘了公司的专利在时间线上的活跃度,公司在该专利领域的实力。我们猜测在长期专利数量较多或者存在上升趋势的企业投资价值评分应该更高。根据实际专利的申请审核流程,提交申请到出审核结果的时间长度,我们提取了企业在最近1、3、6、12、24个月的专利数量以及专利数量较多的种类。其次我们挖掘了每个城市每个行业的企业竞争力,用城市中各个行业的公司数量以及他们之间的相对特征来表现。我们猜测公司地址在其行业密集度较高的城市具有更强的竞争意识和竞争氛围,成长性较高,可能会得到较高的投资价值评分。之后我们挖掘了公司的认证资格竞争力信息,在行业内理论上应该是资历认证更完善的公司实力更强,风险更小,我们通过构造公司在资历全集中的完善度特征来反应这个信息。

l  模型融合

图4 模型集成为了增强最终结果的稳定性,我们采用Stacking+Bagging的方式进行模型融合。融合的主体方法是Stacking, 第一层我们采用过的模型有LightGBM、XGBoost、Random Forest、Support Vector Regressor、ExtraTrees Regressor。每个模型采用交叉验证的方式进行线下验证。

屏幕快照 2019-06-24 下午2.19.22图5 模型结果在Stacking的第二层中我们采用了基于约束的线性模型,在实验中发现效果好于其他线性和非线性模型。

在Bagging中我们使用不同seed以及随机微调了一些参数分别生成10个LightGBM和10个XGBoost模型。最后将Stacking的结果与Bagging结果进行简单线性加权融合作为最终预测结果。在这次竞赛中模型融合提升并不是很大,从榜单来看我们的单模型结果就能获得冠军,因此AutoML自动特征工程部分是我们制胜的关键。

图6 模型融合

  • 工作总结

在此次竞赛中,我们的主要工作包括:

  • 对于相似的数据创建了一键清洗系统,这套系统可以自动计算来转化货币格式、使用强规则收集时间戳和时间增量以及根据数据分布自动填写缺失值。

Ø  选择使用AutoML自动特征工程和自动特征选择。对于多维度,多字段的表单数据,AutoML可以极大的提升开发效率和模型效果。

Ø  设计了一些针对业务场景的特征。

Ø  构建了多种不同类型模型的集成,使得集成之后的效果有所提升,也增加了结果稳定性。

l  进一步工作

此次竞赛主办方提供的数据量比较小,可以收集多年的数据根据滑窗的方式获取更多的训练数据。

影响企业投资价值的因素多,可能需要更多公司动态信息,例如人员流动信息和招聘信息等,这些信息可能有助于提升预测效果。

产业AutoML交叉验证特征选择特征工程特征构建
相关数据
华为机构

华为成立于1987年,是全球领先的ICT(信息与通信)基础设施和智能终端提供商。华为的主要业务分布在无线、网络、软件、服务器、云计算、人工智能与大数据、安全、智能终端等领域,发布了5G端到端解决方案、智简网络、软件平台、面向行业的云解决方案、EI企业智能平台、新一代FusionServer V5服务器、HUAWEI Mate等系列智能手机、麒麟系列AI芯片等产品。目前华为拥有18万员工,36所联合创新中心,14所研究院/所/室,业务遍及170多个国家和地区。

http://www.huawei.com/cn
范数技术

范数(norm),是具有“长度”概念的函数。在线性代数、泛函分析及相关的数学领域,是一个函数,其为向量空间内的所有向量赋予非零的正长度或大小。半范数反而可以为非零的向量赋予零长度。

数据分析技术

数据分析是一类统计方法,其主要特点是多维性和描述性。有些几何方法有助于揭示不同的数据之间存在的关系,并绘制出统计信息图,以更简洁的解释这些数据中包含的主要信息。其他一些用于收集数据,以便弄清哪些是同质的,从而更好地了解数据。 数据分析可以处理大量数据,并确定这些数据最有用的部分。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

数据科学技术

数据科学,又称资料科学,是一门利用数据学习知识的学科,其目标是通过从数据中提取出有价值的部分来生产数据产品。它结合了诸多领域中的理论和技术,包括应用数学、统计、模式识别、机器学习、数据可视化、数据仓库以及高性能计算。数据科学通过运用各种相关的数据来帮助非专业人士理解问题。

均方根误差技术

平方平均数(Quadratic mean),简称方均根(Root Mean Square,缩写为 RMS),是2次方的广义平均数的表达式,也可叫做2次幂平均数。常用于计算误差

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

特征构建技术

特征构造(也称为构造感应或属性发现)是一种数据增强形式,可将派生特征添加到数据中。 特征构造可以使机器学习系统在各种学习任务中构建更准确的模型。

特征选择技术

在机器学习和统计学中,特征选择(英语:feature selection)也被称为变量选择、属性选择或变量子集选择。 它是指:为了构建模型而选择相关特征(即属性、指标)子集的过程。

交叉验证技术

交叉验证,有时亦称循环估计, 是一种统计学上将数据样本切割成较小子集的实用方法。于是可以先在一个子集上做分析, 而其它子集则用来做后续对此分析的确认及验证。 一开始的子集被称为训练集。而其它的子集则被称为验证集或测试集。交叉验证的目标是定义一个数据集到“测试”的模型在训练阶段,以便减少像过拟合的问题,得到该模型将如何衍生到一个独立的数据集的提示。

XGBoost技术

XGBoost是一个开源软件库,为C ++,Java,Python,R,和Julia提供了渐变增强框架。 它适用于Linux,Windows,MacOS。从项目描述来看,它旨在提供一个“可扩展,便携式和分布式的梯度提升(GBM,GBRT,GBDT)库”。 除了在一台机器上运行,它还支持分布式处理框架Apache Hadoop,Apache Spark和Apache Flink。 由于它是许多机器学习大赛中获胜团队的首选算法,因此它已经赢得了很多人的关注。

京东机构

京东(股票代码:JD),中国自营式电商企业,创始人刘强东担任京东集团董事局主席兼首席执行官。旗下设有京东商城、京东金融、拍拍网、京东智能、O2O及海外事业部等。2013年正式获得虚拟运营商牌照。2014年5月在美国纳斯达克证券交易所正式挂牌上市。 2016年6月与沃尔玛达成深度战略合作,1号店并入京东。

推荐文章
暂无评论
暂无评论~