机器学习--机器学习的基本方法

文章目录

        • 1.1统计分析
          • 1.1.1 统计基础
          • 1.1.2 常见的概率分布
          • 2.1.3参数估计
          • 1.1.4 假设与检验
          • 1.1.5线性回归
          • 1.1.6逻辑回归
          • 1.1.7判别分析
          • 1.1.8 非线性判决

1.1统计分析

统计学是研究如何收集资料,整理资料和进行量化分析,判断的一门学科。在科学计算,金融等领域有着重要的地位,统计分析是机器学习的重要方法。其相关概念有:

总体:根据一定的目的确定的所要研究的全体集合
样本:总体随机抽取的若干个个体构成的集合
推断:以样本为基础,对总体的某些特征做出的判断,预测和估计
推断可靠性:对推断的结果概率上的确认,是决策的重要依据

统计分析包括:描述性统计 和推断性统计。
描述性统计:通过对样本整理,分析,就数据的分布获取有意义的信息,做出推断
推断性统计:分为参数估计和假设检验。参数估计:样本整体中某个数值的估计,假设检验,通过对推断验证,选择合适的方案。

1.1.1 统计基础
  1. 输入空间,特征空间和输出空间
    输入和输出所有的可能的取值的集合分别叫做输入空间和输出空间,每个具体的输入是一个实例,通常用特征向量表示,所有特征向量构成的空间叫做特征空间
  2. 联合概率分布
    联合概率表示两个及以上变量同时发生的概率,联合概率分布各个变量的发生概率之间存在的规律。
  3. 假设空间
    假设空间是输入空间到输出空间的映射构成的集合。
  4. 均值,标准差,方差,协方差
    均值:
    x ˉ = ∑ i = 1 n x i n \bar{x}=\frac{\sum_{i=1}^n {x_i}}{n} \quad xˉ=ni=1nxi
    标准差:
    s = ∑ i = 1 n ( x i − x ˉ ) 2 n − 1 s=\sqrt{\frac{\sum_{i=1}^n{( {x_i - \bar x})^2}}{n-1} \quad } s=n1i=1n(xixˉ)2
    方差:
    s 2 = ∑ i = 1 n ( x i − x ˉ ) 2 n − 1 s^2=\frac{\sum_{i=1}^n{( {x_i - \bar x})^2}}{n-1} \quad s2=n1i=1n(xixˉ)2

此外,在机器学习中的方差是估计值与期望值的统计方差计算方法如下:其中 E [ β ^ ] E[\hatβ] E[β^]是期望值, β ^ \hatβ β^是模型的估计值,期望值 E ( x ) = ∑ i = 1 n x i ∗ p i E(x)= \sum_{i=1}^n{x_i*p_i} E(x)=i=1nxipi 由xi和其发生的概率的总和表示,反应的是随机变量的均值。用估计值和期望值的差的 平方表示模型的预测的稳定性。
v a r i a n c e = E [ ( β ^ − E [ β ^ ] ) 2 ] variance= E[(\hatβ-E[\hatβ])^2] \quad variance=E[(β^E[β^])2]

协方差:用于度量两个随机变量的关系。
c o v ( x , y ) = ∑ i = 1 n ( x i − x ˉ ) ( y i − y ˉ ) n − 1 cov(x,y)=\frac{\sum_{i=1}^n{( {x_i - \bar x})(y_i-\bar y)}}{n-1} \quad covx,y=n1i=1n(xixˉ)(yiyˉ)

协方差的结果的意义:结果为正值表示正相关,负值表示负相关,结果为零,表示相互独立。协方差只能处理二维数据,如果维度增加了,就要计算他们两两之间的协方差,这时候就需要协方差矩阵,

  1. 超参数
    超参数:机器学习算法的调优参数,用于估计模型参数的过程,有用户直接指定,用启发式方法来设置,并且能够根据给定的预测问题调整,
  2. 损失函数和风险函数
    损失函数:模型的计算结果和样本实际目标结果的非负实值函数,用于解释模型的在每个样本的误差,损失函数的值越小。

