(一):决策树
Entropy([9+,5-])=-(9/14)log2(9/14)-(5/14)log2(5/14)=0.940。
2) 在树构造过程中进行剪枝;
3) 能够完成对连续属性的离散化处理;
4) 能够对不完整数据进行处理。
(二):贝叶斯分类器
贝叶斯定理:
有人说,概率论只不过是把常识用数学公式表达了出来。上面的式子在概率课上大家都推导过,很简单,但是在所有需要作出概率预测的地方都可以见到贝叶斯方法的影子,而且,贝叶斯是机器学习的核心方法之一。
回到贝叶斯定理,假设X表示属性集,Y表示类变量,P(Y|X)表示在属性集已知的情况下属于某一类的概率。P(Y|X)被称为Y的后验概率,P(Y)称为Y的先验概率。在比较不同的Y值的后验概率时,P(X)总是常数,因此可以忽略。P(Y)可以通过计算训练集中属于每个类的训练记录所占的比例很容易估计。对P(X|Y)的估计,有朴素贝叶斯和贝叶斯信念网络。
(1):朴素贝叶斯
假设属性之间条件独立。设X,Y,Z表示三个随机变量的集合,给定Z,X条件独立于Y,有P(X|Y,Z)=P(X|Z),那么
有了上式后将贝叶斯公式改写成
这样对于给定的Y只要计算每一个Xi的条件概率
(2):贝叶斯信念网络
朴素贝叶斯的条件独立假设过于严格,贝叶斯信念网络则不需要所有属性都条件独立
主要有两个组成成分:
1: 一个有向无环图,表示变量之间的依赖关系
2:一个概率表,把各节点和它的直接父节点连接起来
性质:如果一个节点的父母节点已知,则它条件独立于所有非后代的节点。
关联的概率表
(1):如果没有父母节点,则表中只包含先验概率P(X);
(2):如果只有一个父母节点,则表中包含条件概率P(X|Y);
(3):如果有多个父母节点,则表中包含条件概率P(X|Y1,Y2,…,Yk)
(三):支持向量机(SVM)
1:最大边缘超平面
图显示了一个数据集,方块和圆圈分别属于不同的类
(1):数据集线性可分:找到一个超平面,使得所以方块位于超平面的一侧,而圆圈位于另一侧
(2):最大边缘超平面:图中B1就是最大边缘超平面。bi1平移一个与决策边界平行的超平面,直到触到最近的一个方块为止。bi1和bi2之间的间距称为分类器的边缘。B1的边缘最大,所以是最大边缘超平面。
2:线性支持向量机
2.1:可分情况
考虑一个包含N个训练样本的二元分类问题。每个样本表示为(xi,yi)(i=1,2…N),yi属于{-1,1},则一个线性分类器的决策边界可以表示成:
用下面的方式预测样本z的类编号
SVM的训练阶段从训练数据估计w和b,w和b需要满足
等价于:
同时满足决策边界的边缘最大,既:
SVM的学习任务被形式化描述为:
2.2:不可分的情况
如图:
B1虽然出错,但是仍优于B2,不过需要引进软边缘,如下:
则目标函数修改为:
3:非线性支持向量
正在学习中。。。。。。
3:非线性支持向量机
(1):对于非线性的问题的,找一个映射 ϕ(.) ,然后把原来的数据映射到新空间中,再做线性 SVM 即可.但这样带来的将是维灾难,所以如果能够在原来的空间上进行计算则对于解决问题将是极大帮助的。
核函数就是这样的方法。例如向量
x1=(η1,η2)T
和向量
x2=(ξ1,ξ2)T
,通过
(⟨x1,x2⟩+1)2=2η1ξ1+η21ξ21+2η2ξ2+η22ξ22+2η1η2ξ1ξ2+1
得到的结果和利用高维转化的结果很接近。那么在通过简单的转化就行。这里的
(⟨x1,x2⟩+1)2
就是我们要寻找的核函数。得到核函数之后解决方法就和前面线性的方法一致。这里就不做介绍了。
对于核函数的选取,有一些常用的核函数:
- 多项式核 k(x1,x2)=(⟨x1,x2⟩+R)d
- 高斯核
κ(x1,x2)=exp(−∥x1−x2∥22σ2)
(五):K均值
1:聚类领域的K均值K均值算法不难,直接给出算法的具体步骤:(1):选择K个点作为初始质心;(2):将每个点指派到最近的质心,形成K个簇;(3):重新计算每个簇的质心;(4):重复(2)、(3)直到质心不发生变化2:初始质心的选择这个过程通常是针对具体的问题有一些启发式的选取方法,或者大多数情况下采用随机选取的办法。因为前面说过 k-means 并不能保证全局最优,而是否能收敛到全局最优解其实和初值的选取有很大的关系,所以有时候我们会多次选取初值跑 k-means ,并取其中最好的一次结果。3:指派到最近的质心通常使用欧几里得距离就可以了,因为算法需要重复计算每个点与每个质心的相似度4:目标函数使用误差的平方和来作为度量聚类质量的目标函数(SSE)。SSE = SSE=∑ki=1∑x∈Cidist(ci,x)2
(六):最近邻分类器(KNN)
1:积极和消极的学习方法(1):积极的学习方法。这种学习方法在收到训练数据之后就开始学习从输入属性到类编号的映射模型(2):消极的学习方法。推迟对训练数据的建模,直到需要进行分类测试样例的时候再进行。2:原理个人觉得这个方法有点“近朱者赤近墨者黑”的思想。对你周围的朋友进行考察,不断变化这个朋友圈的范围。如果这个圈内好的朋友对于坏的朋友,那么你就被贴上坏的标签。3:算法(1):令K为近邻的数目,D是训练样例的集合(2):为每个测试样例选择距离其最近的K个训练样例集合(3):计算得到的集合,判断该测试样例所属类别(4):循环(2)、(3)
(七):高斯混合模型GMM
1:问题介绍有 N个数据 X → ={x1,x2,…,xn},每个数据时 D维的,根据 K个高斯分布(每个被称作 Component)将数据聚成 K个类。由中心极限定理知大量的独立随机变量之和具有近似于正态的分布,所以我们认为每个 xi独立同正态分布,又 X→ 是 D维的,则多元高斯模型:2:引入隐藏随机变量 Z →思想:我们要从 GMM 的分布中随机地取一个点的话,实际上可以分为两步:首先随机地在这 个 Component 之中选一个,每个 Component 被选中的概率实际上就是它的系数 ,选中了 Component 之后,再单独地考虑从这个 Component 的分布中选取一个点就可以了──这里已经回到了普通的 Gaussian 分布,转化为了已知的问题。实际上就是 Z → 一个K维的二元随机变量,表示每一个点属于哪一个Component的。( 1): Z → 是一个 K维的二元随机变量满足 1-of- K representationZ → 中只有一个 zk为 1,其余均为 0,例如 K=6, z3 =1,于是 Z → 表示为( 0,0,1,0,0,0)Tz k ∈ { 0 , 1 }并且 ∑k z k = 1 并令 p(z k = 1 ) = π k, π k 满足: 0≤π k ≤ 1 并且 ∑K k=1 π k = 1那么 p(Z)为:p(Z → ) = ∏ k=1 K π z k k( 2)我们认定在给定 zk下 X的条件概率为高斯分布,则有p(X → | z k = 1 ) = N ( x | μ k , Σ k )那么得到 x和 z的联合分布,在通过边缘分布得到p(X→ ) = ∑ Z→ p ( Z → ) p ( X → | Z → )= ∑K k=1 π k N ( x | μ k , Σ k )这样我们就可以用 X→ , Z→ 的联合分布来代替 p(X→ )( 3)估计数据X由每个 Component 生成的概率(并不是每个 Component 被选中的概率):即Z在给定X下的条件概率,利用贝叶斯公式得到3:参数估计因为我们不知道参数,所以就是进行参数估计,一般采取数理统计中的极大似然函数去估计参数通常取对数的似然估计函数4:应用 EM由于上式对数函数里面又有加和,我们没法直接用求导解方程的办法直接求得最大值。所以利用 EM思想来做( 1):初始化 μk , Σk 等参数( 2): E步利用现有参数得到( 3): M步重新估计参数(4):评估 log 似然函数是否收敛,否则转到第二步E步的思想就是,如果是第一步,则先选一个初始参数值,否则利用当前的参数值,计算出数据由每个 Component生成的概率M步的思想就是估计每个 Component 的参数:现在我们假设上一步中得到的 就是正确的“数据 由 Component 生成的概率”,亦可以当做该 Component 在生成这个数据上所做的贡献,或者说,我们可以看作 这个值其中有 这部分是由 Component 所生成的。集中考虑所有的数据点,现在实际上可以看作 Component 生成了 这些点。由于每个 Component 都是一个标准的 Gaussian 分布,可以很容易分布求出最大似然所对应的参数值
(八):关联分析
一:关联分析的基本概念1:购物篮事务如图。表中每一行对应一个事务,包含一个唯一标示TID和给定顾客购买的商品集合。2:关联分析(1):关联分析:用于发现隐藏在大型数据集中的有意义的联系。所发现的联系一般用关联规则或频繁项集的形式表示。如下:{尿布}->{啤酒}:表明两者的销售之间存在很强的联系。(2):二元表示如图。每行对应一个事务,每一列对应一个项。项用二元变量表示,若项在事务出现则值为1,否则为0(3):项集令 I=i1,i2,...,id 是购物篮数据中所有项的集合, T=t1,t2,...,tN 是所有事务的集合。包含0个多多个项的集合被称为项集。如果一个项集包含k个项,则称为k-项集。例如:{啤酒,尿布,牛奶}称为3-项集。(4):支持度计数1:如果项集X是事务 tj 的子集,则称事务 tj 包含项集X;2:支持度计数:包含特定项集的事务个数,即:σ(X)=|ti|X⊆ti,ti∈T|例如:在上图中项集{啤酒,尿布,牛奶}的支持度计数为2,有两个事务同时包含这3个项。(5):关联规则:形如X->Y的蕴含表达式。X与Y不相交。1:支持度s(X−>Y)=σ(X∪Y)N :规定数据集的频繁程度2:置信度c(X−>Y)=σ(X∪Y)σ(X) :确定Y在包含X的事务中出现的频繁程度(6):关联规则的发现给定事务的集合T,找出支持度大于等于某个支持度并且置信度大于等于某个置信度的所有规则。分为两个子问题1:频繁项集产生:发现满足最小支持度阈值的所有项集2:规则的产生:从上步发现的频繁项集中提取所有高置信度的规则二:相关算法1:频繁项集的产生Apriori算法(1):先验原理:如果一个项集是频繁的,则它的所有子集一定也是频繁的。(2):Apriori算法大致过程令 Ck 为候选k-项集的集合, Fk 为频繁k-项集的集合1:初始单遍扫描数据集,确定每个项的支持度,得到所有频繁1-项集的集合 F12:使用上一次迭代得到的频繁(k-1)-项集,产生新的候选k-项集3:重新扫描数据集得到候选项的支持度计数。删除支持度小于阈值的所有候选项集4:跳转到25:没有新的项集产生,算法结束2:规则的产生将频繁项集Y划分为两个非空的子集X和Y-X,使得X->Y-X满足置信度的阈值Apriori算法:初始,提取规则后件只含有一个项的所有高置信度规则,然后,使用这些规则来产生新的候选规则。例如:如果{acd}->{b}和{abd}->{c}是两个高置信度的规则,则通过合并这两个规则的后件产生候选规则{ad}->{bc}(九):聚类
一:聚类的相关概念1:聚类分析根据在数据中发现的描述对象及其关系的信息,将数据对象分组。目标:组内的对象相互之间相似度高,不同组对象之间的相似度低。2:不同的聚类类型(1):划分聚类将数据对象集划分成不重叠的簇层次聚类允许嵌套,组织成一棵树(2):互斥聚类每个对象都指派到单一的簇重叠聚类一个对象可以同时从属于多个簇模糊聚类每个对象以一个0和1之间的隶属权值属于每个簇3:不同的簇类型(1):明显分离的每个对象到同簇对象的距离近于不同簇的任意对象(2):基于中心的簇每个点到其簇中心的距离比到其他簇中心的距离更近(3):基于近邻的簇每个点到簇中至少一个点的距离比到不同簇中任意点的距离更近(4):基于密度的簇簇是被低密度区域分开的高密度区域二:聚类算法1:k-均值2:凝聚层次聚类从个体点作为簇开始,相继合并两个最接近的簇,直到只剩下一个簇算法中的邻近性定义:(1):MIN(单链)不同簇的两个最近点之间的邻近度(2):MAX(全链)不同簇的两个最远点之间的邻近度(3):组平均:取不同簇所有点对邻近度的均值3:DBSCAN 一种基于密度的聚类算法(1):根据基于中心的密度进行点分类核心点:点在基于密度的簇内部边界点:不是核心点,但它落在某个核心点的邻域内噪声点:既非核心点又非边界点(2):算法4:混合模型聚类(十):HITS
一:解决的问题:
1:用户查询分类
(1):Specific queries :例如.Does Netscape support the JDK 1.1 code-signing API
(2):Broad-topic queries:例如. Find information about the Java programming language
2:问题
(1):对于Specific queries ,由于相关term太少,很难查找出来想要的结果
(2):对于 Broad-topic queries,相关的查询结果太多,很难找到the authoritative or definitive pages
3:基于文本分析的局限
大多数popular网页时缺乏有效充足的自描述的,例如www.harvard.edu是一个authoritative网页,但是往往是其他的大量网页会包括harvard,www.harvard.edu反而不会有很多。
二:问题的解决
1:利用link structure
2:提出Authorities and Hubs 概念
(1):Authorities:pages that are recognized as providing significant, trustworthy, and useful information on a topic.
(2):Hubs:Hubs are index pages that provide lots of useful links to relevant content pages (topic authorities)
(3):In-degree. Number of pointers to a page and is one simple measure of authority
(4):Out-degree. Number of pointers from a page to other pages
3:Roor Set and Base Set
(1):p.查询语句
(2):Root Set Rp.包含查询结果的网页
(3) :Base Set:扩展Root Set
1:all pages linked to by pages in root set
2:all pages that link to a page in root set
4:子图构建算法
5:计算Hubs和Authorities
(1):对于每一个 p∈S ,有
Authority score : ap (vector a)
Hub score : hp (vector h)
(2):Initialize all ap = hp = 1
(3):Maintain normalized scores:
∑p∈S (ap)2=1
∑p∈S (hp)2=1
(4):迭代算法