数据挖掘
第一章
1.什么是数据挖掘
数据挖掘是从数据中,发现其有用的信息,从而帮助我们做出决策(广义角度)
数据挖掘是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识,寻找其规律的技术,结合统计学、机器学习和人工智能技术的综合的过程(技术角度)
2.数据挖掘是一个综合性的交叉学科,所涉及的学科领域有哪些?统计学、机器学习、数据结构、算法
3.数据挖掘的两大基本目标是预测和描述数据,预测被称为:监督学习,描述被称为:无监督学习,区别是:有无标签
4.监督学习主要包括:分类 - 将样本划分到几个预定义类之一、回归 - 将样本映射到一个真实值预测变量上。无监督学习主要包括:聚类 - 将样本划分为不同类(无预定义类)、关联规则发现 - 发现数据集中不同特征的相关性。
6.OLAP联机分析处理。OLTP是联机事务处理
7.知识发现的步骤:确定知识发现的目标,数据采集,数据探索,数据预处理,数据挖掘,模型评估
8.数据预处理:数据清理,数据集成,数据归约,数据的变换和数据离散化
9.特征性描述:指从某类对象关联的数据中提取出这类对象的共同特征。
区别性描述:针对具有可比性的多个类,将目标类的特征与对比类的共性特征进行比较,描述不同类对象之间的差异。
回归和分类的区别:回归可用于预测连续的目标变量,分类可用于预测离散的目标变量。常见的分类算法:逻辑回归,决策树,神经网络,贝叶斯,K近邻算法,支持向量机(SVM)。预测算法分为定性预测和定量预测,定量可分为时间序列分析和因果关系分析,时间有:移动平均(ARIMA)、指数平滑,因果关系分析:回归方法、计量经济模型、神经网络预测法、灰色预测法、马尔科夫预测法。
关联:当多个变量之间存在某种规律性,目的:找出数据之间隐藏的关联关系,用支持度和置信度作为阈值度量关联规则的相关性。关联的情况:数值型关联规则,单层关联规则,多层关联规则,单维关联规则,多维关联规则。常用的关联算法:Apriori,FP-tree,HotSpot
聚类:是将数据分类到对应的类的过程,聚类过程的原则是追求较高的类内相似度和较低的类间相似度。聚类可分为:划分聚类,层次聚类,基于密度的聚类,基于网格的聚类,DBSCAN聚类
异常检测又被称为离群点,目的是识别出数据特征显著区别于其他数据的异常对象。
离群点检测大致分为:经典的离群点预测方法,包括基于统计学或模型的方法、基于距离或临近度的方法、基于偏差的方法、基于密度的方法、基于聚类的方法。
数据挖掘的过程描述为:数据目标的定义、数据的准备、数据的探索、模型的建立、模型的评估、模型的部署,简称DPEMED模型
结构化数据:数据库数据、数据仓库数据。非结构化数据:文本、Web、空间、多媒体等数据
数据库管理系统是建立、运用、管理、控制和维护数据库并对数据进行统一管理和控制的系统软件,数据库管理系统定义数据的结构、保障数据的安全性和一致性,数据库主要应用的数据操作为联机事务处理。
第二三章
1.Python程序模块:如Numpy,SciPy、Scikit-learn、Matplotilib
2.机器学习分为:监督学习:分类和回归、无监督学习:聚类。判断方法是有无标签。
3.机器学习框架一般步骤:数据的加载,选择模型,模型的训练,模型的预测,模型的评测,模型的保存,在Scikit-learn模块中实现。
4.评判指标。分类:准确率,AUC。回归:均方误差,平均绝对误差聚类指标:聚类:轮廓系数。
5.数据划分方法:K折交叉验证,留一法,随机划分法.
6.支持向量机SVM 优势:在高维度空间非常有效,即使在数据维度比样本数量大的情况下依然有效,在决策函数中使用训练集的子集,因此他也是高效利用内存。缺点:如果特征数量比样本数量大得多,在选择核函数时要避免过拟合,支持向量机通过寻找支持向量找到最优分割平面,是典型的二分类问题,因此无法解决多分类问题,不直接提供概率估计。
7.拟合问题的原因:使用的模型比较复杂,学习能力过强有噪声存在,数据量有限。过拟合:做的太过好以至于偏离了原本,泛化能力差。欠拟合:泛化能力强,但过于泛化。拟合问题的解决:寻找参数的最优:超参数优化器,使用sklearn中的学习曲线
第四章
1.分类的定义:分类任务就是通过学习得到一个目标函数f,把每个属性集x映射到一个预先定义的类标号y。分类是最常见的监督学习。
2.分类分析的主要目的:根据已知类别的训练集数据,建立分类模型,并利用该分类模型预测未知类别数据对象所属的类别。
3.多分类问题指一个样本属于且只属于多个类中的一个,一个样本只能属于一个类,不同类之间是互斥的,使用直接使用能直接处理多类问题的分类器。多标签分类问题:多标签学习、多标记学习,不同于多类分类,一个样本可以属于多个类别(或标签),不同类之间是有关联的。实现:将多标记学习问题转化为“标记排序( label ranking )问题求解,既对所有类别排序然后选出排名最高的类。
4.使用下列标准比较分类和预测方法:预测的准确率:模型正确预测新数据的类编号的能力;速度:产生和使用模型的计算花销;健壮性:给定噪声数据或有空缺值的数据,模型正确预测的能力;可伸缩性:对大量数据,有效的构建模型的能力;可解释性:学习模型提供的理解和洞察的层次。
5.贝叶斯分类方法是统计学分类方法,依赖的是贝叶斯定理,可以预测类成员的可能性,即给定样本属于一个特定类的概率。贝叶斯定理是一种把类的先验知识和从数据收集的新证据相结合的统计原理。
6.贝叶斯分类算法大致分为两类:朴素贝叶斯:假定类条件独立,即一个属性值对给定类的影像独立于其他属性值,因此称为“朴素”;贝叶斯信念网络:图形模型,能表示属性子集间的依赖,也可分类
7.贝叶斯定理为:P(Y|X)=P(X|Y)P(Y)/P(X)
8.朴素贝叶斯工作过程(1)、每个数据样本用n维向量X={x_1,x_2,…x_n}表示,n个属性度量为A_1,A_2,…A_n(2)、假定有m个类C_1,C_2,…C_m,给定一个未知的数据样本X,分类法将预测X属于具有最高后验概率的类,即P(C_i│X)>P(C_j│X),1≤j≤m,j≠i使P(C_i│X)最大的类C_i称为最大后验假定P(C_i│X)=P(X│C_i)P(C_i)/P(X)(3)、由于P(X)对于所有类为常数,只需要计算P(X│C_i)P(C_i),如果类的先验概P(C_i)率未知,则假定等概率, P(C_i)=1/m,也可使用P(C_i)=属于C_i的样本个数/总样本个数。(4)、给定具有n个属性的数据集,计算P(X│C_i)的开销可能会很大,为降低开销,可做类条件独立的朴素假定,即P(X│C_i)=∏_k=1^n▒p(x_k|C_i), p(x_k|C_i)可由训练样本估值,其中:如果A_k是分类属性,则p(x_k|C_i)=s_ik/s_i;其中s_ik是属性A_k上具有值X_ik的类C_i的训练样本数,而s_i是C_i中的训练样本数如果是连续值属性,则通常假定该属性服从高斯分布,即p(x_k│C_i)=g(x_k,μ_C_i,σ_C_i)=1/√2πσ_C_ie^−(x−μ_C_i)^2/2σ_C_i^2;(5)、对未知样本X分类,需要计算对于每个C_i的P(X│C_i)P(C_i) ,样本被指派到类C_i当且仅当:P(X│C_i)P(C_i)>P(X│C_j)P(C_j) 1≤j≤m,j≠i即X被指派到其P(X│C_i)P(C_i)最大的类C_i
9.朴素贝叶斯优点:算法逻辑简单,易于实现(算法思路简单,只要使用贝叶斯公式转化即可!),非常适用于大规模数据集分类过程中时空开销小(假设特征相互独立,只会涉及到二维存储)。缺点:朴素贝叶斯假设属性之间相互独立,这种假设在实际过程中往往是不成立的。在属性之间相关性越大,分类误差也就越大。
10.极大似然估计:以概率为基础,不考虑先验知识。认为参数是客观存在的,只是未知而已。因此,通过极大似然函数求参数,然后根据参数求解给定自变量X时的Y。贝叶斯估计:认为参数不是固定不变的,而是服从一定的概率分布。极大似然估计朴素贝叶斯算法中的应用——对先验概率和条件概率的估计。极大似然估计是想让似然函数极大化,而考虑了最大后验概率算法的贝叶斯估计,其实是想让后验概率极大化。主要区别在于估计参数中,一个考虑了先验一个没有考虑先验。
11.sklearn中有3种不同类型的朴素贝叶斯:高斯分布型、多项式型、伯努利型
12.向量空间模型的基本概念
(1)Document文档:泛指一般的文本或者文本中的片断(段落、句群或句子),一般指一篇文章,尽管文档可以是多媒体对象,但只讨论文本对象。(2)项(Term):文本的内容特征常常用它所含有的基本语言单位(字、词、词组或短语等)来表示,这些基本的语言单位被统称为文本的项,即文本可以用项集(Term List)表示为D(T1,T2,…,Tn)其中是项,1≤k≤n(3)项的权重(Term Weight):对于含有n个项的文本D,项常常被赋予一定的权重表示他们在文本D中的重要程度,即D=(W1,W2,…,Wn)(4)相似度(similarity):两个文本之间的(内容)相关程度常用相似度来度量,当文本被表示为向量空间模型时,可以借助于向量间的某种距离来度量文本间的相似度。(5)词频(Term Frequency,TF):特征项在文本中出现的次数,反映了特征项在给定的文本中的概念重要程度。计算方法:(6)文档频率(Document Frequency,DF):特征项在全局文本集 D 中的出现频率,反映了特征项的信息度(informativeness),用于体现一个特征项的“文义甄别能力”。计算方法:DF=包含某个词的文档数/语料库中文档总数
13.KNN算法过程1)计算测试数据与各个训练数据之间的距离;2)按照距离的递增关系进行排序;3)选取距离最小的K个点;4)确定前K个点所在类别的出现频率;5)返回前K个点中出现频率最高的类别作为测试数据的预测分类。
14.KNN算法重要特征:KNN算法需要确定K值、距离度量和分类决策规则
15.常用距离函数:闵可夫斯基距离,切比雪夫距离,马氏距离
16.常见的损失函数:
0-1损失:L(Y,f(X))={■8(1, Y≠f(X)@0, Y=f(X))┤
平方损失:L(Y,f(X))=(Y−f(X))^2
绝对损失:L(Y,f(X))= |Y−f(X)|
对数损失/对数似然损失: L(Y,f(X))=−logp(Y|X)
指数损失: L(Y,f(X))=e^−Yf(X)
Hinge损失:L(Y,f(X))=max(0, 1−Y∗f(X)), Y∈[−1,+1]
17.模型好坏的评估——风险函数最小化
损失函数是经验风险函数的核心部分,也是结构风险函数的重要组成。模型的风险结构包括风险箱和正则项。经验风险:结构风险:
18.积极学习与消极学习
积极学习(Eager learning):指在进行某种判断之前,先利用训练数据进行训练得到一个目标函数,待需要时就只利用训练好的目标函数进行鞠策,是一种一劳永逸的方法。如贝叶斯,SVM,神经网络等
消极学习(Lazy learning):指不根据样本建立一般的目标函数并确定其参数,而是简单的把训练样本存储起来,直到需要分类新的实例时才分析其所存储样例的关系,据此确定新实例的目标函数值。即在做决策之前不会经历eager learning的训练过程。如KNN等
19.KNN算法的优缺点:优点:(1)简单,易于理解,易于实现,无须参数估计和训练(2)精度高,对异常值不敏感,不易受最小错误概率的影响。(3)适合对稀有事件进行分类,适合于多分类问题、多标签问题。缺点:(1)计算量大,空间开销大。——降维、KD树/球树(2)可解释性差,无法给出具体的规则(3)当样本不均衡时容易出错。
第五章:回归
1.回归分析:确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法
数据的变换是将原始的特征数据进行归一化和标准化的操作。归一化是将原始数值变成(0,1)之间的小数,
2.归一化的方法:最大最小规范化,z-score,标准化。归一化的原因:在于不同变量往往量纲不同,归一化可以消除量纲对最终结果的影响,是不同变量有可比性。
3.特征性描述:指从某类对象关联的数据中提取出这类对象的共同特征。区别性描述:针对具有可比性的多个类,将目标类的特征与对比类的共性特征进行比较,描述不同类对象之间的差异。
3.回归与分类的区别:回归可用于预测连续的目标变量,分类可用于预测离散的目标变量。
常见的分类算法包括逻辑回归,决策树,神经网络,贝叶斯,K近邻算法,支持向量机(SVM)。
预测算法分为定性预测和定量预测。定量预测可分为时间序列分析和因果关系分析两类,其中常用的时间序列分析法有移动平均(ARIMA)、指数平滑等,因果关系分析法有回归方法、计量经济模型、神经网络预测法、灰色预测法、马尔科夫预测等
数据挖掘任务整体分为描述性任务和预测性任务两大类
关联:当两个或多个变量之间存在某种规律性
关联分析的目的:找出数据之间隐藏的关联关系。在关联分析生成的规则中,我们需要使用支持度和置信度作为阈值来度量关联规则的相关性。
第六章
1.聚类分析:指将数据对象的集合分成由类似的对象组成的多个组别的过程,也就是将一系列的数据聚集成多个子集或簇,其目标是建立类间紧密,类间分散的多个簇。
2.聚类的结果:要求簇内的数据之间要尽可能相似,而簇间的数据之间则要尽可能不相似。两类聚类分析方法:划分聚类,层次聚类
3.降维分析:从高维数据空间到低维数据目的是降低时间复杂度和空间复杂度,去掉数据集中夹杂的噪音;4.为使用较少的特征进行解释,方便我们更好解释数据以及实现数据的可视化。
5.实现维度减少有两种方法:特征选择和特征提取。
6.K-means通过预先设定的K值及每个子集的初始质心对所有数据据点进行划分,并通过划分后的均值迭代优化获得最优的聚类结果。K-means伪代码:从D中任意选择K个对象作为初始簇的中心;重复34;根据数据到聚类中心的距离,对每个对象进行分配;更新聚类中心位置,即计算每个簇中所有对象的质心,将聚类中心移动到质心位置;知道聚类中心不再发生变化。
7层次聚类分为凝聚层次聚类:自底向上,将每个数据看成一个子集,不断两两合并和分类层次聚类:自顶向下,将所有数据看成一个子集,不断分类直到满足条件或都在单独子集。
8.度量两个类簇之间的距离的方法:单链接:将两个组合数据点中距离最近的两个数据点间距离作为这两个组合数据点的距离、全链接:最远、组平均:求出所有数据点中与其他数据点距离,将所有距离均值作为两个组合数据点间的距离、质心距离
9.聚类的评测方法--轮廓系数=(x-y)/max(x,y)
10.降维的方法:主成分分析法,因子分析,独立成分分析。
第七章
1.关联规则:一种发现大量数据中事物(特征)之间有趣的关联的技术
2.关联规则-Apriori算法及协同过滤算法。
3.关联规则挖掘的一般步骤:列出所有规则、计算这些规则的支持度和置信度、留下满足支持度置信度阈值的关联规则
4.关联规则分为两步:(1)找出所有频繁项集:找出所有满足最小支持度的项集,即频繁项集(2)频繁项集生成满足最小置信度阈值的规则:在上一步产生的频繁项集的基础上生成满足最小自信度的规则,称为强关联规则。
5.协同过滤(Collaborative Filtering, CF) 是利用集体智慧的典型方法。相对于集体智慧而言,从一定程度上保留了个体的特征,就是你的品位偏好,所以它更多可以作为个性化推荐的算法思想。
6.协同过滤的核心问题就是:如何找到用户的兴趣?如何找到兴趣相投的其他用户?
7.协同过滤的基本流程:(1)收集用户偏好(2)找到相似的用户或物品(3)计算推荐