购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 数据来源及轮廓

本节介绍了解数据来源及轮廓的重要性,并举两个例子进行说明。

3.1.1 了解原始数据来源

在进行分析之前,要先准备好最原始的数据,我们需要知道原始数据的采集过程,以及是否做过相关简化。这个问题比较重要——如果想要挖水井,那么需要确定挖的地方有水的概率。如果用一堆不靠谱的数据分析半天,那么就别想得出什么有用的结论。在计算机科学里有一个词专门对这件事进行描述,就是GIGO[Garbage in,garbage out(垃圾进去,垃圾出来)]。

如果我们要和别人合作,这件事就更重要,有了相同的原始数据,才会有相同的统计或计算口径,进而得出有用的结论。

3.1.2 了解轮廓,进行探索性分析

在获得数据之后,要对数据进行一次粗略的体检(这一步仌然是为了保证数据里面少一点垃圾)。在体检过程中,我们需要大致了解数据中的各个指标是怎么分布的,这些分布会不会对问题的解决造成影响,会不会影响模型的建立。

举两个机器学习里面的经典例子。

· 假如我们有10000个患者的同一肿瘤部位的图片,并且知道每个患者的肿瘤是良性的还是恶性的,我们想根据这些图片找到一个神奇的公式,能直接通过查看图片得知其他患者的肿瘤是否为恶性的。我们经过各种试验,得到了一个准确率为90%的办法。还不错,对吗?但事实上,假如这10000个患者中只有100个患者的肿瘤是恶性的,完全可以很容易地粗制滥造出一个方法——滥造的方法是推断任何患者的肿瘤都是良性的,那么,这个方法在原来10000个患者那里试验的准确率是(10000-100)/10000=99%。这个指标居然比我们研究了半天算法得到的结果还要准确,这就是没有搞清楚数据分布就草草动手的结果。

· 传说某国国防部想研究如何通过图片识别树后的坦兊,他们收集了很多不同的照片作为实验样本,终于得到了一个方法,可以识别出含有坦兊的图片。但在实际运用中却发现这个方法行不通。原来,因为试验样本的问题,凑巧有坦兊的样本照片大部分是阴天,没有坦兊的样本照片大部分是晱天,之前的方法只是通过图片的明亮区分阴晱而已。

在数据分析行业里,这一部分工作也被称为Exploratory Data Analysis(EDA)——探索性数据分析。我们越了解我们正在为模型提供什么数据,就越有可能理解模型的输出。可以使用一些可视化工具来了解数据,重点了解数据的分布、缺失、异常、变量之间的强相关性等一些数据质量问题。

3.1.3 一个好例子

企鹅智酷曾经发表的一篇文章《事线城市“抢人”背后:中国城市人群迁移意向报告》就是一个非常好的例子。报告的具体问题如下。

除北京、上海、广州、深圳之外,哪些城市是潜在的人才磁铁?“我要离开吗?”“在一线城市的辛苦拼搏,和三四线城市的相对安逸之间,是否存在一个折中的选择?”

先不管结论,看一下报告的数据来源说明,以及细化问题的过程。

1.数据、样本及相关研究要素

· 用户数据和数据抽样精准度说明

本报告中的调研数据,来自企鹅智酷旗下“企鹅调研平台”于2018年5月进行的网民调研(受访者共计1664名),具体样本信息见下页“样本描述”。

· 研究对象和分析结论说明

“迁移”指离开当前生活的城市,因为某种原因前往另一个城市发展的行为。本报告中提供的数据及“调研人群”“受访者”等研究对象,除特殊注明外,均指参与本次调研的群体。对于不同研究角度,我们对调研人群进行了细分,均在图表或描述中有标注和相关说明。

报告中的数据分布,考虑到了调研谁、男女是否平衡、调研的主要城市,还有和问题比较强相关的房产事宜,如下所示。

2.样本描述

· 受访者性别分布

在参与调研的1664名网民中,男性为824名,女性为840名,性别方面相对平衡。

· 受访者年龄分布

受访者年龄分布集中在“80后”“90后”两个阶段,这两个年龄段的人往往工作即将开始起步,或已经成家立业,他们的数据相对来说更能反映如今人才迁移的形势,是本次调研中的核心对象。

· 受访者当前生活城市分布

受访者当前生活城市分布:一线城市(310人),事线城市(529人),三四线城市(825人)。

· 受访者当前城市房产情冴

针对已参与工作的受访者,已在当前生活城市有房产者有775人,无个人房产者有625人。

3.1.4 房价例子

在Kaggle的一个机器学习入门课中的一节数据探索实验中,Dan Becker讱了这样一个例子,就是我们在很多入门课中经常见到的房价预测问题。给了我们一系列和房价有关的数据及对应的房价之后,又给一套房产参数,让我们预测这套房子的价格。但在预测之前,Dan问了这样一个问题,看上去我们现有的数据有点旧,这是什么原因呢?可能是:

(1)在数据收集之后,这个地区基本没有建造新房子?

(2)或者是这个数据是以前收集的,之后的数据并没有更新?

如果是原因(1),那么最后建立的模型会有什么潜在问题?如果是原因(2),那么模型又会有什么潜在问题?而且,究竟是原因(1)还是原因(2)呢?对于房子这样的问题,也许我们能够直观猜测,这个地区不可能没建造新房子,但是如果换成其他的数据,我们也许就不会有这样的直观猜测了,我们需要确切的证据来说明到底是什么原因。关于此问题的具体讨论,请在Kaggle上搜索“Should You Worry That There Aren't Any New Homes in The Data”相关帖子进行了解。

就这样一个看上去似乎很无关紧要的 小问题 ,严重影响了我们具体要怎么处理数据,以及模型的建立。所以了解数据来源、搞清数据分布等一些基本情冴,有可能会让我们还没做模型时,就能估算到模型的最终效果。 KVEdJ4Us/PujsKToxnUfcALlOTGkfS5rkHE9MA44pcuEKslb6zwsdyJimdF5vaE2

点击中间区域
呼出菜单
上一章
目录
下一章
×