0-1损失函数是最简单的损失函数,如果实际值和预测值不相等则认为预测失败,反之,预测成功,损失值为零,不考虑误差。
平方损失函数: L ( y , f ( x ) ) = [ y − f ( x ) ] 2 L(y,f(x))= [y-f(x)]^2 \quad L(y,f(x))=[yf(x)]2
平方损失函数计算的是实际目标值y与预测值f(x)之间的差的平方,其特点是非负,将差值放大。
绝对损失函数 L ( y , f ( x ) ) = ∣ y − f ( x ) ∣ L(y,f(x))= |y-f(x)| \quad L(y,f(x))=yf(x)
对数损失函数 L ( y , f ( x ) ) = − l o g 2 p ( y ∣ x ) L(y,f(x))= -log_2 p(y|x) \quad L(y,f(x))=log2pyx

  1. 训练误差
    训练误差 L ( y , f ( x ) ) = ∑ i = 1 n L ( y , f ( x ) ) n L(y,f(x))=\frac{\sum_{i=1}^nL(y,f(x))}{n} \quad L(y,f(x))=ni=1nL(y,f(x))

损失函数可以认为是模型的经验风险,是模型关于训练样本的平均损失。通常情况下,可以根据样本的损失函数来确定,根据大数定律,当样本容量趋于无穷时,经验风险趋向于期望风险,假设样本量足够多,通过最小化经验风险即可,但是样本很少的时候,经验信息不足,通过最小化经验风险学习效果未必好,当模型的复杂度足够大的时候,训练误差会逐渐减少趋于零,但是测试误差会先减小,达到最小值后由增大,产生过拟合效果,
**结构风险最小化针对经验风险最小化在小样本量时候容易产生过拟合问题进行改进,增加了表示模型复杂度的正则化项,对模型复杂度进行改进,对模型复杂度进行限制。

  1. 正则化与交叉验证
    正则化和交叉验证都是为了避免过拟合。正则化是为了结构风险最小化。正则化是模型复杂度的单调递增函数,模型越复杂,正则化值就越大。正则化可以表示为模型参数向量的范数,如何增加正则化项,增加正则化项的任务就是减少wi的个数,使模型参数简化。

(1)L0正则化
L0正则化是通过限制向量中非零的元素的个数实现模型的优化,用L0来正则化一个参数矩阵w,目标是使其更加的稀疏,通过L0来正则化就是寻找最稀疏的特征项。但L0的最小化问题在实际应用中是会出现NP难题(NP-Hard)。因此很多情况下,L0优化问题会用L1、L2代替。
(2)L1正则化
通过对向量中各个元素绝对值之和进行限制,任何规则化算子,如果在wi=0的地方不可微,并且可以分解为多项式的形式,那么这个规则化算子就可以实现稀疏。可以将结构化风险中的模型复杂度表示为 L = α ∑ i = 1 m ∣ w i ∣ L=α\sum_{i=1}^m{|w_i|} L=αi=1mwi其中α表示正则化系数,m是模型的阶次,i表示数据的维度。
正则化前面的系数α,可以控制L图形的大小,α越大,L的图形就越小;而α越小,L的图形越大。同样地,损失函数的参数越多,图中的圆圈就越大。可以看到α起到平衡两者的作用,所以α也称为学习率。
(3)L2正则化
L2正则化是指向量各元素求平方和然后求平方根,用模最小化来确保w的每个元素都很小,都接近于0,但与L1范数不同,它不会等于0,而是接近于0。L2正则化不具有稀疏性,但是,L2正则化通过将目标函数变为λ强凸函数,可以有效地加快梯度下降的收敛速度。
在算法调优时需要注意选择合适的正则化策略。L2准确度高,但是训练时间长;L1正则化可以做一定的特征选择,适合大量数据,在样本不均匀时可以调整损失函数中的权重。

参数小表示抗扰动能力强。特别是特征数比样本数量多时,如果不加入L2正则化,会使模型的抗扰能力变差。而一旦加入正则化罚项之后,随着不断迭代,损失函数中的参数矩阵会不断减小。

在交叉检验方面,一般将数据集随机切分为训练集、验证集和测试集三部分,其中训练集用来训练模型,验证集用于训练过程中模型的验证和选择,而测试集用于对最终训练完成的模型进行评估。在实际应用中,数据往往并不充足,此时可以采用交叉验证的方法,将训练集切分成很多份,然后进行组合,以扩大可用训练集的数量。按照样本切分和组合方式,交叉验证分为以下几种。

