本文记录了《Python数据分析与挖掘实战》第6章到第15章的实战案例,主要是个人的学习笔记。【2022.5.25】
1. 章节总览
章6 电力窃漏电自动用户识别 窃漏电指标构建(时间窗)+ 插值法填补缺失数据 + 机器数据
章7 航空公司客户价值分析 RFM方法 + 用户群聚类和聚类结果解释 + 运营数据
章8 中医症型关联规则挖掘 Apriori关联分析 + 定量数据转化为分类数据用于解释 + 医学解释
章9 基于水质图像的水质测评 图像特征挖掘 + 图像识别(图像特征分析)
章10 家用电器用户行为分析与事件识别 动态数据 + 识别机制的设置
章11 应用系统负载分析与磁盘容量预测 时间序列处理
章12 电子商务网站用户行为分析 链接点击浏览情况(implicit data)+ 爬虫
章13 财政收入影响因素及预测模型 Lasso识别特征 + 时间序列灰色预测 + 神经网络
章14 基于基站定位数据的商圈分析 构造人流数据 + 层次聚类 + 用累积的折线图表示类别
章15 电商产品评论数据情感分析 清洗 + 分词 + 人工标签 + 三个情感分析模型
2. 数据分析目标
电力窃漏:根据电力局数据,归纳窃漏电关键指标,构建窃漏电识别模型;实时监控数据,调用模型进行实时诊断。
航空公司:依据客户数据,对客户进行分类;根据用户特征,比较不同用户价值;提供个性化服务,制定营销策略。
中医症型:根据病理信息,挖掘症状与症型之间的相关关系。
水质图像:有标签的数据,对图像进行识别判断。
家用电器用户行为:从热水器采集到的数据中,划分完整用水事件;从用水事件中识别洗浴事件。
磁盘容量预测:利用历史磁盘数据,预测磁盘未来的使用空间变化;根据需求设置不同预警。
电子商务网站用户行为:按照地域了解用户访问网站的主要目的和偏好;根据访问记录了解用户的访问习惯。
财政收入:梳理财政收入的特征,识别关键特征;利用这些特征和历史数据对财政收入进行预测。
基站定位商圈分析:根据历史定位数据,对基站进行分群;对商圈分群,识别不同特征,制定相应营销策略。
电商产品评论:判断用户情感倾向;挖掘评论中指出的有点和不足;提炼品牌卖点。
总结如上数据挖掘目的,可以发现
(1)数据挖掘中往往需要去识别某些有效信息,例如监督人的某些行为的发生(窃电、使用习惯、浏览习惯),事物之间的关联(医学症型、财政收入影响因素),事物发展的特征(图像识别、磁盘容量),其中主要涉及有监督的学习或者是无监督的时间序列预测;
(2)这种识别行为需要构建一些相应地指标、规则,使得识别能够正确地进行。
3. 指标构建方法
-d- 对应第d个案例
-1- 识别窃电需要先发现窃电行为发生时数据(在物理方面是相对固定的)会发生什么样的变化,然后根据相应的变化(框定时间窗)去构建指标,确定值域(但是是一种相对滞后的识别,因为需要事情发生了才能发现,如果窃电者规避已有的窃电数据规律,则难以马上发现,但是这种规避在现实中可能不容易实现)
-2- 要根据客户数据对客户进行分群,依赖的是现有客户数据的可解释程度,需要根据业务规律去确定哪些用户行为(RFM模型,理论指导依据)对数据挖掘目的产生影响,再确定衡量这一用户行为的合适的指标。利用聚类方法得到的结果不一定是可解释的,可能是因为选择的聚类标准不恰当,也可能是选取的数据指标或数据本身没法带来有效的信息。
-3- 症状作为衡量指标,症状本身有重症和轻症之分,容易转化为定量数据,用数字的大小来描述严重程度,但是最终确定是什么症状,也需要对数据进行离散化处理,医学上和统计学上如何看待这个离散化阈值呢?
-4- 图像特征常常包括颜色、纹理、形状、空间,不同特征有相应的表达方式,如颜色可以用颜色矩(数字化)来表示。图像判断还常常需要对图像进行切割,找出最具有判断力的位置(空间特征),判别的结果可能是来自于多个属性的叠加组合。图像是否可以聚类呢?利用聚类更科学的 寻找潜在的特征。
-5- 具有时间标度的数据可能需要划分时间窗来进行处理,在相应的时间窗中进行指标的计算。如何划分时间窗,可以使用阈值寻优模型,在一次事件的开始和结束的地方做上标记,然后计算事件个数。使用的阈值不同,每个时间窗则不同,而最后的事件发生总个数也不同,随着阈值的调整,事件总个数的变化可以画成折线图。利用这一变化的快慢可以发现一个比较好的值域?平稳说明这个值域较为稳定,事件的发生不集中,比较难以理解为什么用这个平稳的区域作为阈值的选择区间
-6- 消耗品,典型的增长型数据,而且存在相应的增长规律,可以利用时间序列去判断。单一指标,需要检验数据的平稳性(差分运算,检验变化规律存在)、随机性。现实生活中其他的增长型数据可能包括(广告投放的花费[但其实设定百分阈值就可以];使用时间序列的原因可能是因为它在某一段时间内有效,但是缺陷在于这种趋势不可能完全持续下去,需要更加灵敏地察觉到变化)
-7- 需要网站数据的爬虫,还需要对个体进行分类,统计不同类别的百分比。利用URL的规律进行分类处理,关注筛选哪些页面信息具有有效的作用(人工筛选,意思就是说链接创建需要有规律,方便后续的分析)。
-8- 宏观指标,可能存在比较明显的相关关系,容易做图,讨论线性/非线性关系,利用经典方法(主成分分析)/正则化方法来筛选指标。Lasso方法(利用单位阵补足原矩阵使其满秩)添加用于解决回归问题中使用最小二乘法时不满秩的情况(即列数大于行数,指标过多,模型过于复杂,获得的是局部解,泛化能力差)。
-9- 时间窗数据截取,根据需要的时间窗(比如说工作日、周末、凌晨)来框选,然后计算所需的平均停留时间/人流指标(区域密度数据,时间区域、空间区域),指标设计类似于抽象的物理空间。
-10- 电商产品评论,处理文字信息,文本清洗(如何保留有效的信息,重复的、无意义的),根据语义关联构建主题模型,判断词的情感倾向。(难以判断结果好坏)
Summary:信息类型/ 文字、图像、数字、分类; 标签/ 专家标签、自探索; 数据预处理/ 关键在于清洗无效信息(空、不合理、无意义);衡量信息是否有效,除了结果验证(聚类的可解释性、错判与否)还可以 (先验信息)(阈值方法)(主观业务、战略因素)
4. 使用的方法
-1- 输入数据:有标签(是否窃电)的用电数据。 /用于预测什么样的用电数据是窃电的用户
LM神经网络:Sequential、Dense、Activation;Cart决策树:参数设置
评价方法:混淆矩阵、ROC
-2- 输入数据:用户数据 KMeans聚类 利用雷达图对聚类结果进行展示
-3- 输入数据:(有标签)不同症状对应不同的病病,考察不同症状和病病的关联度,某些症状共同出现时可能对应某一个病病。/建立Apriori关联规则(支持度、置信度)
-4- 输入数据:水质图像数据(有水质评价标签)。 /用于预测图像对应的水质分类
支持向量机:多分类,调参。混淆矩阵展现结果
-5- 输入数据:机器使用的事件指标数据(有洗浴标签)。 /用于识别哪些事件时洗浴事件
BP神经网络:同LM神经网络,判断的准确率
-6- 输入:单一数据源的时间序列数据。 /用于预测该序列未来的发展情况。
ARMA模型:(平稳性检验)(白噪声检验)(模型识别:计算ARMA参数)(模型检验)(模型预测) 模型效果难以评估,无标签。用于预警不会带来过大损失。
-7- 输入:不同用户对不同商品的感兴趣程度,用户和用户之间,物品和物品之间的相关程度。 /想要给不同用户推荐物品 —— 协同过滤(准确率、召回率、点击率、跳出率等等对推荐系统进行评价)
-8- 输入:许多年份中,不同指标值以及想要预测的财政收入值。 /利用时间序列(灰色预测)分别预测不同指标的增长情况,利用神经网络发现指标间的关系,利用指标输入得到财政收入输出
-9- 输入:不同基站(基站对应商圈)的流量数据,根据流量数据对基站进行层次聚类,得到相应聚类结果(每一类的指标数值都在某一区间内)。利用累计的折线图可以看出每一类的数据分布。
-10- 模型1. 情感倾向性模型:word2vector,正负向标签,建立栈式自编码神经网络提取特征再后接分类器用来判断(多层自编码器,自编码+自编码+...+自编码+分类器,上一层自编码器的输出作为下一层自编码器的输入)
模型2. 语义网络:词和词之间的连接关系,节点和弧,节点指向节点,语义具有从属性,可以直接的看出什么事物常常用什么词形容。 ①数据预处理、②情感分析(基于优化的情感词典,比有标签的神经网络、词向量更准确)、③对正面和负面数据分别进行语义网络构建(提取高频词,抽取行特征,利用软件形成语义网络图和共词矩阵)
模型3. 基于LDA模型的主题分析:一篇文档中 词——(以一定概率选择某个主题)——主题——(以一定概率选择主题中某个词)——词 [文档中相同主题的词的产生] ;包含的元素有:文档、主题、词。Gensim的LDA分析需要限定主题词个数,建立词典(每个词对应一个id)和语料库(每句处理过后的评论对应哪些词,词频几何)。最后会给出相应文档的几个主题对应的词,根据这些词进行后续分析。
Summary:这些案例中主要涉及的问题包括有标签的学习/识别(神经网络、支持向量机、决策树),关联关系分析(Apriori、语义网络分析),无监督聚类(Kmeans,层次聚类),时间序列问题(ARMA,灰色预测)。