人工智能系列:一文让你读懂什么是模式识别

news2024/12/24 0:38:17

目录

1.什么是模式识别

1.1人工智能和模式识别

1.2信息感知

1.3计算机模式识别

1.4模式识别应用

1.5模式识别发展简史

1.6相关问题和领域

2.模式识别形式化

2.1模式和模式识别

2.2模式表示

2.3特征空间

2.4特征空间中的分类

2.5一个例子

3.模式识别系统流程

4.模式分类器设计

4.1分类器训练过程

4.2训练-评价流程

4.3数据划分方式

4.4泛化性能

5.模式识别方法分类

5.1根据表示方式分类

5.2统计/结构方法对比

5.3学习方法分类

5.4生成/判别模型


1.什么是模式识别

1.1人工智能和模式识别

人工智能(Artificial Intelligence, AI) 构造智能机器 (智能计算机、智能系统 ) 的科学和工程,使机器模拟、延伸、扩展人类智能
人类智能
感知:看 ( 视觉 ) 、听 ( 听觉 ) 、摸 ( 触觉 ) 、闻 ( 嗅觉 ) 、尝 (
)
学习:有教师学习,自学习
思维:推理、回答问题、定理证明、下棋等
行为:表情、拿物、走路、运动
人工智能研究内容
• 机器感知(模式识别)
        – 模式分类、模式匹配
        – 计算机视觉、图像视频分析
        – 语音识别、自然语言理解
• 机器学习
        – 从数据或经验学习模型或程序
        – 监督学习、无监督学习、半监督学习等
• 机器思维(问题求解)
        – 专家系统、自动问答、机器定理证明、下棋等
智能行为
        – 机器人动作、自动驾驶、无人机等
模式识别在 AI 中的地位
模式识别: 机器感知环境,从环境获取信息和知识
        – 视觉感知: 从图像识别文字、物体、行为等,从而理解周围环境
        – 听觉感知: 从声音和文本识别场景、理解语言和获取知识

1.2信息感知

感知:从环境获取信息
人和动物通过感知从周围环境获取信息。感知就是模式识别过程。

1.3计算机模式识别

模式识别:使计算机模仿人的感知能力,从感知数据中提取信息(判别 物体和行为、现象 )的过程

1.4模式识别应用

安全监控 (身份识别、行为监控、交通监控)
空间探测与环境资源监测 (卫星 / 航空遥感图像)
智能人机交互 (表情、手势、声音、符号)
机器人环境感知 (视听触觉)
人类健康 (医学图像、体测数据)
工业应用 (零部件 / 物品分类、损伤检测)
文档数字化 (历史书籍报纸、档案、手稿、标牌等)
网络搜索、信息提取和过滤 (文本、图像、视频、音频、多媒体 )
舆情分析 (互联网、大数据)
有些生物特征(如虹膜、指静脉)精度高,但是需要客户配合。
有些(如签名、步态)精度相对较低,但是不需要配合,有适合其应用的场合。
智能交通、无人驾驶: 交通标志识别、道路识别、车辆识别、行人识别等

1.5模式识别发展简史

生物“模式识别” ( 心理学 )
光学 / 机械模式识别
第一个光学字符识别 (OCR) 专利: 1929
现代模式识别:电子计算机发明以后
先期统计学基础 (19 世纪以前 ) Bayes, Gauss, Fisher
早期统计模式识别: IBM (1950s-)
第一个“模式识别”学术会议: 1966 ( 波多黎各 )
早期模式识别教材: Fukunaga (1972), Duda&Hart (1973)
第一次国际模式识别大会 (ICPR) 1972
国际模式识别协会 (IAPR) 1974 筹建, 1978 年正式成立
模式识别方法演化
核心内容:模式分类
特征提取 / 选择、聚类分析、分类器设计(机器学习)
统计模式识别: 1950s-
句法、结构模式识别: 1970s-
人工神经网络: 1980s-
支撑向量机、核方法: 1990s-
多分类器、集成学习: 1990s-
Bayes 学习: 1990s-
1990s-: 模式识别技术大规模应用
2000s-: 半监督学习、多标签学习、概率图模型
最近:迁移学习、稀疏表示、深度学习 ( 神经网络复活 )