① HoldOut检验:
将原始的数据集合随机分成两个集合A和B,A作为训练集,B作为测试集。先使用训练集训练模型,然后利用测试集验证模型的效果,记录最后的分类准确率作为该模型的性能指标,其准确性可以用平均绝对误差(MAE)、平均绝对百分比误差(MAPE)等统计指标来衡量。这种方法的好处是简单,只需要把原始数据分成两个部分。但是严格意义上,Hold-Out检验并不算是交叉检验。

② 简单交叉验证
首先,随机地将数据集分成两个部分,分别用作训练和测试,然后用训练集在各种条件下训练模型,得到不同的模型,在测试集上评价各个模型的测试误差,选出测试误差最小的模型。

③ k折交叉验证:
将数据切分为k个互不相交的大小相同数据集,利用k-1个子集训练,用剩下一个子集测试,重复k次,选出平均测试误差最小的模型。显然,k取值越大,统计偏误就越小,但是需要的计算量越大。一些实验表明,当k取10时,在计算代价和性能之间能达到好的平衡。

④ 留一交叉验证。
假设样本数据集中有N个样本。将其中一个样本单独作为测试集,其余N-1个样本作为训练集,这样得到了N个模型,用这N个模型的分类准确率的平均数作为此分类器的性能指标。留一交叉验证的优点是每一个模型都是用几乎所有的样本来训练模型,并且评估的结果比较可靠。它的缺点是计算成本高,特别是当N非常大时,计算耗时。

1.1.2 常见的概率分布

常见的概率分布有连续分布和离散分布两类,其中连续分布包括均匀分布、正态分布、t-分布、卡方分布(χ2-distribution)和F-分布等,离散分布包括0-1分布、二项分布、泊松分布等。

  • 均匀分布是指概率的分布是等距的,分为连续型和离散型两种,前者可以认为是一条等距点构成的曲线,后者是独立的一个个点。
  • 正态分布即高斯分布,是自然界最常见的一种概率分布,是具有两个参数μ和σ2的连续型随机变量的分布,参数μ是遵从正态分布的随机变量的均值,参数σ2是此随机变量的方差,所以正态分布记作N(μ,σ2)。它具有以下特征。

① 集中性:正态曲线的高峰位于正中央,即均值所在的位置。
② 对称性:正态曲线以均值为中心,左右对称,曲线两端不与横轴相交。
③ 均匀变动性:正态曲线由均值所在处开始,分别向左右两侧逐渐均匀下降。
④ 均值μ决定正态曲线的中心位置,标准差σ决定正态曲线的陡峭程度。σ越小,曲线越陡峭;σ越大,曲线越扁平。

  • t分布即学生t-分布(Student’s t-distribution),用于根据小样本来估计呈正态分布且方差未知的总体的均值。它的分布曲线形态与自由度df大小有关,自由度df越小,t分布曲线越平坦,曲线中间越低,曲线双侧尾部翘得越高;而自由度df越大,t分布曲线越接近正态分布曲线,当自由度df无穷大时,t分布曲线为标准正态分布曲线。
  • 卡方分布(chi-square distribution,χ2-distribution)是指若有k个独立的标准正态分布变量,则称其平方和服从自由度为k的卡方分布,它是一种特殊的伽马分布,在假设检验和置信区间的计算中应用广泛。由卡方分布可延伸出皮尔森卡方检测,常用于以下情况。

① 样本集的某一属性分布与整体分布之间的拟合程度,例如某校区中男女比是否符合此学校整体学生的男女比例。
② 两个随机变量独立性验证,例如人的肥胖与心脏病的关联性。

  • F-分布(F-distribution)是一种连续概率分布,但它是一种非对称分布,有两个自由度,且位置不可互换,被广泛应用于似然比率检验。
  • 二项分布(Binomial distribution)是n个独立的伯努利(是或非)试验中成功的次数的离散概率分布。实际上,当n=1时,二项分布就是0-1分布,它是统计变量中只有性质不同的两项群体的概率分布。所谓两项群体是按两种不同性质(如硬币的正面和反面)划分的统计变量,是二项试验的结果,两项分布也是两个对立事件的概率分布。它的前提条件是事件独立,单次试验为相互对立的2个结果。
  • 0-1分布是n为1的二项分布,指取值范围是0或者1的离散值,只先进行一次事件试验,该事件发生的概率为p,不发生的概率1-p。
  • 泊松分布(Poisson distribution)适合于描述单位时间内随机事件发生的次数的概率分布,例如服务器在一定时间内收到请求的次数、银行柜台接待的客户数、汽车站台的候客人数、机器出现的故障数、自然灾害发生的次数等。
