关于表格型数据的数据挖掘(总)

从本篇开始,我将会开启个人在实习阶段所做的项目经验。以此做好个人笔记,作为以后知识点的汇总,也希望能给各位做个大致的数据挖掘的思路。文章系列分为4篇:数据的获得及处理、频繁项集、聚类和关联规则。顺序是按照项目逻辑进行排序的,本篇我们将对整体的思路进行个说明。


目录

  • 数据的获得及处理
  • 频繁项集
  • 聚类
  • 关联规则

1. 数据的获得及处理

实践过程中,如何获得项目中所需的数据?首先做好项目的前期的先验知识的掌握,确定目标数据的种类。

例如,本次实习的项目为中医妇科病的数据挖掘,那么我们首先确定目标对象——中医妇科病,并和相关专家进行分析。得出可能的目标数据为:中医药数据集,中医医案等等。

确定好目标数据类型后,我们需要思考收集这些数据的渠道。基本上,可以有以下几个方面:
1. 向相关的公司、实验室、机构购买数据;
2. 人工筛选相关网站,爬虫爬取
3. 人工录入,包括图像的拍摄、文本的输入(ocr)

其中,1和3经济成本较为高昂。爬虫作为程序员收集数据的标配,是性价比较为高的一种方法。我将在后面的文章中着重介绍爬虫经验。

爬取大量的原始数据(raw data)后,我们需要对数据进行预处理,这里又称为数据清洗。

目的一是可以将错误、冗余的数据变得易于后面步骤的数据分析,二是对于一些缺失值进行补充,保证数据的准确性。

针对于我们的项目而言,无论是中医药数据集和医案数据,主要利用 1. 正则表达式进行字符筛选 2. 对于个别记录(行)或者字段(列)后台打印(print)人工手动处理。

2. 频繁项集

通过上述步骤一,我们已经得到了可以进行分析的数据。接下来就是根据需求去设计模型(方法=模型+策略+算法)。

例如,你需要进行回归分析,还是分类?亦或无监督的几种模型?

这里我们想对中医药数据进行关键药物的组合(核心药物集合),所以我选择了对上述数据进行聚类。

那么数据如何转化为我们模型所能接收的类型?我们这里转化的目标都是数值型,所以一方面可以使用向量化(诸如词袋模型),也可以用统计学、信息论中的相关的概念(频率、熵、互信息)。

针对于我们的项目,我们希望能够在中医药数据集中挖掘出超过一定阈值(支持度:support value)的药物,这样的集合我们称为频繁项集,含义如其名,达到一定频次的集合。

3. 聚类

步骤二当中,我们获得了针对于药物的频繁项集。我们将把它利用到具体的应用当中,本篇介绍的是聚类,下一篇为关联规则。

对于无监督学习当中,最为关键的概念就是相似性,一般的聚类方法也是依据这个指标来实现类与类的差别。一般的相似性可以由距离(欧式距离,Lp Norm)或者某种相似系数来衡量。(当然可以还有其他的计算方式,参见知乎郭小贤答主的回答

我们查阅了相关资料,利用信息论中的互信息进行改造后作为相似系数。

构造完相似系数后,我们利用了两种方法进行关键药物集合的挖掘。一种为层次聚类,另一种类似得到最大频繁集进行聚类。

4. 关联规则

步骤二得到的频繁项集,除了可以用在聚类当中。还可以进行关联规则的挖掘,这里介绍关联规则最为著名就是以下这个例子:

沃尔玛利用数据挖掘方法对数据进行分析和挖掘后得到一个意外的发现是:”跟尿布一起购买最多的商品竟是啤酒!经过大量实际调查和分析,揭示了一个隐藏在”尿布与啤酒”背后的美国人的一种行为模式:在美国,一些年轻的父亲下班后经常要到超市去买婴儿尿布,而他们中有30%~40%的人同时也为自己买一些啤酒。产生这一现象的原因是:美国的太太们常叮嘱她们的丈夫下班后为小孩买尿布,而丈夫们在买尿布后又随手带回了他们喜欢的啤酒。

针对于我们的项目,我们也可以试着能不能通过药物a->b这样的关联规则,在药物a的选择之上,药物b选择的可能性会比较大?

本系列文章基本就是以上这些内容,大家如果觉得有问题,可以评论交流。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值