1.6相关问题和领域

模式识别相关问题
数据预处理
视频、图像、信号处理等
模式分割
检测定位、背景分离、模式 - 模式分离
运动分析
目标跟踪、运动模式描述
模式描述与分类
特征提取 / 选择、模式分类、聚类、机器学习
模式识别应用研究
针对具体应用的方法与系统
相关领域:模式识别-机器学习-数据挖掘

2.模式识别形式化

2.1模式和模式识别

模式的两个层次
样本 (Sample, instance, example)
类别 (Class, category)
例如:100个样本、10个类别
                                ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        
• 模式识别核心技术: 模式分类
比如下图:
                                                 
检测出: 2-class (binary)
判别出: 2-class, multi-class
分类器设计: 机器学习
相关问题:特征提取、特征选择

2.2模式表示

模式表示有两个方面,一是识别对象表示,二是分类器表示

识别对象表示 特征
特征矢量: x =[ x 1 , x 2 ,…, x n ]]^{T}
特征空间 ( 线性空间、欧式空间 )
问题: 特征提取 特征选择
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​      
• 分类器表示
类别模型: M i = M ( x,\theta _{i} )
判别函数: y i = f ( x ,w_{i}   )
(Discriminant function)
d ( x ,w_{i} )=- f ( x ,w_{i})
决策面
f ( x ,w_{i}) = f ( x ,w_{j}   )
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        

2.3特征空间

• 特征矢量表示的好处
一个模式 ( 样本 ) 对应空间中的一点
容易计算样本之间的距离 / 相似度
大量数学工具,分类器模型核学习方法,性能分析
• 欧式空间特性
– 欧式距离:坐标系不变性
Metric
d(x 1 ,x 2 )+d(x 1 ,x 3 )>d(x 2 ,x 3 )R_{i}
d(x 1 ,x 2 )-d(x 1 ,x 3 )<d(x 2 ,x 3 )
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        

2.4特征空间中的分类

分类:空间划分
距离度量 / 相似度:mind(x,M_{i})
决策区域:R_{i}=arg max f(x,w_{i})
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        
线性可分 / 不可分
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        
线性 / 非线性判别

2.5一个例子

下面以鱼分拣的例子来说明