2.1.3参数估计

参数估计是用样本统计量去估计总体的参数,即根据样本数据选择统计量去推断总体的分布或数字特征。目的是希望用较少的样本去描述数据的总体分布,前提是要了解样本总体分布(如正态分布),这样就只需要估计其中参数的值。如果无法确认总体分布,那就要采用非参数估计的方法。

  • 点估计是用一个样本点的估计量作为某一参数的估计量。
  • 区间估计是在点估计的基础上,给出总体估计一个区间,该区间由样本统计量加减估计误差而得到,区间估计就是样本统计量和总体参数的接近程度的一个概率度量,这个区间叫做置信区间。
  • 参数估计的目标是获取一个估计函数,向估计函数输入测量数据,输出相应参数的估计。通常希望得到的估计函数是最优的,即所有的信息都被提取出来了,最大化代表了整体数据的特征。一般来说,求解估计函数需要三步:
    ① 确定系统的模型,建模过程中不确定性和噪声也会混进来。
    ② 确定估计器及其限制条件。
    ③ 验证是否为最优估计器。
    所谓的估计器可以理解为损失函数(cost function),上述过程不断迭代,直到找到最优估计器,此时的模型就具有最优的置信度。

最大似然估计就是找参数θ的估计值,使事件发生的可能性最大也就是使p(X|θ)最大,其中 p ( X ∣ θ ) = ∏ i = 1 n p ( x i ∣ θ ) p(X|θ)=\prod_{i=1}^n{p(x_i|\theta)} p(Xθ)=i=1np(xiθ)
但是由于p(xi)一般都比较小,n比较大,所以容易造成浮点预算下溢,所以要最大化相应的对数形式,将公式转化为:
θ M L ∗ = a r g m a x { ∑ i = 1 n l o g 2 p ( x i ∣ θ ) } \theta_{ML}^*=arg max{\lbrace\sum_{i=1}^nlog_2{p(x_i|\theta)}}\rbrace θML=argmax{i=1nlog2p(xiθ)}
θ \theta θ求导数,然后令导数为零,求出 θ M L ∗ \theta_{ML}^* θML。最大似然估计属于点估计,所以只能用于单个参数的估计。由于最大似然估计是根据样本子集对总体分布情况进行估计,在样本子集数据量较少时结果并不准确。

贝叶斯估计已经知道一些样本,并且满足某种分布,需要估计的这种分布的参数或者是新数据出现的概率。使用贝叶斯公式,可以把关于θ的先验知识以及观察数据结合起来,用以确定θ的后验概率p(θ|X):
p ( θ ∣ X ) = p ( X ∣ θ ) p ( θ ) Z x p(θ|X)=\frac{p(X|θ)p(\theta)}{Z_x} p(θX)=Zxp(Xθ)p(θ)
其中 Z x = ∫ p ( X ∣ θ ) p ( θ )   d θ Z_x= \int {p(X|θ)p(\theta)} \,{\rm d}\theta Zx=p(Xθ)p(θ)dθ是积累因子,用来保证p(θ|X)的和等于1。

