数据挖掘的评估
评价一个数据挖掘系统主要从准确性、性能、功能性、可用性和辅助功能五个主要方面来考虑。
准确性
评估数据挖掘系统最关键的因素是准确性。通过在数据挖掘系统上执行算法做的预测和分类的准确率,我们可以判断系统中的算法是否合理,数据采集是否全面以及数据预处理工作是否完善。
性能
该系统能否在我们需要的商业平台运行;软件的架构是否能连接不同的数据源;操作大数据集时,性能变化是线性的还是指数的;运算的效率到底怎样,能否符合实际应用需求;是否基于某种开源框架;是否易于扩展;运行的稳定性等。
功能性
该系统是否提供足够多样的算法;能否避免挖掘过程黑箱化;软件提供的算法能否应用于多种类型的数据;用户能否调整算法和算法的参数;软件能否从数据集随机抽取数据建立预挖掘模型;能否以不同的形式表现挖掘结果等。
可用性
系统的用户界面是否友好;可视化效果是否好;是否易学易用;系统面对的用户是初学者,高级用户还是专家;错误报告对用户调试是否有很大帮助;应用的领域是专攻某一专业领域还是适用多个领域等。
辅助功能
是否允许用户更改数据集中的错误值或进行数据清洗;是否允许值的全局替代;能否将连续数据离散化;能否根据用户制定的规则从数据集中提取子集;能否将数据中的空值用某一适当均值或用户指定的值代替;能否将一次分析的结果反馈到另一次分析中,等等。
对于不同的数据挖掘算法,我们采用的评价方式是不同的。
图1:混淆矩阵示意图
一个数据挖掘系统最终的评价在于是否能够产生商业价值。如果没有商业价值,再完美的系统也是没有意义的。在本系列中多次讲述的关联算法,我们采用的标准是用两个概念来表示的,这两个分别为支持度和置信度。关于支持度和置信度的概念,我们会在后面文章中介绍。
数据挖掘结果的知识表示
数据挖掘系统最后的结果需要以一种美观和直观的方式呈现给用户。不幸的是,在中国乃至其他亚洲地区,数据可视化的工作被严重忽略。我见到国内数据挖掘的可视化展现在很多时候是用微软的Office来呈现的。
我们来看一下国外的数据挖掘业者是怎样用直观的图表方式展示数据的。图2是根据英国国家统计局2012年的统计数据整理的,是在不同行业男女平均收入差距的图表,图中显示的是人均收入为25000英镑的行业中男女的工资差距。在此可以很直观地看到在同一行业中,男人平均要比女人的收入高。
Google为数据分析和数据挖掘提供了一个开放的作图工具Google Chart,你可以输入网址 https://developers.google.com/chart/ 进行试用。
你可以很方便地在Google Chart中植入数据,例如可以直接从Google的网站上把程序复制粘贴到你的网页上来显示数据。下图是在Google Chart上用世界银行(World Bank)的数据整理出的按照地区来划分的受孕率和平均寿命的分布图。关于如何利用Google Chart 来编程,您可以参考Google提供的线上文档:https://developers.google.com/chart/interactive/docs/quick_start
图2:英国男女平均工资差距示意图
图3-世界受孕率和平均寿命对比图
从图3中可以很直观地看到,一般来说,越是经济发达的地区,人们的平均寿命越长,但是受孕率就越低。图3中的中非共和国(Central African Republic),平均寿命只有48.3岁,而受孕率却高达4.55。作为对比,我们看澳门(Macao SAR,China),平均寿命达到81岁,而受孕率只有1.12。
图4是根据美国健康局数据所做的糖尿病分布图,是用Tableau Software公司的免费软件做的,下载地址为 http://www.tableausoftware.com/public/gallery/geography-diabetes 。
在这个网页上你可以调节右下角的三个关于肥胖率、穷困率和白人比例的开关。调节之后,可以很直观地发现:肥胖率越高,糖尿病患者比例越高;穷困率越高,糖尿病患者比例越高;白人占比越低,糖尿病患者比例越高
。
Tableau Software是最近两年最火的数据可视化工具,用以显示最终数据挖掘结果是没有问题的。但是遗憾的是如果我们需要展示纯原始数据,数据量如果过大则显示效果不能保证。不过,数据可视化是数据挖掘学者们的重要研究方向之一。在不久的将来,我们一定会看到一个像Tableau Software一样做得如此形象的图形展示程序,而这样的程序应当会是建立在一个类似Hadoop和NoSQL的分布式数据系统之上的。
图4:糖尿病占比示意图
如果追求图像展现的酷炫视觉效果,那么你必须要好好浏览网站 http://visual.ly/ ,它是2012年最火的视觉可视化社区。图5截自该网站,展示的是Wikipedia中有地理位置的文章标示。亮度和文章的密集度成正比。最亮的地方,比如西欧和美国加州及东北地区。
图5:维基百科带地理位置文章发表示意图
图5也来自 http://visual.ly/ ,展示的是芬兰首都人民的年龄和负债率的对比,采用三维效果,以展示年龄和负债率对比在各个年份的变化。
图6:芬兰首都人民的年龄和负债率的对比示意图
除了刚才提到的这些互联网上的数据图形展示工具,我们在后面的R语言介绍中会举例说明如何用R语言开源工具来作图。
所谓开源,指的是软件开发者把软件系统的原始代码公开,使得其他的软件开发者和爱好者可以对软件进行修改。
节选谭磊所著的自《大数据挖掘》一书。