模式识别(Pattern Recognition)就是机器识别、计算机识别或机器自动识别,目的在于让机器自动识别事物。例如手写数字的识别,结果就是将手写的数字分到具体的数字类别中;智能交通管理系统的识别,就是判断是否有汽车闯红灯,闯红灯的汽车车牌号码;还有文字识别,语音识别,图像中物体识别,等等。该学科研究的内容是使机器能做以前只能由人类才能做的事,具备人所具有的对各种事物与现象进行分析、描述与判断的部分能力。模式识别是直观的、无所不在的,实际上人类在日常生活的每个环节,都从事着模式识别的活动。人和动物较容易做到的模式识别,但对计算机来说却是非常困难的。让机器能识别、分类,就需要研究识别的方法,这就是这门学科的任务。
模式识别是信号处理与人工智能的一个重要分支。人工智能是专门研究用机器人模拟人的动作、感觉和思维过程与规律的一门科学,而模式识别则是利用计算机专门对物理量及其变化过程进行描述与分类,通常用来对图像、文字、相片以及声音等信息进行处理、分类和识别。它所研究的理论和方法在很多科学和技术领域中得到了广泛的重视与应用,推动了人工智能系统的发展,扩大了计算机应用的可能性。模式识别诞生于20世纪20年代,随着20世纪40年代计算机的出现,50年代人工智能的兴起,模式识别在60年代初迅速发展为一门科学。其研究的目的是利用计算机对物理对象进行分类,在错误概率最小的条件下,使识别的结果尽量与客观物体相符合。让机器辨别事物的最基本方法是计算,原则上讲是对计算机要分析的事物与标准模板的相似程度进行计算。例如,要识别一个手写的数字,就要将它与从0到9的模板做比较,看跟哪个模板最相似,或最接近。因此首先要能从度量中看出不同事物之间的差异,才能分辨当前要识别的事物。因此,最关键的是找到有效地度量不同类别事物差异的方法。
在模式识别学科中,就“模式”与“模式类”而言,模式类是一类事物的代表,而“模式”则是某一事物的具体体现,如数字0、1、2、3、4、5、6、7、8、9是模式类,而用户任意手写的一个数字或任意一个印刷数字则是“模式”,是数字的具体化。广义上说,模式(patten)是供模仿用的完美无缺的标本,通常,把通过对具体的个别事物进行观察所得到的具有时间和空间分布的信息称之为模式,而把模式所属的类别或同一类别中模式的总体称为模式类。模式识别(PatternRecognition)是指对表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息进行处理和分析,以对事物或现象进行描述、辨认、分类和解释的过程,是信息科学和人工智能的重要组成部分。
在模式识别技术中,被观测的每个对象称为样品,例如,在手写数字识别中每个手写数字可以作为一个样品,如果共写了 N 个数字,我们把这 N 个数字叫做 N 个样品( X 1 、 X 2 、…、 X j 、… X N ),其中0有 N 0 个样品,1有 N 1 个样品,2有 N 2 个样品,3有 N 3 个样品,…,一共有 ω 1 , ω 2 ,… ω M ( M =10)个不同的类别。
对于一个样品来说,必须确定一些与识别有关的因素,作为研究的根据,每一个因素称为一个特征。模式就是样品所具有的特征的描述。模式的特征集又可写成处于同一个特征空间的特征向量,特征向量的每个元素称为特征,该向量也因此称为特征向量。一般我们用小写英文字母 x , y , z 来表示特征。如果一个样品 X 有 n 个特征,则可把 X 看作一个 n 维列向量,该向量 X 称为特征向量,记作:
若有一批样品共有 N 个,每个样品有 n 个特征,这些数值可以构成一个 n 行 N 列的矩阵,称为原始资料矩阵,见表1‐1。
表1‐1 原始资料矩阵
模式识别问题就是根据 X 的 n 个特征来判别模式 X 属于 ω 1 , ω 2 ,… ω M 类中的哪一类。待识别的不同模式都在同一特征空间中考察,不同模式由于性质上的不同,它们在各特征取值范围上有所不同,因而会在特征空间的不同区域中出现。要记住向量的运算是建立在各个分量基础之上的。因此,模式识别系统的目标是在特征空间和解释空间之间找到一种映射关系。特征空间由从模式得到的对分类有用的度量、属性或基元构成的空间。解释空间由 M 个所属类别的集合构成。
如果一个对象的特征观察值为{ x 1 , x 2 ,… x n },它可构成一个 n 维的特征向量值 X ,即 X =( x 1 , x 2 ,… x n ) T ,式中, x 1 , x 2 ,… x n 为特征向量 X 的各个分量。一个模式可以看作 n 维空间中的向量或点,此空间称为模式的特征空间 R n 。在模式识别过程中,要对许多具体对象进行测量,以获得更多观测值。其中有均值、方差、协方差与协方差矩阵等。
一个典型的模式识别系统如图1‐1所示,由数据获取、预处理、特征提取选择、分类决策及分类器设计五部分组成。一般分为上下两部分。上半部完成未知类别模式的分类;下部分属于分类器设计的训练过程,利用样品进行训练,确定分类器的具体参数,完成分类器的设计。而分类决策在识别过程中起作用,对待识别的样品进行分类决策。
图1‐1 典型的模式识别系统
在设计模式识别系统时,需要注意模式类的定义、应用场合、模式表示、特征提取和选择、聚类分析、分类器的设计和学习、训练和测试样本的选取、性能评价等。针对不同的应用目的,模式识别系统各部分的内容可以有很大的差异,特别是在数据处理和模式分类这两部分,为了提高识别结果的可靠性往往需要加入知识库(规则)以对可能产生的错误进行修正,或通过引入限制条件大大缩小待识别模式在模型库中的搜索空间,以减少匹配计算量。在某些具体应用中,如机器视觉,除了要给出被识别对象是什么物体外,还要求出该物体所处的位置和姿态以引导机器人的工作。下面分别简单介绍模式识别系统的工作原理。
模式识别系统组成单元功能如下所述。
(1)数据获取:是指利用各种传感器把被研究对象的各种信息转换为计算机可以接受的数值或符号(串)集合。习惯上,称这种数值或符号(串)所组成的空间为模式空间。这一步的关键是传感器的选取。为了从这些数字或符号(串)中抽取出对识别有效的信息,必须进行数据处理,包括数字滤波和特征提取。所获取的数据要用计算机可以运算的符号来表示所研究的对象,一般获取的数据类型有:
二维图像:文字、指纹、地图、照片等;
一维波形:脑电图、心电图、季节震动波形等;
物理参量和逻辑值:体温、化验数据、参量正常与否的描述。
(2)预处理:是为了消除输入数据或信息中的噪声,排除不相干的信号,只留下与被研究对象的性质和采用的识别方法密切相关的特征(如表征物体的形状、周长、面积等)。举例来说,在进行指纹识别时,指纹扫描设备每次输出的指纹图像会随着图像的对比度、亮度或背景等的不同而不同,有时可能还会变形,而人们感兴趣的仅仅是图像中的指纹线、指纹分叉点、端点等,而不需要指纹的其他部分或背景。因此,需要采用合适的滤波算法,如基于块方图的方向滤波、二值滤波等,过滤掉指纹图像中这些不必要的部分。需要对输入测量仪器或其他因素所造成的退化现象进行复原、去噪声,提取有用信息。
(3)特征提取和选择:是指从滤波数据中衍生出有用的信息,从许多特征中寻找出最有效的特征,将维数较高的测量空间(原始数据组成的空间)转变为维数较低的特征空间(分类识别赖以进行的空间)。以降低后续处理过程的难度。通过特征选择和提取形成模式的特征空间。人类很容易获取的特征,对于机器来说就很难获取了,特征选择和提取是模式识别的一个关键问题。一般情况下,候选特征种类越多,得到的结果应该越好。但是,由此可能会引发维数灾害,即特征维数过高,计算机难以求解。因此,数据处理阶段的关键是滤波算法和特征提取方法的选取。不同的应用场合,采用的滤波算法和特征提取方法,以及提取出来的特征也会不同。
(4)分类决策:在特征空间中用模式识别方法把被识别对象归为某一类别。该阶段最后输出的可能是对象所属的类型,也可能是模型数据库中与对象最相似的模式编号。
(5)分类器设计:模式分类或描述通常是基于己经得到分类或描述的模式集合而进行的。人们称这个模式集合为训练集,由此产生的学习策略称为监督学习。学习也可以是非监督性学习,在此意义下产生的系统不需要提供模式类的先验知识,而是基于模式的统计规律或模式的相似性学习判断模式的类别。基本做法是在样品训练集基础上确定判别函数,改进判别函数和误差检验。
研究模式识别的主要目的是如何用计算机进行模式识别,对样本进行分类。执行模式识别的计算机系统称为模式识别系统。设计人员按需要设计模式识别系统,而该系统被用来执行模式分类的具体任务。