最大后验概率运用了贝叶斯估计的思想,从贝叶斯估计的公式可以看到ZX与θ是无关的,要得到使p(θ|X)最大的θ,等价于求解下面的式子:
θ M A P ∗ = a r g   m a x θ { p ( θ ∣ x ) }    = a r g   m a x θ { p ( x ∣ θ ) p ( θ ) }        = a r g   m a x θ { p ( x ∣ θ ) } + l o g 2 p ( θ ) \theta_{MAP}^* =arg \, max_\theta\lbrace p(\theta|x)\rbrace\\ \qquad \qquad \; =arg \, max_\theta\lbrace p(x|\theta)p(\theta)\rbrace\\ \qquad \qquad \qquad \;\;\;=arg \, max_\theta\lbrace p(x|\theta)\rbrace+log_2p(\theta)\\ θMAP=argmaxθ{p(θx)}=argmaxθ{p(xθ)p(θ)}=argmaxθ{p(xθ)}+log2p(θ)
当先验概率p(θ)很确定的情况下,可以使用最大后验估计或贝叶斯估计,其中贝叶斯可以取得后验概率的分布情况,而最大后验估计只关心最大化结果的θ值。当然,如果对先验知识没有信心,可以使用最大似然估计。

1.1.4 假设与检验

假设检验是先对参数提出假设,然后利用样本信息判断假设是否成立的过程。假设检验的基本思想是小概率反证法。小概率:发生的可能性低于1%~5%,方法是:先提出假设,再用统计方法确认事件成立的可能性,如果可能性小的话,假设不成立。
假设检验分为原假设(零假设)和备择假设(备选假设)。检验假设正确性的是原假设,表明研究者对未知参数可能数值的看法,备择假设通常反映研究者对参数可能数值对立的看法。
假设检验的过程是:首先对总体做出原假设H0和备择假设H1;确定显著性水平α;选择检验统计量并依据α确定拒绝域(拒绝H0的统计量结果区域);抽样得到样本观察值,并计算实测样本统计量的值,如果在拒绝域中,则拒绝原假设H0,反之,拒绝原假设的证据不足(并非原假设成立)。

显著性检验:先确认某一假设成立,然后利用样本信息确认假设。例如,首先假设人的收入是服从正态分布的,当收集了一定的收入数据后,可以评价实际数据与理论假设H0之间的偏离,如果偏离达到了“显著”的程度就拒绝H0假设,这样的检验方法称为显著性检验。如图所示

机器学习--机器学习的基本方法_第1张图片

显著程度从中心的H0“非常显著”开始不断向外移动,当偏离了某一个较低的显著程度的时候,再看H0假设,已经很难确定其准确度了,这时候就可以认为H0假设不成立,也就是被拒绝了

1.1.5线性回归

线性回归是通过拟合自变量和应变量之间的最佳线性关系,来预测目标变量的方法。回归过程就是给出一个样本集,用函数来拟合这个样本集,使这个样本集和拟合函数间的误差最小。回归的具体包括:

(1)确定输入变量与目标变量间的回归模型,即变量间相关关系的数学表达式
(2)根据样本估计并检验回归模型及未知参数
(3)从众多的输入变量中,判断哪些变量对目标变量的影响是显著的。
(4)根据输入变量的已知值来估计目标变量的平均值并给出预测精度。
线性回归包括简单线性回归和多元线性回归。简单线性回归:一个自变量,拟合最佳线性关系来预测因变量,多元线性回归是有多个独立的自变量,也是拟合最佳线性关系来预测因变量。
获取回归模型公式简单线性回归的本质y=ax+b,所有点到这个直线距离最小。通过回归公式预测纵坐标
y=ax+b。
Q ( a , b ) = ∑ i = 1 n { y i − ( a x i + b ) } Q(a,b)=\sum_{i=1}^n \lbrace {y_i-(ax_i+b)} \rbrace Q(a,b)=i=1n{yi(axi+b)}
** 判断模型的好坏**

R 2 R^2 R2是判定系数,拟合优度和决定系数,

总偏差和(SST)
反应了因变量的总体波动,数值越大波动越大。是每个因变量的实际值(yi)与其平均值( y ˉ \bar y yˉ)的差的平方和,反映了因变量取值的总体波动情况,其值越大说明原始数据本身具有越大的波动,其公式如下。
S S T = ∑ i = 1 n ( y i − y ˉ ) 2 SST=\sum_{i=1}^n(y_i-\bar y)^2 SST=i=1n(yiyˉ)2

回归平方和(SSR)
是因变量的回归值( y i ^ \hat{y_i} yi^)与其均值( y ˉ \bar y yˉ)的差的平方和,它反映回归直线的波动情况。
S S R = ∑ i = 1 n ( y i ^ − y ˉ ) 2 SSR=\sum_{i=1}^n(\hat{y_i}-\bar y)^2 SSR=i=1n(yi^yˉ)2