图中左边这个是三文鱼(Salmon),右边是黑鲈鱼(Sea bass

下面来构建长度特征分类

接着构建亮度特征分类

可以发现亮度比长度分类结果好很多,但是可能还有更好的特征,这里不展开了,感兴趣的朋友可以自行查阅资料

以上两个都是一维特征(长度 鱼身亮度)的分类结果下面我们来看看二维特征的分类:

使用线性分类器

可以发现多个特征组合比单个特征具有更好的可分性
接着我们可以将决策边界改为平滑曲面试试:
使用 非线性分类器
最后再使用 最近邻分类器看看:
值得注意的是复杂分类器划分能力更强,但计算复杂,而且可能产生过拟合

3.模式识别系统流程

下面我们使用一个文档分析系统的例子来看看模式识别的一般流程:

这是一个文档分析系统的分析过程

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

                                   ​​​​​​​

对于这样一个文档,其分析流程如下:
1. 数据采集:首先通过扫描仪、相机或数字笔获取文档图像。
2. 布局分析:对采集到的图像进行布局分析,确定文本的位置和方向。
3. 字符分割:在布局分析的基础上,对图像中的文字进行字符分割,即把图片中的每个字符切分开来。
4. 识别:对分割出的字符进行预处理、特征提取和分类,以识别出这些字符。
5. 后处理:对识别出的字符进行校正和排序,以提高识别结果的准确性和可读性。

由此我们归纳出模式识别的完整流程如下:

模式识别的完整流程通常包括以下步骤,每一步都是为了提高识别的准确性和效率:

1.数据采集(Data Acquisition):
这是流程的第一步,涉及从原始源获取数据。数据可以是图像、声音、文本或其他任何形式。在文档分析的情况下,这通常涉及到使用扫描仪、摄像头或其他设备将文档转换为数字格式。
2.数据分割(Segmentation):
在这一步中,系统会将数据分割成更小的部分,以便于后续处理。在图像处理中,这可能包括将图像分割成多个区域或对象。例如,在文档分析中,这可能涉及到区分文本、图像、表格等不同元素。
3.数据预处理(Pre-processing):
数据预处理是为了改善数据质量,使其更适合进行特征提取和分类。这可能包括去噪对比度增强大小归一化二值化等操作。预处理的目的是消除无关信息,突出关键特征
4.特征提取(Feature Extraction):
在这一步,系统会从预处理后的数据中提取重要的特征。特征是数据中用于区分不同类别的关键属性。例如,在图像识别中,特征可能包括颜色、形状、纹理等。选择正确的特征对于模式识别的成功至关重要。
5.利用提取的特征对数据进行分类(Classification):
一旦特征被提取,系统就会使用这些特征来对数据进行分类。分类器可以是统计方法、机器学习方法或深度学习方法。分类器的目标是根据提取的特征将数据分配到预定义的类别中。
6.对分类结果进行后处理(Post-processing):
分类后的数据可能需要进一步的处理以提高准确性和实用性。这可能包括错误校正、结果解释、数据可视化等。后处理的目的是确保输出结果对用户有意义,并且可以用于决策支持或其他应用。

识别-训练过程如下:

4.模式分类器设计

4.1分类器训练过程

4.2训练-评价流程

训练和测试过程需要分开不同的样本集

模型的选择和评价:

4.3数据划分方式

两个层次的划分
Performance evaluation: Training+Test
Model selection: Estimation+Validation
划分方式
Cross-validation (rotation)
N 等份,每等份轮流做 Test ,其余部分用于训练
Leave-one-out (LOO)
Holdout
Bootstrapping

4.4泛化性能

泛化性能 (Generalization
Performance) 测试数据上的分类性能
测试错误率跟训练错误率往往是有差异的
过拟合/过学习: 用复杂分类器能将训练数据分类错误率降到极低
训练数据越多、越有代表性,则泛化性能越好
        ​​​​​​​        ​​​​​​​        ​​​​​​​        
分类器(模型)复杂度 对泛化性能的影响:
        ​​​​​​​        ​​​​​​​        
训练数据不变的情况 下,分类器越复杂,对训练数据拟合程度越高
过拟合情况下,泛化性能会下降,比如下面这个例子
        ​​​​​​​        ​​​​​​​        

5.模式识别方法分类

5.1根据表示方式分类

tistical: 特征矢量
        – Parametric (Gaussian)
        – Non-parametric (Parzenwindow, k-NN)
        – Semi-parametric (GM)
        – Neural network
        – Logistic regression
        – Decision tree
        – Kernel (SVM)
        – Ensemble (Boosting)
• Structural: 句法、结构
        – Syntactic parsing
        – String matching, tree
        – Graph matching
        – Hidden Markov model (HMM)
        – Markov random field (MRF)
        – Structured prediction

5.2统计/结构方法对比

1.为什么需要结构方法?
统计方法不能解决的问题主要有以下三个:
表示模式的结构(如字符的笔划、部首及其相互关系)
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        
长度/大小不固定的模式(如字符串)
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        
        • 整体分类: 类别数巨大 ( 如, 6 位邮政编码的类别数为10 6 )
相互关联的多个物体/部件同时分类
        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​
        • 如果单个分类+后处理?分割不确定,上下文利用不充分
2.统计/结构方法对比
统计/结构方法对比
统计方法结构方法
训练                    易                    难
依赖训练数据需要大量数据训练小样本情况下性能良好
分类性能大量样本训练时性能优异大样本训练困难,优势难以体现
可解释性输出概率(置信度),解释性差结构解释,对outlier
与人类认知的相关性                低                高

5.3学习方法分类

• 监督(Supervised)学习
        – 训练样本有类别标号
• 无监督(Unsupervised)学习
        – 训练样本无类别标号,得到数据结构表示或分布
• 半监督(Semi-supervised)学习
        – 训练样本一部分有类别标号,一部分没有
• Reinforcement learning
        – 学习过程中给出奖惩信号
例如,Deep Mind(被Google收购)基于深度神经网络强化学习的玩视频游戏程序
• Domain Adaptation
        – 测试样本分布发生变化,分类器参数自适应

5.4生成/判别模型

生成 (Generative) 模型: 表示各个类别内部结构或特征分布 p ( x |c)
判别 (Discriminative) 模型: 表示不同类别之间的区别,一般为判别
函数 (Discriminant function) 、边界函数或后验概率 P(c| x )
生成学习: 得到每个类别的结构描述或分布函数,不同类别分别学习
判别学习: 得到判别函数或边界函数的参数,所有类别样本同时学习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1843232.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【维护服务器安全,如何应对恶意的威胁行为?】

随着互联网的迅猛发展&#xff0c;网络服务器成为现代社会中不可或缺的基础设施。然而&#xff0c;恶意攻击行为也日益猖獗&#xff0c;技术不断升级&#xff0c;给网络服务器的安全带来了严峻挑战。下面德迅云安全就分享一些常见的危害服务器安全的行为&#xff0c;和相应的应…

某棋牌渗透测试

前言 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;文章作者不为此承担任何责任。 一、信息收集 这里通过fofa进行收集&#xff0c;语法为&#xff1a;body某棋牌 && titlexxx 图1-1 fofa资产收集 …

JetBrains IDEA 新旧UI切换

JetBrains IDE 新旧UI切换 IntelliJ IDEA 的老 UI 以其经典的布局和稳定的性能&#xff0c;成为了许多开发者的首选。而新 UI 则在此基础上进行了全面的改进&#xff0c;带来了更加现代化、响应式和高效的用户体验。无论是新用户还是老用户&#xff0c;都可以通过了解和适应这…

apple watch上watchOS网络低级别和高级别区别,以及使用tcp/udp或者websocket的限制条件

可以直接看官方文档&#xff1a;TN3135: Low-level networking on watchOS | Apple Developer Documentation 高级网络&#xff1a;包括 URLSession 中的 HTTP 和 HTTPS 支持&#xff0c;以及在此之上的任何代码层。 低层网络&#xff1a;包括网络框架、 NSStream 和任何其他…

根据滚珠丝杆规格适配丝杆支撑座!

丝杆支撑座是机械设备中常见的支撑座装置&#xff0c;支撑着滚珠丝杆&#xff0c;起到稳定和支撑的作用&#xff0c;避免丝杆弯曲变形和震动&#xff0c;从而保证设备的稳定运行。那么&#xff0c;我们应该如何正确选择丝杆支撑座呢&#xff1f; 在选择丝杆支撑座时&#xff0c…

数据结构试题 16-17

先这样吧&#xff0c;&#xff0c;专业课不是统考&#xff0c;我发现每年的卷子风格都不太一样&#xff0c;侧重点也不一样。以及21的和16的发生了很大的改变。等明年1月再看看吧 那就先over啦 数据结构撒花&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&am…

PTA - 函数的定义与调用

编写一个名为collatz()的函数,它有一个名为number的参数&#xff1a; 如果number是偶数,那么collatz()就打印number加上2如果number是奇数,那么collatz()就打印number乘以2 函数接口定义&#xff1a; def collatz(number)裁判测试程序样例&#xff1a; /* 请在这里填写答案…

Windows10 + fydeOS双系统!简单几步完成

前言 最近发现小伙伴对于fydeOS热情是真的不减&#xff0c;啧啧啧……今天闲来无事&#xff0c;就来讲讲双系统Windows10 fydeOS的安装方法吧&#xff01; Windows10 FydeOS双系统安装过程其实很简单&#xff0c;不过要建议先安装好Windows10系统。 虽然先安装好fydeOS之后…

FineReport报表

一、报表类型 模板设计是 FineReport 学习过程中的主要难题所在&#xff0c;FineReport 模板设计主要包括普通报表、聚合报表、决策报表三种设计类型。 官网&#xff1a; ‘‘报表类型简介- FineReport帮助文档 - 全面的报表使用教程和学习资料 ‘’ 二、聚合报表 2-1 介绍…

生育是家庭和个人的重要的选择

生育是个人和家庭的重要选择&#xff0c;而国家对于生育政策的制定应该综合考虑多种因素&#xff0c;包括人口结构、经济发展和社会稳定等。同时&#xff0c;我们也应该认识到&#xff0c;男女不应该成为决定一个人是否能够生育的因素。男女在生育中扮演着不同的角色&#xff0…

java学习--集合(大写一.1)

看尚硅谷视频做的笔记 1.集合框架概述 1.1生活中的容器 首先知道集合是来解决什么问题的&#xff1f; 1.1.1内存层面需要针对于多个数据进行存储&#xff0c;此时&#xff0c;可以考虑的容器有&#xff1a;数组、集合类 对于内存层面的来说&#xff0c;断电后数据就不复存…

玩转Matlab-Simscape(初级)- 10 - 基于COMSOLSimulink 凸轮机构的控制仿真

** 玩转Matlab-Simscape&#xff08;初级&#xff09;- 10 - 基于COMSOL&Simulink 凸轮机构的控制仿真 ** 目录 玩转Matlab-Simscape&#xff08;初级&#xff09;- 10 - 基于COMSOL&Simulink 凸轮机构的控制仿真 前言一、简介二、在Solidworks中创建3D模型&#xff…

强化学习和Q-Learning的综合研究

目录 一、说明 二、什么是强化学习&#xff1f; 三、监督学习、无监督学习和强化学习之间的区别。 四、强化学习中使用的术语。 五、强化学习中的智能体-环境交互&#xff1a;一个迷宫示例。 六、贝尔曼方程。 七、马尔可夫决策过程 &#xff08;MDP&#xff09; 八、马尔可夫决…

WebHttpServletRequestResponse(完整知识点汇总)

额外知识点 Web核心 Web 全球广域网&#xff0c;也成为万维网&#xff08;www&#xff09;&#xff0c;可通过浏览器访问的网站 JavaWeb 使用Java技术来解决相关Web互联网领域的技术栈 JavaWeb技术栈 B/S架构&#xff1a;Browser/Server&#xff0c;即浏览器/服务器 架构模式…

功能测试 之 单模块测试----轮播图、登录、注册

单功能怎么测&#xff1f; 需求分析 拆解测试点 编写用例 1.轮播图 &#xff08;1&#xff09;需求分析 位置&#xff1a;后台--页面--广告管理---广告列表(搜索index页面增加广告位2) 操作完成后需要点击admin---更新缓存,前台页面刷新生效 &#xff08;2&#xff09;拆解…

生信算法8 - HGVS转换与氨基酸字母字母表

HGVS 概念 HGVS 人类基因组变异协会(Human Genome Variation Society)提出的转录本编号&#xff0c;cDNA 参考序列(以前缀“c.”表示)、氨基酸参考序列(以前缀“p.”表示)。cDNA 中一种碱基被另一种碱基取代&#xff0c;以“>”进行表示&#xff0c;如&#xff1a;c.2186A&…

ETO MARKETS:美债高额利息——美国财政的不可承受之重

摘要 2024年&#xff0c;美国联邦政府债务的利息支出预计将达到8920亿美元&#xff0c;这一数字比国防开支还要多&#xff0c;凸显了政府债务和利率上升的双重压力。国会预算办公室&#xff08;CBO&#xff09;预测&#xff0c;利息支出占GDP的比例将继续上升&#xff0c;这意…

【IDEA】Spring项目build失败

通常因为环境不匹配需要在file->projectstructure里面调整一下。

Flink Sql Redis Connector

经常做开发的小伙伴肯定知道用flink连接redis的时候比较麻烦&#xff0c;更麻烦的是解析redis数据&#xff0c;如果rdis可以普通数据库那样用flink sql连接并且数据可以像表格那样展示出来就会非常方便。 历时多天&#xff0c;我终于把flink sql redis connector写出来了&…

性能测试(五)—— 数据库性能测试-mysql

1 mysql性能测试的主要内容 MySQL数据库介绍MySQL数据库监控指标MySQL慢查询工作原理及操作SQL的分析与调优方法MySQL索引的概念及作用MySQL索引的工作原理与设计规范MySQL存储引擎MySQL实时监控MySQL集群监控方案MySQL性能测试的用例准备使用Jmeter开发MySQL性能测试脚本执行…