大数据遭遇数据净化难题

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介:

拼写错误、以及各种不准确和过时的信息就好比米堆里的砂子,如果不挑出来,企业和研究人员就很难利用大数据技术做出一锅好饭,而数据净化要做的工作就是去芜存菁。


卡里姆•科夏瓦杰是多伦多的一名医生和网络健康顾问,他要从500名医生那里反馈的海量数据中总结出怎样才能更好地治疗病人。但是众所周知,医生的“书法”本来就堪比天书,要想让电脑识别出其中的拼写错误和缩写更是难于登天。


比如科夏瓦杰指出:“患者是否吸烟是个很重要的信息。如果你直接阅读病历,你马上就能明白医生是什么意思。但是要想让电脑去理解它,那就只能祝你好运了。虽然你也可以在电脑上设置‘从不吸烟’或‘吸烟=0’的选项。但是一个患者每天吸多少支烟?这几乎是电脑不可能搞明白的问题。


由于宣传报道把大数据吹得神乎其神,因此很多人可能觉得大数据用起来特别简单:只要把相当于一整个图书馆的信息插到电脑上,然后就可以坐在一边,等着电脑给出精辟见解,告诉你如何提高自动生产线的生产效率,如何让网购者在网上购买更多的运动鞋,或是如何治疗癌症。但事实远远比想象复杂得多。由于信息会过时、不准确和缺失,因此数据不可避免地也有“不干净”的时候。如何把数据变“干净”是一个越来越重要但又经常被人忽略的工作,但它可以防止你犯下代价高昂的错误。


虽然科技一直都在进步,但是人们在净化数据上能想到的法子并不多。即便是处理一些相对较“干净”的数据,要想获得有用的结果往往也是件费时费力的事情。


博思艾伦咨询公司(Booz Allen)副总裁约什•沙利文说:“我对我的客户说,这是个混乱肮脏的世界,没有完全干净的数据集。”


数据分析师一般喜欢先寻找非常态的信息。由于数据量太巨大,他们一般都会把筛选数据的工作交给软件来完成,来寻找是否有些反常的东西需要进一步检查。随着时间的推移,电脑筛选数据的精确性也会提高。通过对类似案例进行分类,它们也会更好地了解一些词语和句子的含义,然后提高筛选的精确性。


沙利文说:“这种方法简单直接,但‘训练’你的模型可以需要一周又一周的时间。”


有些公司也提供了用来净化数据的软件和服务,其中既包括像IBM和SAP一样的科技巨头,也包括Cloudera和Talend开放工作室从事等大数据和分析的专门机构。一大批创业公司也想争当大数据的看门人,其中有代表性的包括Trifacta、Tamr和Paxata等。


由于“不干净”的数据太多,医疗业被认为是大数据技术最难搞定的行业之一。虽然随着电子病历的普及,将医疗信息输入电脑的难度已经变得越来越低,但是研究人员、制药公司和医疗业分析人士要想把他们需要的数据尽情地拿来分析,在数据上要提高的地方还有很多。


健康数据咨询公司InfoClin的医生兼CEO科夏瓦杰花了很多时间,希望数以万计的电子医疗病历中筛选有用的数据,以提高对病人的诊疗水平。但他们在筛选的过程中却不断遇到阻碍。


很多医生在病历中没有记录病人的血压,这个问题是无论哪种数据净化方法都修复不了的。光凭借现有病历的信息去判断病人得了什么病对电脑来说就已经是一项极其困难的任务。医生在输入糖尿病编号的时候,可能忘了清楚地标注究竟是患者本人得了糖尿病,还是他的某个家人得了糖尿病。又或许他们光是输入了“胰岛素”三个字,而没有提到患者得了什么病,因为这对他们来说是再明显不过的事情。


医生用来诊断、开药和填写病人基本信息时会大量用到一套独特的速记字体。即使让人类来破解它也要大为头痛,而对于电脑基本上是不可能完成的任务。比如科夏瓦杰提到有个医生在病历中写下“gpa”三个字母,让他百思不得其解。好在他发现后面不远处又写着“gma”三字,他才恍然大悟——原来它们是爷爷(grandpa)和奶奶(grandma)的缩写。


科夏瓦杰说:“我花了好半天才明白它们到底是什么意思。”


科夏瓦杰认为,解决数据“不干净”的终极方法之一是要给病历制定一套“数据纪律”。要训练医生养成正确录入信息的习惯,这样事后净化数据时才不至于乱得一团糟。科夏瓦杰表示,谷歌有一个很有用的工具,可以在用户进行输入时告诉他们如何拼写生僻字,这样的工具完全可以添加到电子病历工具中。电脑虽然可以挑出拼写错误,但是让医生摒弃不良习惯才是朝着正确的方向迈出了一步。


