2016年美国CrowdFlower公司从业内80位数据科学家那里得到的调查结果显示,他们平均花费在数据收集和整理上的时间占到整个数据分析过程的80%,而只有余下20%的时间才是真正用来分析数据的。
这就是我们通常所说的数据分析过程,其实有一大部分时间都用在了前期的数据的收集和整理上。那么收集和整理又为什么如此耗时呢?
随着数字化和信息化的深入,目前的可用数据并非集中于一点,而是广泛分布在各种文件、电子表格、分布式数据库、数据湖和其他软件系统之中,数据科学研究者需要从各种渠道获取这些数据,过滤其中的有效部分,再将数据组织成便于处理的格式,这一系列的过程都需要耗费大量的精力和时间。
为此,一支国际化的科研团队近期发布了一个全新的大数据分析系统——Data Civilizer,试图解决这一难题。该系统免去了一定程度的整理过程,可以自动识别不同数据表格之间的内在联系,并允许用户以类似查询数据库的方式直接操作这些零散的数据表格。更重要的是,用户还可以将这些查询结果重新组织成一个有序的新数据库,以便进行后续的分析和处理。
这里之所以称Civilizer系统的研发团队是一支国际化的团队,是因为其主要成员并非来自同一个实验室或者同一所高校,甚至并非同一个国家。例如:来自CSAIL的博士后Dong Deng和Raul Castro Fernandez(他们同时也是论文的主要作者),上文提到的Sam Madden教授,以及其他6位来自柏林技术大学、南洋理工大学、滑铁卢大学和卡塔尔计算机研究所的科研人员。另外值得一提的是,尽管并没有参与论文的撰写,但来自麻省理工学院电气工程和计算机科学系的副教授、2014图灵奖获得者Michael Stonebraker同样也为这项研究做出了贡献。
麻省理工学院电气工程和计算机科学教授,CSAIL大数据教研室主任Sam Madden表示:“当前,由于有成千上万的数据被分散在各种软件系统中,因此要组织一个庞大的数据集非常困难。Civilizer系统可以帮助数据科学家快速找到包含相关信息的数据表格,并将这些表格集合在一起,创建一个完整的数据库,从而大大提高了大数据分析的效率。”
Civilizer系统假定其处理的所有数据都按照表格的形式组织。但正如Sam Madden所说,由于将数据转换为表格的技术在大数据领域并不是什么高新的技术,因此这一点并非新研究的重点。类似的,虽然Civilizer的系统原型可以从各种不同类型的文件中提取表格数据,但配合现有程序对数据进行处理却并非研究者的首要任务。“这部分只是工程上的工作,而并非科研上的。”Sam Madden教授表示。
Civilizer系统的核心优势在于逐列分析所有的数据表格,然后得到每一列的统计概要。对于数值数据,概要中可以包括该数值出现的频率、数值的范围、数值的基数、以及每列包含的不同数值的个数等。对于文本数据,概要将包含每列中出现频率最高的词汇,以及不同词汇的个数统计。此外,Civilizer系统还将对每个出现的词汇和包含这些词汇的表格生成一个索引目录。
此后,系统将对比所有列的统计概要,根据概要内容识别具有高度相似性的列(例如具有相似的数值范围、相似的词汇集合的列),并将这些单独的列两两一组,组成一个一个的“列对”。Civilizer会为每个列对分配彼此相似的权值,并在权值的基础上生成一个能够反映列与列之前的连接关系、表格与表格之间的连接关系的映射图。
这里可以通过一个例子来说明Civilizer系统的查询能力:假设一家制药公司有一些包含药物品牌名的表格,一些包含药物化学成分的表格,以及一些包含药物内部代号的表格。我们不妨称这些表格为1类,2类和3类。现在假定1和2从未出现在同一个表格中,但至少有一份表格反映1和3的对应关系,以及反映2和3的对应关系。那么当用户利用Civilizer对所有这些表格展开分析时,对1类的查询结果也可以包含2类中的信息。
需要指出的是,Civilizer系统的识别结果也有可能是错误的。但系统允许用户丢弃不恰当的查询结果,保留有效的数据。数据被裁减之后,用户还可以将结果保存为一个独立的数据文件,方便后续的使用。
Merck制药公司的高级信息分析师Iain Wallace表示:“Civilizer的技术非常有趣,它或许能帮助数据科学家解决由于可用数据越来越多而引发的一个重要问题:究竟哪些数据集应该被纳入分析之列。而且组织机构越庞大,这个问题就越严重。”
Sam Madden教授表示:“目前我们正在探索如何将Civilizer系统作为各种化学和生物学数据集之上的协调层。因为这些数据集通常需要将化合物、疾病和搜索目标联系在一起。一个典型例子就是当用户从一个化合物表格中找到某种特定的化合物后,常常还需要根据这种化合物在其他表格中搜索更多的附加信息。Civilizer系统允许用户对所有列数据进行全文搜索,并自动识别出相关列。通过Civilizer,我们可以方便地添加额外数据源,并快速更新之前的分析结果。”
civilize意为使之文明、使之开化,MIT将新系统命名为Data Civilizer,意思很明显,是希望通过这个系统让大数据处理变得更简单方便,为开发者简化数据的预处理过程,把更多精力和时间放在真正的数据分析过程中。我们希望以MIT的这项最新研究成果为起点,未来可以出现更多类似的数据处理工具,推动数据科学更快的向前发展。雷锋网雷锋网
来源:MIT,AI 科技评论编译