雷锋网 AI 科技评论按,近日,IEEE ISI 2019 国际大数据分析竞赛结果出炉,今年的竞赛包括企业投资价值评估和法律诉讼类型预测两个赛题,来自深兰科技北京 AI 研发中心的 DeepBlueAI 团队分别取得了一项冠军和一项季军的优异成绩,本文作者罗志鹏(深兰科技北京 AI 研发中心),他为雷锋网 AI 科技评论独家撰写了该团队在企业投资价值评估赛题中的算法思路与技术细节分享。
背景介绍
IEEE 年度国际会议是安全信息学领域的旗舰会议,于 2003 年首次在美国亚利桑那州图森市召开。在过去的 16 年中,IEEE ISI 会议已经从传统的智能和安全领域发展到多领域联合研究与创新。今年,第 17 届 IEEE ISI 会议在中国深圳于 7 月 1 日至 3 日由深圳人工智能与数据科学研究所主办。
为了促进人工智能分析行业的发展,并为学术交流和技术讨论提供一个平台,IEEE ISI 会议发起了此次国际大数据分析竞赛 (IEEE ISI 2019 年世界杯,IWC 2019)。本竞赛面向全球高校、研究机构、企业、政府开放。共有来自中国、美国、巴基斯坦、伊拉克、英国、德国、挪威 7 个国家,来自华为、京东、滴滴等知名企业,以及来自清华大学、北京大学、浙江大学等知名高校的三百余支队伍参赛,参赛总人数逾千人。
团队成绩
在企业投资价值评估赛题中 DeepBlueAI 团队以较大领先优势获得冠军,排名如下:
图 1 最终排行榜
赛题介绍
本次比赛提供了基于 3500 家上市公司全量信息,描述公司在财务、法务、股权、经营状况、舆论等方面的属性特征,包含企业的工商信息、年报、财务信息、纳税信息、股权信息、法务信息、知识产权信息、经营信息、购地信息等数据(以实际发布的数据集为准)。这些数据来自于官方统计平台,数据真实可信。每一家企业对应一个类目 ID。参赛选手需要合理运用现有数据集材料,筛选出对竞赛有价值的信息进行特征构建和模型训练。
本次会议共有两个赛题:
赛题 1 企业投资价值评估
参赛者可参照企业的年报、财务信息、经营信息、资产信息、税务信息,知识产权等企业综合信息对企业投资情况进行打分,为投资者提供投资依据。
赛题 2 法律诉讼类型预测
参赛者可根据企业的法院公告、裁判文书、动产抵押、司法冻结、行政处罚、欠税信息、开庭公告等法务信息预测企业未来一段时间可能收到的法律诉讼类型,为企业规避法律风险。
本文接下来分享赛题 1 的思路与技术细节。
评测指标
使用均方根误差 RMSE 作为本次竞赛的主要性能指标。返回结果越小代表模型性能越好。比赛成绩以参赛团队提交的测试集结果为准,此部分占总成绩 90%。同时会根据代码的鲁棒性、可扩展性、可读性为算法模型打分,此部分占总成绩 10%。比赛最终排名取决于以上两部分成绩总和。
题目特点以及主要工作
在这次比赛中,主要有以下难点:
数据维度广
该赛题主办方提供 37 张 xlsx 格式的数据表格,一共包括 304 列。
信息复杂
包括公司产品信息、工商基本信息、购地信息、海关进出口信息、年报信息、融资信息、商标信息、上市财务信息、专利信息、招标信息等。
数据特征类型丰富
包括字符串、数值型、类目型、时间等。
数据量小
训练集仅有 3000 条。
对于这样大量的字段,如果直接采用人工去做特征,一方面工作量巨大,另外一方面很多特征也难以想到。故团队成员基于以上难点,采用了自研的 AutoML 系统进行建模,该系统包括了自动数据清洗、自动特征工程、自动特征选择、自动模型调参、自动模型融合等步骤,能极大的提高任务建模的效率,并且在此次竞赛中也大大提升了效果。
自动化数据清洗
在通常的竞赛中,我们的数据往往是比较干净的,要么采集比较规范,要么已经经过加工处理。这次竞赛提供的数据是真实的工业界应用数据,含有大量的不规范字段。比如时间列,就存在各种各样的格式,比如存在年份缩写、中文年月日、标记格式不统一(有时用「\」,有时用「-」来分隔)等情况。
图 2 原始数据展示
考虑这些数据情况,可能是由于数据录入的时候,不同年代采用不同的格式,并且数据保留了原来的格式,从而造成了大量数据不规范的问题。另外数据中存在着大量的噪声。而我们的自动化数据清洗模块,对不同类型的数据使用不同的清洗方法,能够有效地清洗不规范数据。
特征工程
我们的特征工程部分包含两个阶段:AutoML 自动特征工程阶段和业务特征强化阶段。
在 AutoML 自动特征工程阶段,将原始数据清洗成 AutoML 系统可处理的格式后,进行自动特征生成,然后进行特征选择迭代。在特征选择阶段我们采用 lightGBM 单模型。在自动特征工程中,我们假设通用场景类型,选择和本次任务契合的场景类型进行自动特征工程,在每一轮特征迭代过程中我们参考了上一轮特征的重要性,在重要性高的特征上面进行迭代更新。筛选出的特征中比较重要的有:行业细类特征、资历、年报等。具体地,原始特征包含了数值类型,分类类型,时间类型以及文本类型。我们对数值类型和类目特征生成了基本统计特征,以及数值和分类的聚合特征。对时间类型,提取了周期性特征。对文本特征,采用 TF-IDF、LDA 方法提取特征。同时我们也提取重要特征进行高阶组合,从而避免了指数级的特征组合,并且能挖掘三阶甚至四阶不同类型的特征组合,有效地提升模型性能。
图 3 AutoML 自动特征工程
在自动特征阶段生成的全部特征累计有 7000 多列,自动特征选择采用递减的方式,在业务特征强化阶段,我们通过深入思考业务的逻辑,结合已有特征的重要性,挖掘出业务中我们认为应该考虑进去的信息,然后构造出能反应这些信息的特征。
在自动特征工程阶段,我们发现专利和资质认证两个信息对模型效果提升较大。这很符合我们的直觉,在对企业价值评分时,专利的数量、种类等信息无疑是非常重要的。
首先是针对专利信息,我们挖掘了公司的专利在时间线上的活跃度,公司在该专利领域的实力。我们猜测在长期专利数量较多或者存在上升趋势的企业投资价值评分应该更高。根据实际专利的申请审核流程,提交申请到出审核结果的时间长度,我们提取了企业在最近 1、3、6、12、24 个月的专利数量以及专利数量较多的种类。其次我们挖掘了每个城市每个行业的企业竞争力,用城市中各个行业的公司数量以及他们之间的相对特征来表现。我们猜测公司地址在其行业密集度较高的城市具有更强的竞争意识和竞争氛围,成长性较高,可能会得到较高的投资价值评分。之后我们挖掘了公司的认证资格竞争力信息,在行业内理论上应该是资历认证更完善的公司实力更强,风险更小,我们通过构造公司在资历全集中的完善度特征来反映这个信息。
模型融合
图 4 模型集成
为了增强最终结果的稳定性,我们采用 Stacking+Bagging 的方式进行模型融合。融合的主体方法是 Stacking, 第一层我们采用过的模型有 LightGBM、XGBoost、Random Forest、Support Vector Regressor、ExtraTrees Regressor。每个模型采用交叉验证的方式进行线下验证。
图 5 模型结果
在 Stacking 的第二层中我们采用了基于约束的线性模型,在实验中发现效果好于其他线性和非线性模型。
在 Bagging 中我们使用不同 seed 以及随机微调了一些参数分别生成 10 个 LightGBM 和 10 个 XGBoost 模型。最后将 Stacking 的结果与 Bagging 结果进行简单线性加权融合作为最终预测结果。在这次竞赛中模型融合提升并不是很大,从榜单来看我们的单模型结果就能获得冠军,因此 AutoML 自动特征工程部分是我们制胜的关键。
图 6 模型融合
工作总结
在此次竞赛中,我们的主要工作包括:
对于相似的数据创建了一键清洗系统,这套系统可以自动计算来转化货币格式、使用强规则收集时间戳和时间增量以及根据数据分布自动填写缺失值。
选择使用 AutoML 自动特征工程和自动特征选择。对于多维度,多字段的表单数据,AutoML 可以极大的提升开发效率和模型效果。
设计了一些针对业务场景的特征。
构建了多种不同类型模型的集成,使得集成之后的效果有所提升,也增加了结果稳定性。
进一步工作
此次竞赛主办方提供的数据量比较小,可以收集多年的数据根据滑窗的方式获取更多的训练数据。
影响企业投资价值的因素多,可能需要更多公司动态信息,例如人员流动信息和招聘信息等,这些信息可能有助于提升预测效果。