残差平方和(SSE)
表示因变量的实际值和回归值的差的平方和反映了回归方程以外的因素的影响,
S S E = ∑ i = 1 n ( y i ^ − y i ) 2 SSE=\sum_{i=1}^n(\hat{y_i}- y_i)^2 SSE=i=1n(yi^yi)2

回归方程拟合程度的好坏是看这条回归线能够多大程度的解释目标值的变化,一般用 R 2 R^2 R2表示,公式为 R 2 = S S R S S T = 1 − S S E S S T R^2=\frac{SSR}{SST}=1-\frac{SSE}{SST} R2=SSTSSR=1SSTSSE
R2的取值为[0,1],从其定义可见,越接近1,拟合程度越好。当R2为1时表示回归方程可以完全解释因变量的变化。如果R2很低时,说明因变量和目标变量之间可能并不存在线性关系。
因变量预测标准误差是因变量的实际值和预测值的标准误差,值越小说明模型越高,代表性越强,拟合效果越好。 F值如果显著性水平Sig指标大于0.05,表示相关性较弱,没有实际意义。如果发现模型的Sig指标低于0.05,但是各自变量的Sig指标均超过0.05,就需要应用t检验查看回归系数表中各变量的显著性水平,或者是自变量之间出现了共线性问题,需要通过逐步回归的方法将显著性较差的自变量剔除。
多元线性回归方程 y = b 0 + b 1 x 1 + b 2 x 2 + … + b k x k + ξ y=b_0+b_1x_1+b_2x_2+\ldots+b_kx_k+\xi y=b0+b1x1+b2x2++bkxk+ξ
要求每个xi必须是相互独立的,其中bi表示回归系数,ε为随机误差,其评价指标主要有以下几个。

  • 非标准化系数
    非标准系数 b i b_i bi集合上的表示形式斜率,对非标准化系数的准确性进行度量,使用非标准化系数误差(SER)来对样本统计量的离散程度和误差进行衡量,也称为标准误差,它表示样本平均值作为总体平均估计值的准确度,SER值越小说明系数预测的准确性越高。
  • 标准化系数
    为了比较各自变量的相对重要性,将系数进行标准化处理,标准化系数大的自变量重要性较高。
  • t检验及其显著性水平
    t值是由系数除以标准误得到的,t值相对越大表示模型能有越高的精度估计系数,其Sig指标小于0.05说明显著性水平较高,如果t值较小且Sig指标较高,说明变量的系数难以确认,需要将其从自变量中剔除,然后继续进行分析。
  • B的置信区间
    检验B的显著性水平,主要为了弥补t检验和Sig值的不足,如果B的置信区间下限和上限之间包含了0值,即下限小于0而上限大于0,则说明变量不显著。
1.1.6逻辑回归

逻辑回归是一种预测分析,解释自变量和因变量和多个自变量之间的关系,与逻辑回归不同的是它的目标变量有几种类别,所有主要是解决分类问题。他是用概率的方式,预测出某一分类的概率问题,如果概率超过50%,则属于某一分类。主要是分为三步:

  • 找到合适的预测分类函数,需要对数据一定的了解分析,最后确定函数的可能形式。
  • 构造损失函数,该函数表示预测输出与训练数据类别之间的偏差,可对所有样本的偏差求R2值等作为评价标准,记为J(θ)函数
  • 找到J(θ)函数的最小值,因为值越小表示预测函数越准确。求解损失函数的最小值是采用梯度下降法

