Merged #82 from SubsonBigod/master

修改公式错误,公式块($$包裹)单独成行,内嵌代码($包裹)不变
This commit is contained in:
Hongwei Sun 2018-10-31 08:15:32 +08:00 committed by GitHub
commit fb1b259cb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 119 additions and 78 deletions

View File

@ -45,7 +45,9 @@
**矩阵的范数**
定义一个矩阵$A=[-1, 2, -3; 4, -6, 6]$。
矩阵的范数定义为
$$\|A\|_p :=\sup_{x\neq 0}\frac{\|Ax\|_p}{\|x\|_p}. $$
$$
\|A\|_p :=\sup_{x\neq 0}\frac{\|Ax\|_p}{\|x\|_p}.
$$
当向量取不同范数时, 相应得到了不同的矩阵范数。
@ -78,25 +80,39 @@ $$\|A\|_p :=\sup_{x\neq 0}\frac{\|Ax\|_p}{\|x\|_p}. $$
## 1.8 特征值分解与特征向量
特征值分解可以得到特征值与特征向量,特征值表示的是这个特征到底有多重要,而特征向量表示这个特征是什么。
如果说一个向量$\vec{v}$是方阵$A$的特征向量,将一定可以表示成下面的形式:$$A\nu = \lambda \nu$$
$\lambda$为特征向量$\vec{v}$对应的特征值。特征值分解是将一个矩阵分解为如下形式: $$A=Q\sum Q^{-1}$$
如果说一个向量$\vec{v}$是方阵$A$的特征向量,将一定可以表示成下面的形式:
$$
A\nu = \lambda \nu
$$
$\lambda$为特征向量$\vec{v}$对应的特征值。特征值分解是将一个矩阵分解为如下形式:
$$
A=Q\sum Q^{-1}
$$
其中,$Q$是这个矩阵$A$的特征向量组成的矩阵,$\sum$是一个对角矩阵,每一个对角线元素就是一个特征值,里面的特征值是由大到小排列的,这些特征值所对应的特征向量就是描述这个矩阵变化方向(从主要的变化到次要的变化排列)。也就是说矩阵$A$的信息可以由其特征值和特征向量表示。
对于矩阵为高维的情况下那么这个矩阵就是高维空间下的一个线性变换。可以想象这个变换也同样有很多的变换方向我们通过特征值分解得到的前N个特征向量那么就对应了这个矩阵最主要的N个变化方向。我们利用这前N个变化方向就可以近似这个矩阵变换
(http://blog.csdn.net/jinshengtao/article/details/18448355)
## 1.9 奇异值与特征值有什么关系?
那么奇异值和特征值是怎么对应起来的呢?我们将一个矩阵$A$的转置乘以$A$,并对$AA^T$求特征值,则有下面的形式:$$(A^TA)V = \lambda V$$
这里$V$就是上面的右奇异向量,另外还有:$$\sigma_i = \sqrt{\lambda\_i}, u\_i=\frac{1}{\sigma\_i}A\mu\_i$$
那么奇异值和特征值是怎么对应起来的呢?我们将一个矩阵$A$的转置乘以$A$,并对$AA^T$求特征值,则有下面的形式:
$$
(A^TA)V = \lambda V
$$
这里$V$就是上面的右奇异向量,另外还有:
$$
\sigma_i = \sqrt{\lambda_i}, u_i=\frac{1}{\sigma_i}A\mu_i
$$
这里的$\sigma$就是奇异值,$u$就是上面说的左奇异向量。【证明那个哥们也没给】
奇异值$\sigma$跟特征值类似,在矩阵$\sum$中也是从大到小排列,而且$\sigma$的减少特别的快在很多情况下前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了。也就是说,我们也可以用前$r$$r$远小于$m、n$)个的奇异值来近似描述矩阵,即部分奇异值分解:
$$A\_{m\times n}\thickapprox U_{m \times r}\sum\_{r\times r}V\_{r \times n}^T$$
$$
A_{m\times n}\thickapprox U_{m \times r}\sum_{r\times r}V_{r \times n}^T
$$
右边的三个矩阵相乘的结果将会是一个接近于$A$的矩阵,在这儿,$r$越接近于$n$,则相乘的结果越接近于$A$。
## 1.10 机器学习为什么要使用概率?
事件的概率是衡量该时间发生的可能性的量度。虽然在一次随机试验中某个事件的发生是带有偶然性的,但那些可在相同条件下大量重复的随机试验却往往呈现出明显的数量规律。
机器学习除了处理不确定量,也需处理随机量。不确定性和随机性可能来自多个方面,使用概率论来量化不确定性。
概率论在机器学习中扮演着一个核心角色,因为机器学习算法的设计通常依赖于对数据的概率假设。
>例如在机器学习Andrew Ng的课中会有一个朴素贝叶斯假设就是条件独立的一个例子。该学习算法对内容做出假设用来分辨电子邮件是否为垃圾邮件。假设无论邮件是否为垃圾邮件单词x出现在邮件中的概率条件独立于单词y。很明显这个假设不是不失一般性的因为某些单词几乎总是同时出现。然而最终结果是这个简单的假设对结果的影响并不大且无论如何都可以让我们快速判别垃圾邮件。
## 1.11 变量与随机变量有什么区别?
@ -119,7 +135,10 @@ $$A\_{m\times n}\thickapprox U_{m \times r}\sum\_{r\times r}V\_{r \times n}^T$$
![常见概率分布](../img/ch1/prob_distribution_7.png)
## 1.13 举例理解条件概率
条件概率公式如下:$$P(A/B) = P(A\cap B) / P(B)$$
条件概率公式如下:
$$
P(A/B) = P(A\cap B) / P(B)
$$
说明:在同一个样本空间$\Omega$中的事件或者子集$A$与$B$,如果随机从$\Omega$中选出的一个元素属于$B$,那么下一个随机选择的元素属于$A$ 的概率就定义为在$B$的前提下$A$的条件概率。
![条件概率](../img/ch1/conditional_probability.jpg)
@ -138,19 +157,34 @@ $$A\_{m\times n}\thickapprox U_{m \times r}\sum\_{r\times r}V\_{r \times n}^T$$
## 1.15条件概率的链式法则
由条件概率的定义,可直接得出下面的乘法公式:
乘法公式 设$A, B$是两个事件,并且$P(A) > 0$, 则有 $$P(AB) = P(B|A)P(A)$$
推广 $$P(ABC)=P(C|AB)P(B)P(B|A)P(A)$$
一般地,用归纳法可证:若$P(A\_1A\_2...A\_n)>0$,则有$$P(A\_1A\_2...A\_n)=P(A\_n|A\_1A\_2...A\_{n-1}P(A\_{n-1}|A\_1A\_2...A\_{n-2})...P(A\_2|A\_1)P(A_1)$$
乘法公式 设$A, B$是两个事件,并且$P(A) > 0$, 则有
$$
P(AB) = P(B|A)P(A)
$$
推广
$$
P(ABC)=P(C|AB)P(B)P(B|A)P(A)
$$
一般地,用归纳法可证:若$P(A_1A_2...A_n)>0$,则有
$$
P(A_1A_2...A_n)=P(A_n|A_1A_2...A_{n-1}P(A_{n-1}|A_1A_2...A_{n-2})...P(A_2|A_1)P(A_1)
$$
任何多维随机变量联合概率分布,都可以分解成只有一个变量的条件概率相乘形式。
## 1.16 独立性和条件独立性
**独立性**
两个随机变量$x$和$y$,概率分布表示成两个因子乘积形式,一个因子只包含$x$,另一个因子只包含$y$,两个随机变量相互独立(independent)。
条件有时为不独立的事件之间带来独立,有时也会把本来独立的事件,因为此条件的存在,而失去独立性。
举例:$P(XY)=P(X)P(Y)$, 事件$X$和事件$Y$独立。此时给定$Z$$$P(X,Y|Z) \not = P(X|Z)P(Y|Z)$$
举例:$P(XY)=P(X)P(Y)$, 事件$X$和事件$Y$独立。此时给定$Z$
$$
P(X,Y|Z) \not = P(X|Z)P(Y|Z)
$$
事件独立时,联合概率等于概率的乘积。这是一个非常好的数学性质,然而不幸的是,无条件的独立是十分稀少的,因为大部分情况下,事件之间都是互相影响的。
**条件独立性**
给定$Z$的情况下,$X$和$Y$条件独立,当且仅当$$X\bot Y|Z \iff P(X,Y|Z) = P(X|Z)P(Y|Z)$$
给定$Z$的情况下,$X$和$Y$条件独立,当且仅当
$$
X\bot Y|Z \iff P(X,Y|Z) = P(X|Z)P(Y|Z)
$$
$X$和$Y$的关系依赖于$Z$,而不是直接产生。
**举例**定义如下事件:
$X$:明天下雨;
@ -163,16 +197,20 @@ $Z$事件的成立,对$X$和$Y$均有影响,然而,在$Z$事件成立的
**期望**
在概率论和统计学中,数学期望(或均值,亦简称期望)是试验中每次可能结果的概率乘以其结果的总和。它反映随机变量平均取值的大小。
线性运算: $E(ax+by+c) = aE(x)+bE(y)+c$
推广形式: $E(\sum\_{k=1}^{n}{a\_ix\_i+c}) = \sum\_{k=1}^{n}{a\_iE(x\_i)x\_i+c}$
函数期望:设$f(x)$为$x$的函数,则$f(x)$的期望
离散函数: $E(f(x))=\sum\_{k=1}^{n}{f(x\_k)P(x\_k)}$
连续函数: $E(f(x))=\int_{-\infty}^{+\infty}{f(x)p(x)dx}$
注意:函数的期望不等于期望的函数,即$E(f(x))=f(E(x))$
推广形式: $E(\sum_{k=1}^{n}{a_ix_i+c}) = \sum_{k=1}^{n}{a_iE(x_i)x_i+c}$
函数期望:设$f(x)$为$x$的函数,则$f(x)$的期望为
- 离散函数: $E(f(x))=\sum_{k=1}^{n}{f(x_k)P(x_k)}$
- 连续函数: $E(f(x))=\int_{-\infty}^{+\infty}{f(x)p(x)dx}$
注意:函数的期望不等于期望的函数,即$E(f(x))=f(E(x))$
一般情况下,乘积的期望不等于期望的乘积。
如果$X$和$Y$相互独立,则$E(xy)=E(x)E(y)$。
如果$X$和$Y$相互独立,则$E(xy)=E(x)E(y)$。
**方差**
概率论中方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。
方差是一种特殊的期望。定义为: $$Var(x) = E((x-E(x))^2)$$
方差是一种特殊的期望。定义为:
$$
Var(x) = E((x-E(x))^2)
$$
方差性质:
1$Var(x) = E(x^2) -E(x)^2$
2 常数的方差为0;
@ -180,24 +218,27 @@ $Z$事件的成立,对$X$和$Y$均有影响,然而,在$Z$事件成立的
4如果$X$和$Y$相互独立, $Var(ax+by)=Var(x)+Var(y)$
**协方差**
协方差是衡量两个变量线性相关性强度及变量尺度。
两个随机变量的协方差定义为:$$Cov(x,y)=E((x-E(x))(y-E(y)))$$
两个随机变量的协方差定义为:
$$
Cov(x,y)=E((x-E(x))(y-E(y)))
$$
方差是一种特殊的协方差。当$X=Y$时,$Cov(x,y)=Var(x)=Var(y)$。
协方差性质:
1) 独立变量的协方差为0。
2) 协方差计算公式:$$Cov(\sum\_{i=1}^{m}{a\_ix\_i}, \sum\_{j=1}^{m}{b\_jy\_j}) = \sum\_{i=1}^{m} \sum\_{j=1}^{m}{a\_ib\_jCov(x\_iy\_i)}$$ 3) 特殊情况: $$Cov(a+bx, c+dy) = bdCov(x, y)$$
2) 协方差计算公式:
$$
Cov(\sum_{i=1}^{m}{a_ix_i}, \sum_{j=1}^{m}{b_jy_j}) = \sum_{i=1}^{m} \sum_{j=1}^{m}{a_ib_jCov(x_iy_i)}
$$
3) 特殊情况:
$$
Cov(a+bx, c+dy) = bdCov(x, y)
$$
**相关系数**
相关系数是研究变量之间线性相关程度的量。
两个随机变量的相关系数定义为: $$Corr(x,y) = \frac{Cov(x,y)}{\sqrt{Var(x)Var(y)}}$$
两个随机变量的相关系数定义为:
$$
Corr(x,y) = \frac{Cov(x,y)}{\sqrt{Var(x)Var(y)}}
$$
性质:
1) 有界性。相关系数的取值范围是 ,可以看成无量纲的协方差。
2) 值越接近1说明两个变量正相关性线性越强。越接近-1说明负相关性越强当为0时表示两个变量没有相关性。

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,12 +106,12 @@
上图是这四个术语的混淆矩阵。
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),正确率是被分对的样本数在所有样本数中的占比,通常来说,正确率越高,分类器越好。
正确率是我们最常见的评价指标accuracy = (TP+TN)/(P+N),正确率是被分对的样本数在所有样本数中的占比,通常来说,正确率越高,分类器越好。
2) 错误率error rate)
错误率则与正确率相反描述被分类器错分的比例error rate = (FP+FN)/(P+N)对某一个实例来说分对与分错是互斥事件所以accuracy =1 - error rate。
3) 灵敏度sensitive
@ -119,7 +119,7 @@ sensitive = TP/P表示的是所有正例中被分对的比例衡量了分
4) 特效度specificity)
specificity = TN/N表示的是所有负例中被分对的比例衡量了分类器对负例的识别能力。
5) 精度precision
精度是精确性的度量表示被分为正例的示例中实际为正例的比例precision=TP/TP+FP
精度是精确性的度量表示被分为正例的示例中实际为正例的比例precision=TP/(TP+FP)
6) 召回率recall
召回率是覆盖面的度量度量有多个正例被分为正例recall=TP/(TP+FN)=TP/P=sensitive可以看到召回率与灵敏度是一样的。
7) 其他评价指标
@ -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
由此可得:
@ -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)