科夏瓦杰的另一个建议是,在电子病历中设置更多标准化的域。这样电脑就会知道到哪里去找特定的信息,从而减少出错率。当然,实际操作起来并没有这么简单,因为很多病人同时身患好几种疾病。因此,一个标准的表格必须拥有足够的灵活性,把这些复杂情况全部考虑进去。


但是出于诊疗的需要,医生有时需要在病历上记下一些自由行文的东西,这些内容肯定不是一个小格子能装得下的。比如一个患者为什么会摔倒,如果不是受伤导致的,那么原因就非常重要。但是在没有上下文的条件下,软件对于自由行文的理解只能用撞大运来形容。筛选数据的时候,如果人们用关键词搜索的话可能会做得更好些,但这样也难免会漏掉很多有关的记录。


当然,在有些案例中,有些看起来不干净的数并不是真的不干净。博思艾伦咨询公司副总裁沙利文举例说,有一次他的团队为一家豪华连锁酒店分析顾客的人口统计数据,突然发现,数据显示一个富有的中东国家的青少年群体是这家酒店的常客。


沙利文回忆道:“有一大群17岁的青少年在世界各地都住这家酒店,我们以为:‘这肯定不是真的。’”


但做了一些挖掘工作后,他们发现这个信息其实是正确的。这家酒店有大量的青少年顾客,甚至连酒店自己也没有意识到,而且酒店也没有针对这部分顾客做过任何促销和宣传。所有22岁以下的顾客都被这家公司的电脑自动列入“低收入”群体,酒店的高管们也从来没有考虑过这些孩子的腰包有多鼓。


沙利文说:“我认为如果没有离群值的话,构建模型会更难。”


即便有时数据明显不干净,它有时依然能派上大用场。比如上文提到的谷歌(Google)的拼写纠正技术。它可以自动识别拼写错误的单词,然后提供替代拼写。这个工具之所以有这样神奇的功用,是因为谷歌在过去几年中已经收集了几亿甚至几十亿个拼写错误的词条。因此不干净的数据也可以变废为宝。


最终,从大数据中获得结论的是人而不是机器。电脑虽然可以整理几百万份文件,但它并不能真的解读它。数据净化就是为了方便人们从数据中获取结论而反复试错的过程。尽管大数据已被奉为能提高商业利润、能造福全人类的神器,但它也是个很让人头痛的东西。


沙利文指出:“失败的概念在数据科学中完全是另一回事。如果我们每天不失败10次或12次来试错,它们就不会给出正确的结果。”


原文发布时间为:2014-07-18

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
21天前
|
存储 机器学习/深度学习 分布式计算
大数据技术——解锁数据的力量,引领未来趋势
【10月更文挑战第5天】大数据技术——解锁数据的力量,引领未来趋势
|
1天前
|
存储 安全 大数据
大数据隐私保护:用户数据的安全之道
【10月更文挑战第31天】在大数据时代,数据的价值日益凸显,但用户隐私保护问题也愈发严峻。本文探讨了大数据隐私保护的重要性、面临的挑战及有效解决方案,旨在为企业和社会提供用户数据安全的指导。通过加强透明度、采用加密技术、实施数据最小化原则、加强访问控制、采用隐私保护技术和提升用户意识,共同推动大数据隐私保护的发展。
|
5天前
|
SQL 存储 大数据
大数据中数据提取
【10月更文挑战第19天】
15 2
|
21天前
|
SQL 消息中间件 大数据
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
33 1
|
21天前
|
SQL 大数据 Apache
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
59 1
|
22天前
|
分布式计算 监控 大数据
大数据-148 Apache Kudu 从 Flink 下沉数据到 Kudu
大数据-148 Apache Kudu 从 Flink 下沉数据到 Kudu
45 1
|
15天前
|
NoSQL 大数据 测试技术
想从事大数据方向职场小白看过来, 数据方面的一些英文解释
想从事大数据方向职场小白看过来, 数据方面的一些英文解释
31 0
|
22天前
|
分布式计算 关系型数据库 MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
44 3
|
23天前
|
消息中间件 缓存 NoSQL
大数据-49 Redis 缓存问题中 穿透、雪崩、击穿、数据不一致、HotKey、BigKey
大数据-49 Redis 缓存问题中 穿透、雪崩、击穿、数据不一致、HotKey、BigKey
38 2
|
22天前
|
SQL 分布式计算 大数据
大数据-108 Flink 快速应用案例 重回Hello WordCount!方案1批数据 方案2流数据(一)
大数据-108 Flink 快速应用案例 重回Hello WordCount!方案1批数据 方案2流数据(一)
35 0