例子:
二分类一般用Sigmoid函数作为预测函数,公式表示为 ψ ( z ) = 1 1 + e − z \psi(z)=\frac{1}{1+e^{-z}} ψ(z)=1+ez1
首先构造h函数: h ( θ ) = g ( θ 0 + θ 1 x 1 + θ 2 x 2 ) h(\theta)=g(\theta_0+\theta_1x_1+\theta_2x_2) h(θ)=g(θ0+θ1x1+θ2x2)
对函数化简为: h θ ( x ) = g ( θ T X ) = 1 1 + e − θ T X h_\theta(x)=g(\theta^TX)=\frac{1}{1+e^{-\theta^TX}} hθ(x)=g(θTX)=1+eθTX1
接着是定义损失函数J(θ),在逻辑回归中损失函数采用对数损失函数:
L ( y ^ , y ) = − [ y l o g 2 y ^ + ( 1 − y ) l o g 2 ( 1 − y ^ ) ] L(\hat y,y)=-[ylog_2\hat y+(1-y)log_2(1-\hat y)] L(y^,y)=[ylog2y^+(1y)log2(1y^)]
当y=1时,当预测值 y ^ \hat y y^也接近与1,损失函数就接近于0,表示损失函数值越小,误差越小。相反则反之。
计算所有样本的损失函数结果,并采用梯度下降法不断迭代求偏导,逐渐逼近θ的最佳值,使损失函数取得极小值

1.1.7判别分析

判别分析是通过对类别已知的样本进行判别模型,从而实现对新样本的类别进行判断。包括线性判别分析(LDA)和二次判别分析(QDA)两种类型。
二次判别分析
是针对高斯分布,且均值不同,方差也不同的数据,他对高斯分布的协方差矩阵不做任何假设,直接使用每个分类下的协方差矩阵,如果数据方差相同的时候,判别一次就好了,但是如果不同的话,就可以变成关于x的二次函数,使用二次决策树判别

例题
通过实验比较LDA和QDA的区别和分类效果。基于基于sklearn开源库中的discriminant_analysis模块内置LDA和QDA算法类,对随机生成的高斯分布的样本数据集进行分类,数据集的样本数为50,生成的数据集中一半是具有相同协方差矩阵的,另一半的协方差矩阵不相同。
LDA和QDA的预测过程均很简单,核心代码如下所示。
#LDA预测
lda = LinearDiscriminantAnalysis(solver=“svd”, store_covariance=True)
y_pred = lda.fit(X, y).predict(X)
splot = plot_data(lda, X, y, y_pred, fig_index=2 * i + 1)
#QDA预测
qda = QuadraticDiscriminantAnalysis(store_covariances=True)
y_pred = qda.fit(X, y).predict(X)
splot = plot_data(qda, X, y, y_pred, fig_index=2 * i + 2)
其中polt_data()方法用于自定义可视化函数,主要包括绘制分类区域和样本的预测结果等,对于预测错误的样本用五角星显示,
可见,线性判别分析只能学习到线性边界,而二次判别分析可以学到二次边界,所以更加灵活。
QDA和LDA的算法相似,它们之间的区别主要受方差偏差两个因素的影响。模型的预测值和实际值之间的差异可以分解为方差和偏差的综合,对于方差较高、误差较低的模型通常比较灵敏,这种情况的模型并没有变化,只是样本数据改变,其预测结果会产生较大的变化。反之,误差较高、方差较低的模型一般会比较迟钝,即使模型发生变化,依然不会使预测值改变。因此在其中如何取舍,就成了一个很重要的问题。
LDA的结果中方差较低,而QDA算法的相对误差更低。因此,在对协方差矩阵很难估计准确时(例如在样本集比较少的情况下)适合采用LDA算法。而当样本集很大,或者类间协方差矩阵差异比较大的时候,采用QDA更加合适。

1.1.8 非线性判决
  1. 阶跃函数
    阶跃函数的变量是实数,阶跃函数就是一个分段函数。
  2. 分段函数
    分段函数是一个函数,不同的自变量取值区间分别对应不同的子函数,分段是一种函数表达方式,用来描述函数在不同子域区间上的性质。不同子函数的性质不能代表整个函数的性质,在离散性较强的系统中,用分段函数表示不同状态下模型的输出。
  3. 样条曲线
    样条曲线是由多项式定义的分段函数。在计算机图形学中,样条曲线是指一个分段多项式参数曲线。其结构简单、精度高,可通过曲线拟合复杂形状。
  4. 广义加性模型
    广义加性模型(GAM)是一种广义线性模型,其中线性预测因子线性地依赖于某些自变量的未知平滑函数。可对部分或全部的自变量采用平滑函数的方法建立模型。

你可能感兴趣的:(机器学习,机器学习,概率论,人工智能)