机器学习的书籍推荐:
机器学习推荐工具:
数据工程师的基本能力:
大数据工程师的基本能力:
什么是机器学习?
机器学习是研究如何”利用从数据中得来的经验来改善计算机系统自身的性能”
- Learning : improving some performance measure with experience accumulated/computed from observation
- Machine Learning: improving some performance measure with experience computed from data
什么是数据挖掘?
数据挖掘是:识别出巨量知识中有效的、新颖的、潜在有用的、最终可以理解的模式的平凡过程。
数据挖掘也常常被称之为知识发现(Knowledge Discovery)
机器学习和数据挖掘的关系:
数据挖掘技术包括:数据分析技术 + 数据管理技术。机器学习提供的是数据分析技术,所以,机器学习是数据挖掘的一部分。
机器学习和其他学科的关系:
模式识别=机器学习。两者的主要区别在于前者是从工业界发展起来的概念,后者则主要源自计算机学科。在著名的 《Pattern Recognition And Machine Learning》这本书中,Christopher M. Bishop在开头是这样说的“模式识别源自工业界,而机器学习来自于计算机学科。不过,它们中的活动可以被视为同一个领域的两个方面,同时在过去的10 年间,它们都有了长足的发展”。
数据挖掘=机器学习+数据库。这几年数据挖掘的概念实在是太耳熟能详。几乎等同于炒作。但凡说数据挖掘都会吹嘘 数据挖掘如何如何,例如从数据中挖出金子,以及将废弃的数据转化为价值等等。但是,我尽管可能会挖出金子,但我也可能挖的是“石头”啊。这个说法的意思 是,数据挖掘仅仅是一种思考方式,告诉我们应该尝试从数据中挖掘出知识,但不是每个数据都能挖掘出金子的,所以不要神话它。一个系统绝对不会因为上了一个 数据挖掘模块就变得无所不能(这是IBM最喜欢吹嘘的),恰恰相反,一个拥有数据挖掘思维的人员才是关键,而且他还必须对数据有深刻的认识,这样才可能从 数据中导出模式指引业务的改善。大部分数据挖掘中的算法是机器学习的算法在数据库中的优化。
统计学习近似等于机器学习。统计学习是个与机器学习高度重叠的学科。因为机器学习中的大多数方法来自统计学,甚 至可以认为,统计学的发展促进机器学习的繁荣昌盛。例如著名的支持向量机算法,就是源自统计学科。但是在某种程度上两者是有分别的,这个分别在于:统计学 习者重点关注的是统计模型的发展与优化,偏数学,而机器学习者更关注的是能够解决问题,偏实践,因此机器学习研究者会重点研究学习算法在计算机上执行的效 率与准确性的提升。
计算机视觉=图像处理+机器学习。图像处理技术用于将图像处理为适合进入机器学习模型中的输入,机器学习则负责 从图像中识别出相关的模式。计算机视觉相关的应用非常的多,例如百度识图、手写字符识别、车牌识别等等应用。这个领域是应用前景非常火热的,同时也是研究 的热门方向。随着机器学习的新领域深度学习的发展,大大促进了计算机图像识别的效果,因此未来计算机视觉界的发展前景不可估量。
语音识别=语音处理+机器学习。语音识别就是音频处理技术与机器学习的结合。语音识别技术一般不会单独使用,一般会结合自然语言处理的相关技术。目前的相关应用有苹果的语音助手siri等。
自然语言处理=文本处理+机器学习。自然语言处理技术主要是让机器理解人类的语言的一门领域。在自然语言处理技 术中,大量使用了编译原理相关的技术,例如词法分析,语法分析等等,除此之外,在理解这个层面,则使用了语义理解,机器学习等技术。作为唯一由人类自身创 造的符号,自然语言处理一直是机器学习界不断研究的方向。按照百度机器学习专家余凯的说法“听与看,说白了就是阿猫和阿狗都会的,而只有语言才是人类独有 的”。如何利用机器学习技术进行自然语言的的深度理解,一直是工业和学术界关注的焦点。
什么是大数据?
大数据和机器学习的关系?
大数据相关的技术包括很多方面:数据的获取、数据的存储和数据的分析。在数据的分析这块中,主要包括高性能计算和机器学习两个方面。
总之,大数据不仅仅是机器学习,还包括编程语言、软件开发、概率统计、分布式计算、云计算、可视化…
什么是深度学习?
深度学习时机器学习的一个分支,可以理解为特征学习(feature learning)或者说是表示学习(representation learning)的一种学习方法。
深度学习近年来在图像、语音等领域获得应用,效果显著提升
机器学习的分类方法:
归纳学习方法的分类:
半监督学习的特点:
机器学习的基本过程:
表示- –> *训练- –> *测试
表示的过程是和行业相关的重要的过程,一般需要行业专家级从业人员从中给出建议。
训练的过程是如何找出规律的过程,包括三个部分:模型、策略和算法。
测试的过程是根据找到规律进行预测,预测的好与坏需要一个标准,一般采用打分的方法来进行测试的评价。
列举一些机器学习的典型应用:
向量空间模型(Vector Space Model,VSM)由康奈尔大学 Salton等人上世纪70年代提出并倡导。
每篇文档(或者每个查询)都可以转化为一个向量,于是文档之间或文档和查询之间的相似度可以通过向量之间的距离来计算。
用于文本分析时,向量中的每一维对应一个词项(term)或者说文本特征。
n篇文档,m个词项构成的矩阵Am*n,每列可以看成每篇文档的向量表示,同时,每行也可以可以看成词项的向量表示:
\[A_{m*n} = \begin{bmatrix} a_{11} & a_{12} & \ldots & a_{1n}\\\\a_{21} & a_{22} & \ldots & a_{2n}\\\\ \vdots & \vdots & \ldots & \vdots\\\\a_{m1} & a_{m2} & \ldots & a_{mn}\end{bmatrix}\]VSM中的三个关键问题:
信息论即香农(Claude Edwood Shannon, 1916-2001 )信息论,也称经典信息论,是研究通信系统极限性能的理论。
信息论是研究信息的基本性质及度量方法,研究信息的取得、传输、存贮、处理和变换的一般规律的科学。
1948年,美国工程师和数学家香农 (Claude Edwood Shannon, 1916-2001 )发表了《通信的数学理论》(A Mathematical Theory of Communication,BSTJ,1948)标志着信息论的产生。
熵
一个离散随机变量X,其概率分布函数为p(x),则X的熵定义为:
\[H(X) = -\sum_xp(x)log\,p(x) = \sum_xp(x)log\,\frac{1}{p(x)}\]通常对数以2为底, H代表了X的信息量,也可以认为是对X进行二进制编码所需要的平均编码长度:
\[0\le H(x)\le log\,|X|\]
- X只取某个确定值的时左边等号成立
- X为均匀分布时右边等号成立
也就是说:一个变量的不确定性越大,熵也就越大,把它搞清楚所需要的信息量也就越大
联合熵
随机变量X、Y的联合分布是p(x,y),它们的联合熵(Joint Entropy)为:
\[H(X,Y)=-\sum_x\sum_y p(x,y)log\,p(x,y)=\sum_x\sum_y p(x,y)\frac{1}{log\,p(x,y)}\]条件熵
\[H(X|Y)=-\sum_x\sum_y p(x,y)log\,p(x|y)=\sum_x\sum_y p(x,y)\frac{1}{log\,p(x|y)}\]条件熵(Conditional Entropy)(给出另外一个随机变量后,当前随机变量的信息熵还有多少)
互信息
\[I(X,Y)=H(X)-H(X|Y)=\sum_x\sum_y p(x,y)log\,\frac{p(x,y)}{p(x)p(y)}\]互信息(Mutual Information)(是变量之间相互依赖的度量)
如果互信息越大,说明X变量对Y变量的依赖程度就越强,也就是说:当Y的信息给出之后,我们对X的了解就会足够多了
分类的发展
手工方法- –> *(人工撰写)规则的方法- –> *统计概率的方法
Web发展的初期,Yahoo是使用人工分类的方法来组织Yahoo目录的 Google Alerts的例子是基于规则分类的,通常情况下都是一些Boolean表达式的组合 文本分类是一种监督学习的分类,基于统计概率的方法
文本分类的分类流程:
特征选择
特征选择所考虑的因素
不同的特征选择方法
特征的选择方法主要是基于所要使用的特征效用(Utility)指标定义,即定义特征对于分类的有用程度
信息增益
\[IG(t)=Entropy(S)-Expected Entropy(S_t)=-\sum_{i=1}^M P(c_i)log\,P(c_i)-[P(t)(-\sum_{i=1}^M P(c_i|t)log\,P(c_i|t)) + P(\overline t)(-\sum_{i=1}^M P(c_i|\overline t)log\,P(c_i|\overline t))]\]信息增益(Information Gain, IG):该特征为整个分类所能提供的信息量(不考虑任何特征的熵和考虑该特征后的熵的差值)
在某种情况下期望互信息和信息增益是等价的(IG=MI)
卡方法
\(\chi^2\) 统计量(卡方统计量):度量两者(词项和类别)独立性的缺乏程度, \(\chi^2\)越大,独立性越小,相关性越大。
特征选择VS特征权重的计算
特征选择的问题:
文本分类的评价
评价必须基于测试数据进行,而且该测试数据是与训练数据完全隔离的 (通常两者样本之间无交集)
评价指标:指标:正确率、召回率、 F1值、分类精确率(classification accuracy)等等
正确率(Precision)、召回率(Recall)、精确率(Accuracy)
\[\begin{array} {|l|c|r|} \hline & \text {in the class} & \text {not in the class} \\\\ \hline \text {predicted to be in the class} & \text {true positive(TP)} & \text {false positive(FP)} \\\\ \hline \text {predicted to be not in the class} & \text {false negatives(FN)} & \text {true negatives(TN)} \\\\ \hline \end{array}\]精确率 Accuracy = (TP+TN)/(TP + FP + FN + TN)
判断是否有罪: + 如果没有证据证明你无罪,那么判定你有罪。–> 召回率高,有些人受冤枉 + 如果没有证据证明你有罪,那么判定你无罪。–> 召回率低,有些人逍遥法外
F值
F是R和P的调和平均数,在正确率和召回率之间达到某种平衡
\[\frac{1}{F}=\frac{1}{2}(\frac{1}{P}\,+\frac{1}{R})\]其他的评价方法还有:混淆矩阵、ROC曲线
训练集合测试集
微平均和宏平均
上面对于一个类得到评价指标P、R、F1,但是我们希望得到分类器在所有类别上的综合性能
对 | C | 个结果求算术平均 |
朴素贝叶斯是一个概率分类器
就文本分类而言,文档d术语类别c的概率计算公式:
\[P(c|d)=\frac{P(d|c)}{P(c)}\,\propto\,P(d|c)P(c)=P(c)\prod_{1\le k \le n_d} P(t_k|c)\]\(n_d\)是文档的长度(词的个数)
P(c)是类别c的先验概率
\(P(t_k | c)\)是词项\(t_k\)出现在类别c中文档的概率,度量的是类比c中\(t_k\)的贡献 |
上式的假设是独立性假设
如果文档的词项无法提供属于哪一个类的信息,我们直接选择P(c)最高的那个类
朴素贝叶斯的原理
由于很多小的概率乘积会导致浮点数下溢出且log是单调函数,一次在实际中常常使用的公式是:
\[c_{map}=arg\max_{c \in C}[log \hat P(c) + \sum_{1 \le k \le n_d} log \hat P(t_k|c)]\]分类的规则:选择后验概率最大的,也就是最有可能的那个类别
朴素贝叶斯的实现方式
多项式模型朴素贝叶斯
基于多项式模型的实现方法:多项式模型中各单词类条件概率计算考虑了词出现的次数,多项式模型是一种以词作为计算粒度的方法。
多项式朴素贝叶斯的参数估计也是以上面的假设为前提的
先验概率的估计:
\[\hat P(c)=\frac {N_c}{N}\]\(N_c\)表示类c中文档数目;N表示所有的文档总数
条件概率估计:
\[\hat P(t|c)=\frac {T_{ct}}{\sum_{t' \in V}T_{ct'}}\]
- \(T_{ct}\)是训练集中类别c中词条t的个数(多次出现要计算多次),V代表整个词汇表,是不同词语的个数
- 位置独立性假设(positional independence assumption):\(\hat P(t_{k_1})=\hat P(t_{k_2})\)
伯努利模型朴素贝叶斯
基于伯努利模型的实现方法:伯努利模型中各单词类条件概率计算考虑了词所在的文档占整个文档的比例,多项式模型是一种以词作为计算粒度的方法。伯努利模型认为文档中单词出现一次与出现多次等效,只有出现与不出现的区别。
高斯朴素贝叶斯
高斯朴素贝叶斯用来处理连续型值的特征,可以用高斯模型求解:
\[P(x_i|w_i)=\frac {1}{\sqrt{2\pi\sigma_{w_i}^2}}exp\{-\frac{(x_i - \mu_{w_i})^2}{2\sigma_{w_i}^2}\}\]其中,均值、方差可以利用MLE估计求解
0概率处理-加一平滑法
参数估计的时候,有可能遇到0概率的事件,这时候就必须将0概率处理掉,防止结果出现0的情况
一般次用加一平滑的方法进行处理,以多项式贝叶斯为例子进行说明:
B的个数就是整个单词表的个数
朴素贝叶斯特点:
中心向量分类器思想
其中,\(D_c\)是所有属于类别c的文档,\(\vec{v}(d)\)是文档d的向量空间表示
中心向量的性质:
很多情况下,中心向量法的效果不如朴素贝叶斯。一个原因是,中心向量法不能正确处理非凸、多模式类别问题
KNN,K Nearest Neighbor分类器。
KNN分类器思想
KNN讨论
KNN的一种快速实现方式是:KD-树
所谓的线性二类分类器是:存在一条线或者一个超平面能偶将两个类别分离开来。
中心向量分类器是一个线性分类器 朴素贝叶斯分类器也是一个线性分类器 KNN分类器不是一个线性分类器
基本概念
w和b是感知机参数,分别代表权重和偏置(bias)
模型-Sign函数
\[sign(w\cdot x + b) = \begin{cases}+1&\mbox w\cdot x + b \ge 0 \\\\ -1&\mbox w\cdot x + b \lt 0 \end{cases}\]策略-损失函数最小化
损失函数是:误分点到超平面\(S(w\cdot x + b = 0)\)的距离和。
误分点\((x_i,y_i)\)到超平面S的距离为:
\[-\frac{y_i(w\cdot x_i + b)}{||w||}\]假设误分点的集合是M,则所有误分点到超平面S的距离和为:
\[-\frac{\sum_{x_i \in M}y_i(w\cdot x_i + b)}{||w||}\]由于w的值是固定的,我们就可以得到损失函数:
\[\min_{w,b}L(w,b)=-\sum_{x_i \in M}y_i(w\cdot x_i + b)\]算法-梯度下降法
感知机算法的原始形式:\(\min_{w,b}L(w,b)=-\sum_{x_i \in M}y_i(w\cdot x_i + b)\)
其中,\(\eta(0 \lt \eta \lt 1)\)为步长,也称为学习速率,一般在0到1之间取值,通过迭代,直到损失函数为0
感知机的收敛性
研究起因
支持向量机思想
找到一个最优超平面。最优超平面是指两类的分类间隔(Margin)最大,即每类距离超平面最近的样本到超平面的距离之和最大。距离这个最优超平面最近的样本被称为支持向量(Support Vector)。
策略
因为若将w和b按比例改变为λw和λb,则函数间隔变为λr,而超平面没有发生改变。说明上述的最优化目标函数不足以代表最近的点到超平面的距离
算法
上述最优化问题是带有线性约束的二次规划问题,利用拉格朗日对偶进行求解
\[\min_{w,b}\frac{1}{2}||w||^2 + \text{penality term}\]理解上述转化过程:用惩罚项来表达限制条件,从而能够转化带限制的优化问题为无限制的优化问题
\[\begin{Bmatrix} 0 & y_i(w\cdot x_i+b)\ge 1 \\\\ \infty & otherwise \end{Bmatrix}=max_{\alpha_i \ge 0}\alpha_i(y_i(w\cdot x_i + b) -1)\]为训练中的每一个数据样本,定义penality term:
\[\min_{w,b}\{\frac{1}{2}||w||^2-\sum_{i=1}^N\max_{\alpha_i \ge 0}\alpha_i(y_i(w\cdot x_i + b) -1)\}\] \[\Updownarrow\] \[\min_{w,b}\qquad L(w,b,\alpha_i) = \frac{1}{2}||w||^2-\sum_{i=1}^N\alpha_i(y_i(w\cdot x_i + b) -1)\] \[s.t.\qquad \alpha_i \ge 0\]将问题转化为:
由于是凸二次规划且满足Slater条件,故原问题满足强对偶性,能够求得\(\alpha^*=(\alpha_1^*,\alpha_2^*,\cdots,\alpha_n*)\)满足KKT条件:
\[\alpha_j^*(y_j^*(w_j^*\cdot x_j + b^*)-1)=0\]
\[w^*=\sum_{i=1}^N\alpha_i^*y_ix_i\]
\[b^*=y_j-\sum_{i=1}^N\alpha_i^*y_i(x_i\cdot x_j)\]
支持向量和分类:
\[f(x)=sign(w^*\cdot x + b^*)=\left\{ {+1 \atop -1} \right. \]
线性可分支持向量机存在的问题:
线性支持向量机思想
寻找最小的\( | w | ^2\),同时使错分的样本到超平面的距离最短 |
策略:
\[obj\qquad\min_{w,b}\frac{1}{2}||w||^2 + C\sum_{i=1}^N\xi_i\] \[s.t.\qquad y_i(w\cdot x_i + b) \ge 1-\xi_i,\] \[\xi_i \ge 0,i=1,\cdots\,N\]算法:
拉格朗日对偶化:
\[obj\qquad\max\{\sum_{i=1}^N\alpha_i-\frac{1}{2}\sum_i^N\sum_j^N\alpha_i\alpha_j y_i y_j(x_i\cdot x_j)\}\] \[s.t.\qquad 0 \le \alpha_i \le C,i=1,2,\cdots,N\] \[\sum_{i=1}^N\alpha_i y_i = 0\]推导过程同线性可分支持向量机推导过程类似
求解:
\[w^*=\sum_{i=1}^N\alpha_i^*y_ix_i\]
\[b^*=y_j(1-\xi_j)-\sum_{i=1}^N\alpha_i^*y_i(x_i\cdot x_j)\]
\[\text{where}\quad j=\max_{j’}\alpha_{j’}^*\]
这里的b解不唯一,能求出来一组值,我们一般去最大的α对应的支持向量来计算b的值
使用SVM进行分类:
\[f(x)=sign(w^*\cdot x + b^*)=\left\{ {+1 \atop -1} \right. \]
软间隔的支持向量
软间隔支持向量或者在间隔边界上,或者在间隔边界与分离超平面之间,或者在分离超平面误分的一侧
参照推导:
\[\Delta_\xi L(w^*,b^*,\xi^*,\alpha^*,\mu^*) = C - \alpha^- - \mu^- = 0\]
\[\alpha^*(y_i(w^*\cdot x_i + b^*)-1+\xi^*)=0\]
\[\mu_i^- \xi_i^- = 0\]
线性支持向量机总结:
非线性支持向量机的基本思想:
将原始数据向高位特征空间映射,使得数据在新的空间内线性可分。
核函数(Kernel function)
事实上,上面的例子不能够用一条直线(超平面)将之分开,也就是线性不可分的,但是我们可以发现:用一条二次曲线能偶将之分开(例如,椭圆)。如果用\(X_1\)和\(X_2\)表示二维平面的两个坐标的话,我们知道一条二次曲线的方程可以写成下面的形式:
\[a_1 X_1 + a_2 X_1^2 + a_3 X_2 + a_4 X_2^2 + a_5 X_1 X_2 + a_6\]我们可以将原来的二维空间转化为五维空间,其中的五个维度的坐标值分别为:\(Z_1=X_1,Z_2=X_1^2,Z_3=X_2,Z_4=X_2^2,Z_5=X_1 X_2\),那么显然上面的方程式就可以写成:
\[\sum_{i=1}^5 a_i Z_i + a_6 = 0\]那么,上述五维空间的方程,正是一个超平面。也就是说,我么做了一个映射:\(\phi:R^2 \rightarrow R^5\),将X按照上面的规则映射为Z,那么在新的数据空间中原来的数据就变得线性可分了,从而可以使用线性可分支持向量机计算超平面了。这是Kernel处理非线性问题的核心思想。
核函数将原来的分类函数:
\[f(x)=\sum_{i=1}^N\alpha_i y_i \langle x_i,x \rangle + b\]映射为:
\[f(x)=\sum_{i=1}^N \alpha_i y_i \langle \phi(x_i),\phi(x) \rangle + b\]而α可以通过对偶问题求解:
\[obj\qquad\max\{\sum_{i=1}^N\alpha_i-\frac{1}{2}\sum_i^N\sum_j^N\alpha_i\alpha_j y_i y_j \langle \phi(x_i) , \phi(x_j) \rangle\}\] \[s.t.\qquad \alpha_i \ge 0,i=1,2\cdots,N\] \[\sum_{i=1}^N\alpha_i y_i = 0\]这样一来,似乎问题就解决了,我们可以通过将向量空间中的向量全部映射到高维特征空间即可。但是,如果向量空间特征向量的维度是3,那么需要映射到19维的空间中,计算的复杂度大大增加了,如果遇到无穷的情况,根本无法计算。这个时候就使用到了”核函数”。
考虑面一个简单的例子:设两个向量\(x_1=(\eta_1,\eta_2)^T\)和\(x_1=(\xi_1,\xi_2)^T\),映射函数\(\phi(\cdot)\)是前面所说的五维空间的映射,因此映射后的内积为
\[\langle\phi(x_1),\phi(x_2)\rangle=\eta_1\xi_1 + \eta_1^2\xi_1^2 + \eta_2\xi_2 + \eta_2^2\xi_2^2 + \eta_1\eta_2\xi_1\xi_2\]同时:
\[(\langle x_1,x_2 + 1\rangle)^2=2\eta_1\xi_1 + \eta_1^2\xi_1^2 + 2\eta_2\xi_2 + \eta_2^2\xi_2^2 + 2\eta_1\eta_2\xi_1\xi_2 + 1\]实际上,上述的两个式子,只要做稍微的调整就会相等,也就是说,我们可以原来空间中的函数来进行替代高维特征空间映射函数的内积运算。
我们称这里计算两个向量在隐式映射后的内积的函数就做核函数(Kernel Function)
例如,刚才的核函数为:
\[k(x_1,x_2)=(\langle x_1,x_2\rangle+1)^2\]核函数能够简化映射空间中内积的运算。而我们SVM中要计算的地方,数据总是以内积的形式出现,那么高维空间的分类函数就可以写成:
\[f(x)=\sum_{i=1}^N \alpha_i y_i k(x_i,x) + b\]其中的α由对偶问题求得:
\[obj\qquad\max\{\sum_{i=1}^N\alpha_i-\frac{1}{2}\sum_i^N\sum_j^N\alpha_i\alpha_j y_i y_j k(x_i,x_j)\}\] \[s.t.\qquad \alpha_i \ge 0,i=1,2\cdots,N\] \[\sum_{i=1}^N\alpha_i y_i = 0\]核函数的选择
重要条件是核函数矩阵K是半正定的,这样的核函数是有效的核函数。
高斯(一种径向基(RBF)函数)核:\(K(x_i,x_j)=exp(- | x_i-x_j | ^2)/2\sigma^2\)。这个核就是将原始空间映射为无穷维空间的那个家伙。不过,如果选得很大的话,高次特征上的权重实际上衰减得非常快,所以实际上(数值上近似一下)相当于一个低维的子空间;反过来,如果选得很小,则可以将任意的数据映射为线性可分——当然,这并不一定是好事,因为随之而来的可能是非常严重的过拟合问题。不过,总的来说,通过调控参数,高斯核实际上具有相当高的灵活性,也是使用最广泛的核函数之一。 |
非线性支持向量机的流程:
序列最小最优化算法(SMO)
参考论文:《Sequential Minimal Optimization A Fast Algorithm for Training Support Vector Machines》
支持向量机总结:
决策树方法思想:
将文本的特征进行优先度排序,并将每次的特征作为判定条件(子树的根节点)进行扩展,最后生成一颗树。
常用的构造决策树的构造器:
决策树方法小结:
回归:用一条直线(线性回归)或者曲线去拟合已有的例子。
LLSF(Linear Least Square Fit) 方法
\( | \langle F,A \rangle - B | \),A是所有例子构成的矩阵,F是要求的权重矩阵,B是布尔矩阵,1表示属于该类,0表示不属于。 |
LLSF小结:
通过二类分类器处理多类问题:
单标签问题:
多标签问题:
**-
**-
聚类是一种常见的无监督学习(Unsuperivesed Learning)方法,无监督意味着没有已经标注好的数据集
文档聚类:将一系列文档按照相似性聚团成子集或者簇(cluster)的过程,簇内文档之间彼此相似;簇间文档之间相似度不大
外部准则之纯度:
\[\text{purity}(\Omega,C)=\frac{1}{N}\sum_k\max_j|\omega_k\cap c_j|\]
- \(\Omega={\omega_1,\omega_2,\cdots,\omega_K}\)是簇的集合
- \(C={c_1,c_2,\cdots,c_J}\)是类别的集合
- 对于每一个簇\(\omega_k\)找出一个类别\(c_j\),该类别包含\(\omega_k\)中的元素最多,为\(n_{ki}\)个,也就是说\(\omega_k\)的元素最多分布在\(c_j\)中
- 将所有的\(n_{ki}\)求和,然后除以所有的文档数目
外部准则之蓝迪系数(Rand Index):
$$RI=\frac{TP + TN}{TP + FP + FN + TN}
置心向量的定义:\(\vec \mu(\omega) = \frac{1}{ | \omega | }\sum_{\vec x \in \omega}\vec x\),其中\(\omega\)代表一个簇 |
K-Means聚类算法的收敛性
K-均值聚类算法的初始化
簇个数的确定
K-means++
层次凝聚式聚类(HAC)
树状图:
- 合并的历史可以从底往上生成
- 水平线上给出的是每次合并的相似度
- 我们可以在特定点截断 (比如 0.1 或 0.4) 来获得一个扁平的聚类结果
定义簇的相似度
DBSCAN
自组织映射
谱聚类
聚类的研究趋势
回归分析:回归分析是处理变量之间相关关系的一种工具,回归的结果可以用于预测或者分类
线性回归:
普通的线性回归的不足
岭回归(Ridge Regression)
- 其中θ_2表示向量θ的2范数,即向量的大小
- λ为加权系数
LASSO回归
- 其中θ_1表示向量θ的1范数,即向量的大小
- λ为加权系数
Logistic回归
基于内容的推荐
基于协同过滤的推荐方法
参考文章: