修改表格与图片错误,拼写错误、乘号转义、中英文下括号混用

This commit is contained in:
SubsonBigod 2018-10-30 18:33:26 +08:00
parent 28e1f38c20
commit 93c676bfbb
1 changed files with 44 additions and 44 deletions

View File

@ -8,9 +8,9 @@
|:-:|:-:|:-:|
|![](../img/ch2/2.1/4.png)|![](../img/ch2/2.1/5.jpg)|![](../img/ch2/2.1/6.jpg)|
|聚类算法|关联规则学习|人工神经网络
|聚类算法|关联规则学习|人工神经网络|
|:-:|:-:|:-:|
|![](../img/ch2/2.1/7.png)|![](../img/ch2/2.1/8.jpg)|![](../img/ch2/2.1/9.jpg)|
|![](../img/ch2/2.1/7.png)|![](../img/ch2/2.1/8.jpg)|![](../img/ch2/2.1/9.png)|
|深度学习|降低维度算法|集成算法|
|:-:|:-:|:-:|
@ -95,7 +95,7 @@
## 2.9 分类算法的评估方法?
1. **几个常用的术语**
这里首先介绍几个*常见*的 模型评价术语现在假设我们的分类目标只有两类计为正例positive和负例negtive分别是
这里首先介绍几个*常见*的 模型评价术语现在假设我们的分类目标只有两类计为正例positive和负例negative分别是
1) True positives(TP): 被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数(样本数);
2) False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;
3) False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;
@ -106,29 +106,29 @@
上图是这四个术语的混淆矩阵。
1P=TP+FN表示实际为正例的样本个数。
2True、False描述的是分类器是否判断正确。
3Positive、Negative是分类器的分类结果如果正例计为1、负例计为-1即positive=1、negtive=-1。用1表示True-1表示False那么实际的类标=TF*PNTF为true或falsePN为positive或negtive。
4例如True positives(TP)的实际类标=1*1=1为正例False positives(FP)的实际类标=-1*1=-1为负例False negatives(FN)的实际类标=-1*-1=1为正例True negatives(TN)的实际类标=1*-1=-1为负例。
3Positive、Negative是分类器的分类结果如果正例计为1、负例计为-1即positive=1、negative=-1。用1表示True-1表示False那么实际的类标=TF\*PNTF为true或falsePN为positive或negative。
4例如True positives(TP)的实际类标=1\*1=1为正例False positives(FP)的实际类标=(-1)\*1=-1为负例False negatives(FN)的实际类标=(-1)\*(-1)=1为正例True negatives(TN)的实际类标=1\*(-1)=-1为负例。
2. **评价指标**
1) 正确率accuracy
正确率是我们最常见的评价指标accuracy = TP+TN/(P+N),正确率是被分对的样本数在所有样本数中的占比,通常来说,正确率越高,分类器越好。
2) 错误率error rate)
1) 正确率accuracy
正确率是我们最常见的评价指标accuracy = (TP+TN)/(P+N),正确率是被分对的样本数在所有样本数中的占比,通常来说,正确率越高,分类器越好。
2) 错误率error rate)
错误率则与正确率相反描述被分类器错分的比例error rate = (FP+FN)/(P+N)对某一个实例来说分对与分错是互斥事件所以accuracy =1 - error rate。
3) 灵敏度sensitive
3) 灵敏度sensitive
sensitive = TP/P表示的是所有正例中被分对的比例衡量了分类器对正例的识别能力。
4) 特效度specificity)
4) 特效度specificity)
specificity = TN/N表示的是所有负例中被分对的比例衡量了分类器对负例的识别能力。
5) 精度precision
精度是精确性的度量表示被分为正例的示例中实际为正例的比例precision=TP/TP+FP
6) 召回率recall
5) 精度precision
精度是精确性的度量表示被分为正例的示例中实际为正例的比例precision=TP/(TP+FP)
6) 召回率recall
召回率是覆盖面的度量度量有多个正例被分为正例recall=TP/(TP+FN)=TP/P=sensitive可以看到召回率与灵敏度是一样的。
7) 其他评价指标
计算速度:分类器训练和预测需要的时间;
鲁棒性:处理缺失值和异常值的能力;
可扩展性:处理大数据集的能力;
可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。
8) 查准率和查全率反映了分类器分类性能的两个方面。如果综合考虑查准率与查全率可以得到新的评价指标F1测试值也称为综合分类率
![](../img/ch2/2.9/2.jpg)
7) 其他评价指标
计算速度:分类器训练和预测需要的时间;
鲁棒性:处理缺失值和异常值的能力;
可扩展性:处理大数据集的能力;
可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。
8) 查准率和查全率反映了分类器分类性能的两个方面。如果综合考虑查准率与查全率可以得到新的评价指标F1测试值也称为综合分类率
![](../img/ch2/2.9/2.jpg)
为了综合多个类别的分类情况评测系统整体性能经常采用的还有微平均F1micro-averaging和宏平均F1macro-averaging 两种指标。宏平均F1与微平均F1是以两种不同的平均方式求的全局的F1指标。其中宏平均F1的计算方法先对每个类别单独计算F1值再取这些F1值的算术平均值作为全局指标。而微平均F1的计算方法是先累加计算各个类别的a、b、c、d的值再由这些值求出F1值。由两种平均F1的计算方式不难看出宏平均F1平等对待每一个类别所以它的值主要受到稀有类别的影响而微平均F1平等考虑文档集中的每一个文档所以它的值受到常见类别的影响比较大。
**ROC曲线和PR曲线**
@ -249,7 +249,7 @@ $$
当参数为2个时代价函数是三维图像。
![](../img/ch2/2.16/2.png)
## 2.18 为什么代价函数要非负?
目标函数存在一个下界,在优化过程当中,如果优化算法能够使目标函数不断减小,根据单调有界准则,这个优化算法就能证明是收敛有效的。
只要设计的目标函数有下界,基本上都可以,代价函数非负更为方便。
@ -665,7 +665,7 @@ PCA可解决训练数据中存在数据特征过多或特征累赘的问题。
假设数据集是m个n维$(x^{(1)}, x^{(2)}, \cdots, x^{(m)})$。如果n=2,需要降维到$n'=1$,现在想找到某一维度方向代表这两个维度的数据。下图有$u_1, u_2$两个向量方向,但是哪个向量才是我们所想要的,可以更好代表原始数据集的呢?
![](../img/ch2/2.34/1.png)
从图可看出,$u_1$比$u_2$好,为什么呢?有以下两个主要评价指标:
1. 样本点到这个直线的距离足够近。
2. 样本点在这个直线上的投影能尽可能的分开。
@ -681,7 +681,7 @@ PCA可解决训练数据中存在数据特征过多或特征累赘的问题。
考虑到整个样本集样本点到这个超平面的距离足够近目标变为最小化TODO。对此式进行推理可得
TODO
在推导过程中分别用到了TODO矩阵转置公式TODOTODOTODO以及矩阵的迹最后两步是将代数和转为矩阵形式。
由于TODO的每一个向量TODO是标准正交基TODO是数据集的协方差矩阵TODO是一个常量。最小化TODO又可等价于
@ -806,7 +806,7 @@ TODO其映射为TODO
模型过拟合:在训练集上具有较低的误差,在测试集上具有较高的误差,此时模型的方差较大。
模型正常:在训练集以及测试集上,同时具有相对较低的偏差以及方差。
2. **横轴为模型复杂程度,纵轴为误差**
![](../img/ch2/2.40.3/2.png)
@ -925,13 +925,13 @@ ROC曲线所覆盖的面积称为AUCArea Under Curve可以更直观的
### 2.47.10 如何画ROC曲线
http://blog.csdn.net/zdy0_2004/article/details/44948511
下图是一个示例图中共有20个测试样本“Class”一栏表示每个测试样本真正的标签p表示正样本n表示负样本“Score”表示每个测试样本属于正样本的概率。
步骤:
1、假设已经得出一系列样本被划分为正类的概率按照大小排序。
2、从高到低依次将“Score”值作为阈值threshold当测试样本属于正样本的概率大于或等于这个threshold时我们认为它为正样本否则为负样本。 举例来说对于图中的第4个样本其“Score”值为0.6那么样本1234都被认为是正样本因为它们的“Score”值都大于等于0.6,而其他样本则都认为是负样本。
3、每次选取一个不同的threshold得到一组FPR和TPR即ROC曲线上的一点。以此共得到20组FPR和TPR的值。其中FPR和TPR简单理解如下
4、根据3中的每个坐标点点画图。
![](../img/ch2/2.40.11/1.jpg)
### 2.47.11 如何计算TPRFPR
@ -952,7 +952,7 @@ y_true = [0, 0, 1, 1]
y_pred = [1, 1, 1, 1]
正例与反例信息如下:
真实值 预测值
正例 反例
正例 反例
正例 TP=2 FN=0
反例 FP=2 TN=0
由此可得:
@ -965,7 +965,7 @@ y_true = [0, 0, 1, 1]
y_pred = [0, 1, 1, 1]
正例与反例信息如下:
真实值 预测值
正例 反例
正例 反例
正例 TP=2 FN=0
反例 FP=1 TN=1
由此可得:
@ -978,7 +978,7 @@ y_true = [0, 0, 1, 1]
y_pred = [0, 1, 0, 1]
正例与反例信息如下:
真实值 预测值
正例 反例
正例 反例
正例 TP=1 FN=1
反例 FP=1 TN=1
由此可得:
@ -991,7 +991,7 @@ y_true = [0, 0, 1, 1]
y_pred = [0, 0, 0, 1]
正例与反例信息如下:
真实值 预测值
正例 反例
正例 反例
正例 TP=1 FN=1
反例 FP=0 TN=2
由此可得:
@ -1013,7 +1013,7 @@ e.对面积微元进行累加得到AUC。
### 2.47.14 直观理解AUC
http://blog.csdn.net/cherrylvlei/article/details/52958720
AUC是ROC右下方的曲线面积。下图展现了三种AUC的值
![](../img/ch2/2.40.15/1.png)
AUC是衡量二分类模型优劣的一种评价指标表示正例排在负例前面的概率。其他评价指标有精确度、准确率、召回率而AUC比这三者更为常用。
@ -1376,14 +1376,14 @@ http://blog.csdn.net/Love_wanling/article/details/69390047
本文将遇到的核函数进行收集整理,分享给大家。
http://blog.csdn.net/wsj998689aa/article/details/47027365
1.Linear Kernel
线性核是最简单的核函数,核函数的数学公式如下:
$k(x,y)=xy$
如果我们将线性核函数应用在KPCA中我们会发现推导之后和原始PCA算法一模一样很多童鞋借此说“kernel is shit这是不对的这只是线性核函数偶尔会出现等价的形式罢了。
2.Polynomial Kernel
多项式核实一种非标准核函数,它非常适合于正交归一化后的数据,其具体形式如下:
@ -1391,7 +1391,7 @@ $k(x,y)=xy$
$k(x,y)=(ax^{t}y+c)^{d}$
这个核函数是比较好用的,就是参数比较多,但是还算稳定。
3.Gaussian Kernel
这里说一种经典的鲁棒径向基核,即高斯核函数,鲁棒径向基核对于数据中的噪音有着较好的抗干扰能力,其参数决定了函数作用范围,超过了这个范围,数据的作用就“基本消失”。高斯核函数是这一族核函数的优秀代表,也是必须尝试的核函数,其数学形式如下:
@ -1578,7 +1578,7 @@ $V(d)=\frac{\pi ^{\frac{d}{2}}}{\Gamma (\frac{d}{2}+1)}0.5^{d}$
所以我们如何避免“维数灾难”图1显示了分类器的性能随着特征个数的变化不断增加过了某一个值后性能不升反降。这里的某一个值到底是多少呢目前还没有方法来确定分类问题中的这个阈值是多少这依赖于训练样本的数量决策边界的复杂性以及分类器的类型。理论上如果训练样本的数量无限大那么就不会存在“维数灾难”我们可以采用任意多的特征来训练分类器。事实上训练样本的数量是有限的所以不应该采用过多的特征。此外那些需要精确的非线性决策边界的分类器比如neural networkknndecision trees等的泛化能力往往并不是很好更容易发生过拟合问题。因此在设计这些分类器时应当慎重考虑特征的数量。相反那些泛化能力较好的分类器比如naive Bayesianlinear classifier等可以适当增加特征的数量。
如果给定了N个特征我们该如何从中选出M个最优的特征最简单粗暴的方法是尝试所有特征的组合从中挑出M个最优的特征。事实上这是非常花时间的或者说不可行的。其实已经有许多特征选择算法(feature selection algorithms)来帮助我们确定特征的数量以及选择特征。此外,还有许多特征抽取方法(feature extraction methods)比如PCA等。交叉验证(cross-validation)也常常被用于检测与避免过拟合问题。
参考资料:
[1] Vincent Spruyt. The Curse of Dimensionality in classification. Computer vision for dummies. 2014. [Link]
@ -1635,12 +1635,12 @@ http://www.cnblogs.com/William_Fire/archive/2013/02/09/2909499.html
1 聚类算法的分类
目前,有大量的聚类算法[3]。而对于具体应用,聚类算法的选择取决于数据的类型、聚类的目的。如果聚类分析被用作描述或探查的工具,可以对同样的数据尝试多种算法,以发现数据可能揭示的结果。
主要的聚类算法可以划分为如下几类:划分方法、层次方法、基于密度的方法、基于网格的方法以及基于模型的方法[4-6]。
每一类中都存在着得到广泛应用的算法例如划分方法中的k-means[7]聚类算法、层次方法中的凝聚型层次聚类算法[8]、基于模型方法中的神经网络[9]聚类算法等。
目前,聚类问题的研究不仅仅局限于上述的硬聚类,即每一个数据只能被归为一类,模糊聚类[10]也是聚类分析中研究较为广泛的一个分支。模糊聚类通过隶 属函数来确定每个数据隶属于各个簇的程度而不是将一个数据对象硬性地归类到某一簇中。目前已有很多关于模糊聚类的算法被提出如著名的FCM算法等。
本文主要对k-means聚类算法、凝聚型层次聚类算法、神经网络聚类算法之SOM,以及模糊聚类的FCM算法通过通用测试数据集进行聚类效果的比较和分析。
目前,聚类问题的研究不仅仅局限于上述的硬聚类,即每一个数据只能被归为一类,模糊聚类[10]也是聚类分析中研究较为广泛的一个分支。模糊聚类通过隶 属函数来确定每个数据隶属于各个簇的程度而不是将一个数据对象硬性地归类到某一簇中。目前已有很多关于模糊聚类的算法被提出如著名的FCM算法等。
本文主要对k-means聚类算法、凝聚型层次聚类算法、神经网络聚类算法之SOM,以及模糊聚类的FCM算法通过通用测试数据集进行聚类效果的比较和分析。
2 四种常用聚类算法研究
@ -1652,9 +1652,9 @@ http://www.cnblogs.com/William_Fire/archive/2013/02/09/2909499.html
  $E=\sum_{i=1}^{k}\sum_{p\subset C}|p-m_{i}|^{2}$
 这里E是数据库中所有对象的平方误差的总和p是空间中的点mi是簇Ci的平均值[9]。该目标函数使生成的簇尽可能紧凑独立,使用的距离度量是欧几里得距离,当然也可以用其他距离度量。k-means聚类算法的算法流程如下
输入包含n个对象的数据库和簇的数目k
输出k个簇使平方误差准则最小。
步骤:
输入包含n个对象的数据库和簇的数目k
输出k个簇使平方误差准则最小。
步骤:
  (1) 任意选择k个对象作为初始的簇中心
  (2) repeat
  (3) 根据簇中对象的平均值,将每个对象(重新)赋予最类似的簇;
@ -1662,7 +1662,7 @@ http://www.cnblogs.com/William_Fire/archive/2013/02/09/2909499.html
  (5) until不再发生变化。
2.2 层次聚类算法
根据层次分解的顺序是自底向上的还是自上向下的,层次聚类算法分为凝聚的层次聚类算法和分裂的层次聚类算法。
根据层次分解的顺序是自底向上的还是自上向下的,层次聚类算法分为凝聚的层次聚类算法和分裂的层次聚类算法。
 凝聚型层次聚类的策略是先将每个对象作为一个簇,然后合并这些原子簇为越来越大的簇,直到所有对象都在一个簇中,或者某个终结条件被满足。绝大多数层次聚类属于凝聚型层次聚类,它们只是在簇间相似度的定义上有所不同。四种广泛采用的簇间距离度量方法如下:
![](../img/ch2/2-20.gif)
@ -1703,7 +1703,7 @@ FCM算法是一种以隶属度来确定每个数据点属于某个聚类程度
 (4) 根据迭代结果,由最后的隶属矩阵确定数据所属的类,显示最后的聚类结果。
3 四种聚类算法试验
3.1 试验数据
@ -1764,7 +1764,7 @@ $avg=\frac{1}{k}\sum_{i=1}^{k}\frac{m_{i}}{n_{i}}$