人脸识别中常用的几种分类器
在人脸识别中有几种常用的分类器,一是最邻近分类器;二是线性分类器
(1)最邻近分类器
最近邻分类器是模式识别领域中最常用的分类方法之一,其直观简单,在通常的应用环境中非常有效。因此在人脸识别问题中有着广泛的应用。最邻近方法是这样定义的:
假设训练样本(X,Y)={xi,yi | i=1,2,...n},这里xi 代表第i个样本的特征向量,yi是该样本的类别标签。对于一个新的待分类样本xi,最邻近分类器预测该样本的标签的方法是,寻找与xi距离度量最近的训练样本,然后把该训练样本的标签作为待测试样本xi的标签yi' ,即:
这里d(xi, xi) 代表样本xi 与样本xi 之间的距离度量。
最邻近的算法非常直观,也容易被实现,他通过距离测试样本最近的训练样本的标签来预测当前测试样本的类别,可以适用于任何分布的数据,而且已有文献证明,在样本足够多的情况下,最邻近分类的错误率是比较理想的。
距离度量有很多种,一般采用的室欧氏距离。除此之外还有相关度,卡方,直方图交,Bhattacharyya距离(又名巴氏距离)。
1)欧氏距离 :是一个通常采用的距离定义,它是在m维空间中两个点之间的真实距离。距离值越小,代表两个直方图距离越近,越相似,反之中则代表距离越远。
2)相关度
两直方图之间的相关度定义如下
N等于直方图中bin的个数,对于相关度而言,数值越大越匹配。完全匹配的数值为1,完全不匹配的是-1,值为0则表示无关联,两个直方图是随机组合。
3)卡方Chi-Square
对于卡方而言,匹配度越高,距离越小,则卡方值越低,相反,匹配值越低,距离越大,卡方值越高。完全匹配值为0,完全不匹配的值为无限值。
4)直方图交
对于直方图交,值越大越匹配,距离越小,越低分表示越不匹配。如果两个直方图都被归一化,那么完全匹配的值为1,完全不匹配的值为0.
5)Bhattacharyya 距离
Bhattacharyya 距离又被称之为巴氏距离。巴氏距离可用来对两组特征直方图的相关性进行测量,其常用来作为分类器算法。
定义如下:
对于巴氏距离数值越小表示越匹配,距离越近,而数值越大表示越不匹配,距离越远。两个直方图完全匹配值为0,完全不匹配值为1.
(2)线性分类器
线性分类器(一定意义上,也可以叫做感知机) 是最简单也很有效的分类器形式.在一个线性分类器中,可以看到SVM形成的思路,并接触很多SVM的核心概念.用一个二维空间里仅有两类样本的分类问题来举个小例子。如图所示
C1和C2是要区分的两个类别,在二维平面中它们的样本如上图所示。中间的直线就是一个分类函数,它可以将两类样本完全分开。一般的,如果一个线性函数能够将样本完全正确的分开,就称这些数据是线性可分的,否则称为非线性可分的。
LDA:
线性判别式分析(Linear Discriminant Analysis, LDA),也叫做Fisher线性判别(Fisher Linear Discriminant ,FLD),是模式识别的经典算法,它是在1996年由Belhumeur引入模式识别和人工智能领域的。性鉴别分析的基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。因此,它是一种有效的特征抽取方法。使用这种方法能够使投影后模式样本的类间散布矩阵最大,并且同时类内散布矩阵最小。就是说,它能够保证投影后模式样本在新的空间中有最小的类内距离和最大的类间距离,即模式在该空间中有最佳的可分离性。
二. 原理简述:
LDA的原理是,将带上标签的数据(点),通过投影的方法投影到维度更低的空间中,使得投影后的点形成按类别区分的情形,即相同类别的点,在投影后的空间中距离较近,不同类别的点,在投影后的空间中距离较远。
要说明LDA,首先得弄明白线性分类器(Linear Classifier):因为LDA是一种线性分类器。对于K-分类的一个分类问题,会有K个线性函数:
当满足条件:对于所有的j,都有Yk > Yj,的时候,我们就说x属于类别k。对于每一个分类,都会用一个公式去计算一个得分值,所有公式的结果中得分最高的那个类别,就是所属的分类了。
上式实际上就是一种投影,是将一个高维的点投影到一条高维的直线上,LDA最求的目标是,给出一个标注了类别的数据集,投影到了一条直线之后,能够使得点尽量的按类别区分开,当k=2即二分类问题的时候,如下图所示:
红色的方形的点为0类的原始点、蓝色的方形点为1类的原始点,经过原点的那条线就是投影的直线,从图上可以清楚的看到,红色的点和蓝色的点被原点明显的分开了,这个数据只是随便画的,如果在高维的情况下,看起来会更好一点。下面我来推导一下二分类LDA问题的公式:
假设用来区分二分类的直线(投影函数)为:
LDA分类的一个目标是使得不同类别之间的距离越远越好,同一类别之中的距离越近越好,所以我们需要定义几个关键的值。
类别i的原始中心点为:(Di表示属于类别i的点)
类别i投影后的中心点为:
衡量类别i投影后,类别点之间的分散程度(方差)为:
最终我们可以得到一个下面的公式,表示LDA投影到w后的损失函数:
我们分类的目标是,使得类别内的点距离越近越好(集中),类别间的点越远越好。分母表示每一个类别内的方差之和,方差越大表示一个类别内的点越分散,分子为两个类别各自的中心点的距离的平方,我们最大化J(w)就可以求出最优的w了。想要求出最优的w,可以使用拉格朗日乘子法,但是现在我们得到的J(w)里面,w是不能被单独提出来的,我们就得想办法将w单独提出来。
我们定义一个投影前的各类别分散程度的矩阵,这个矩阵的意思是,如果某一个输入点集Di里面的点距离这个分类的中心点mi越近,则Si里面元素的值就越小,如果分类的点都紧紧地围绕着mi,则Si里面的元素值越更接近0.
带入Si,将J(w)分母化为:
同样的将J(w)分子化为:
这样损失函数可以化成下面的形式,我们的目标是求取它的最大值:
这样就可以用拉格朗日乘子法了,但是还有一个问题,如果分子、分母是都可以取任意值的,那就会使得有无穷解,我们将分母限制为长度为1(这是用拉格朗日乘子法一个很重要的技巧),并作为拉格朗日乘子法的限制条件,带入得到:
求导公式如下:
这样的式子就是一个求特征值的问题了。
对于N(N>2)分类的问题,我就直接写出下面的结论了:
又因为w=[w1,w2...wd],所以得到:
把损失函数分解可知,我们要求的是:
最佳投影矩阵的列向量即为的d个最大的特征值所对应的特征向量(矩阵的特征向量),且最优投影轴的个数d<=c-1(c表示类的个数).
这里想多谈谈特征值,特征值在纯数学、量子力学、固体力学、计算机等等领域都有广泛的应用,特征值表示的是矩阵的性质,当我们取到矩阵的前N个最大的特征值的时候,我们可以说提取到的矩阵主要的成分(这个和之后的PCA相关,但是不是完全一样的概念)。在机器学习领域,不少的地方都要用到特征值的计算,比如说图像识别、pagerank、LDA、还有之后将会提到的PCA等等。
Fisher线性判别是PCA+LDA。
数据分析咨询请扫描二维码
在当今数据驱动的商业环境中,数据分析师扮演着至关重要的角色。他们帮助企业从大量数据中提取有用的洞察,从而推动决策制定和战 ...
2024-11-07在现代商业环境中,商务数据分析师扮演着至关重要的角色。作为联系业务需求与数据洞察之间的桥梁,数据分析师需要具备一系列技能 ...
2024-11-07在现代商业环境中,商务数据分析师扮演着至关重要的角色。作为联系业务需求与数据洞察之间的桥梁,数据分析师需要具备一系列技能 ...
2024-11-07在现代商业环境中,数据挖掘发挥着至关重要的作用。它不仅帮助企业从庞大的数据集中提取有价值的信息,还为企业的决策和业务运营 ...
2024-11-07数据分析可视化是一种通过图形化方式展现数据的技术,它使复杂的数据变得直观易懂,从而帮助我们更好地做出决策。在这个快速发展 ...
2024-11-07数据分析是一项至关重要的技能,尤其在当今数据驱动的世界中。Python以其强大的库和简单的语法成为了数据分析领域的佼佼者。本文 ...
2024-11-07在现代数据驱动的环境中,数据分析师扮演着至关重要的角色。他们需要掌握多种工具,以满足数据分析、处理和可视化的需求。无论是 ...
2024-11-07作为一名业务分析师,你将发现自己处于企业决策和数据驱动战略之间的桥梁位置。这个角色要求掌握一系列技能,以便有效地将数据转 ...
2024-11-07CDA中科院城市环境研究所(厦门)内训圆满成功 2017年9月12日-15日,CDA数据分析师在中科院城市环境研究所(厦门)进行了 ...
2024-11-07数据分析是现代商业和研究领域不可或缺的重要工具。无论是为了提高业务决策的准确性,还是为了发掘隐藏在数据中的潜在价值,了解 ...
2024-11-06数据分析是一个精细且有序的过程,旨在从海量数据中提取有用的信息,为决策提供有力支持。无论你是新手还是有经验的分析师,理解 ...
2024-11-06在当今竞争激烈的商业环境中,业务分析师(Business Analyst, BA)的角色变得愈加重要。随着企业对数据驱动决策的依赖加深,业务 ...
2024-11-06在现代信息技术的广阔世界中,大数据架构师扮演着至关重要的角色。他们不仅引领着企业的数据战略,还通过技术创新推动业务的不断 ...
2024-11-04在当今数字化时代,数据分析师已成为企业关键角色,帮助决策者通过数据驱动的洞察实现业务目标。成为一名成功的数据分析师,需要 ...
2024-11-03在当今数字化的世界中,数据分析已经成为推动商业决策的关键因素。随着公司和组织越来越依赖数据来驱动业务战略,对数据分析专 ...
2024-11-03《Python数据分析极简入门》 第2节 2 Pandas数据类型 Pandas 有两种自己独有的基本数据结构。需要注意的是,它固然有着两种数据 ...
2024-11-01《Python数据分析极简入门》 第2节 1 Pandas简介 说好开始学Python,怎么到了Pandas? 前面说过,既然定义为极简入门,我们只抓 ...
2024-10-31在当今数据驱动的世界中,数据科学与工程专业的重要性愈发凸显。无论是推动技术进步,还是在商业决策中提供精准分析,这一专业都 ...
2024-10-30在当今信息爆炸的时代,数据已成为企业决策和战略制定的核心资源。爬虫工程师因此成为数据获取和挖掘的关键角色。本文将详细介绍 ...
2024-10-30在当今数据驱动的世界中,数据分析是揭示商业洞察和推动决策的核心力量。选择合适的数据分析工具对于数据专业人士而言至关重要。 ...
2024-10-30