机器学习之应用举例

article/2025/10/14 18:34:37

#Photo OCR

Photo Optical Character Recognition(照片光学字符识别),注重的问题是如何让计算机读出图片中的文字信息。

1、给定某种图片,它将图像扫描一遍,然后找出照片中的文字信息;

2、重点关注这些文字区域,进行文字分离,并对区域中的文字进行识别;

3、用一个分类器对这些可见字符进行识别。

将像这样的一个系统称为machine learning pipeline(机器学习流水线)。

 

#Problem description and pipeline(问题描述和OCR流水线)

  • 在很多复杂的机器学习系统中,这种流水线形式非常普遍,在流水线中会有多个不同的模块,每个模块都是一个machine learning component(机器学习组件)。

如果要设计一个机器学习系统,要作出的最重要的决定之一就是要怎样设计这个流水线的各个模块,需要设计整个流水线以及流水线中的每一个模块,这通常会影响到算法最终的表现。

 

#Sliding windows(滑动窗口)

  • 行人检测与文字识别相比,简单之处在于要识别的东西具有相似的长宽比,仅用一个固定长宽比的矩形就可以了。

为了建立一个行人检测系统:

1、从数据集中收集一些正样本和负样本;

2、用学习网络或者其他学习算法,向其中输入一个82*36的图块,来对y进行分类;

1、在图片中选取一个矩形块,把这个图块传递给分类器来检测图块中是否有行人;

2、将矩形稍微移动一点,继续传递并且识别;

···

n、直到遍历完图片。

然后使用更大图块,同上。

  • 矩形每次移动的距离是一个参数,一般称为step size(步长)/slide parameter(滑动参数)。

 

  • 左下图,深浅不同的灰色对应的是分类器认为该处有文字的概率,白色为认为有文字的概率很高。
  • expansion operator(放大算子):取左下图每个白色区域,然后扩大这些白色区域。

  • 观察这些图块然后判断出图块中是否存在文字分割的地方。

 

#Getting lots of data:Artificial data synthesis(获取大量数据:人工数据合成)

人工数据合成不适用于所有问题,而且将其运用于特定问题时经常需要思考改进并且深入了解它。但假如使用于你的机器学习问题,有时它能为你的学习算法轻松得到大规模的训练集。

人工数据合成主要有两种形式,第一种实际上是自己创造数据,第二种是我们已经有小的标签训练集,然后以某种方式扩充训练集。

  • 假如想要更多的训练样本,一个方法是用不同的字体生成字符,然后粘贴到任意不同的背景中。可以应用一点blurring operator(模糊算子)或者affine distortion(仿射变换),仿射的意思是进行等分、缩放和一些旋转操作。

  • 进行artificial warping(人工拉伸)/artificial distortion(人工扭曲)。
  • 需要思考哪些扭曲是合理的,哪些操作能够用来扩充。

语言识别:

  • 仅通过一个标签样本,通过人工添加失真引入不同的背景声音,很容易将一个样例扩充为更多的样本。

*警告:在引入失真合成数据时,如果你试图自己完成,那么你引入的失真应该具有代表性,这些噪声或者扭曲是有可能出现在测试集中的:

讨论:

  • crowd soucing(众包)/crowd sourced data labeling(众包数据标记)

 

假如遇到一个机器学习问题,有两件事情是值得做的,一个是用学习曲线做一个合理检验,看更多的数据是否真的有用,第二个就是假如情况是这样,通常坐下来扪心自问,要多久才能获取到10倍于当前所拥有的数据。

 

#Ceiling analysis:What part of the pipeline to work on next(天花板分析:下一步工作的pipeline)

ceiling analysis(上限分析):

  • 对学习系统使用一个数值评价度量
  • 遍历每个测试集,然后人为地告诉算法每一个测试样本中文本的位置,即要仿真出如果是100%正确地检测出图片中的文本信息应该是什么样的;
  • 然后继续运行接下来的几个模块,然后使用跟之前一样的评价量度指标来测量整个系统的准确率;
  • 然后进入下一个pipeline,一样遍历每个测试集···

进行上限分析的好处是知道,如果对每一个模块进行改善,它们各自的上升空间是多大。

在当你想花精力在模块上,上限分析可以用来确定这样做会不会有效果,整个系统的性能会不会产生明显的提高。

 

 


PS.内容为学习吴恩达老师机器学习的笔记【https://study.163.com/course/introduction/1004570029.htm】

 


http://chatgpt.dhexx.cn/article/qPtMEvmg.shtml

相关文章

机器学习的应用–大数据

说完机器学习的方法,下面要谈一谈机器学习的应用了。无疑,在2010年以前,机器学习的应用在某些特定领域发挥了巨大的作用,如车牌识别,网络攻击防范,手写字符识别等等。但是,从2010年以后&#xf…

什么是机器学习?有哪些算法和分类?又有哪些应用?看完你就懂了

导读:本文从大数据的概念讲起,主要介绍机器学习的基础概念,以及机器学习的发展过程,用一个形象的例子讲解大数据生态中的机器学习,并按照传统机器学习(包括分类、聚类、回归、关联规则、协同过滤、数据降维…

1.2 机器学习的应用

机器学习无处不在。 问:为什么机器学习已经成为人工智能的一个子领域? 答:通过编程能够让机器做一些事情,比如:如何找到从A到B的最短距离,现实生活对应着GPS导航。但是,有时候编程也存在难点&…

什么是机器学习?应用场景以及未来趋势

机器学习 (ML) 被定义为人工智能 (AI) 的一门学科,它使机器能够自动从数据和过去的经验中学习,以识别模式并在最少的人工干预下做出预测。本文介绍了机器学习的基础知识、其类型以及最重要的五个应用程序。它还分享了 2022 年机器学习的十大趋势。 目录…

学机器学习有什么用?机器学习可以应用哪些领域?

机器学习的目前在各个领域都非常实用,可以带来很多好处,包括以下几点: 学机器学习有什么用? 自动化:机器学习可以帮助自动处理大量数据和任务,减少人工处理的工作量。 预测性能:机器学习模型可…

机器学习有哪些应用场景?机器学习有什么用?

机器学习是一种广泛应用于各个领域的技术,以下列举几个机器学习的应用场景: 机器学习有哪些应用场景?机器学习有什么用? 金融领域:机器学习可以应用于信用评估、风险管理、欺诈检测等方面,帮助银行和保险公…

机器学习实战 | Python机器学习算法应用实践

作者:韩信子ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/41 本文地址:https://www.showmeai.tech/article-detail/201 声明:版权所有,转载请联系平台与作者并注明出处 收藏ShowMeAI查看更多精彩内容 引言 …

机器学习的应用方面,主要有哪些?

1、图像处理\识别(人脸识别、图片分类) 2、自然语言处理 3、网络安全(垃圾邮件检测、恶意程序\流量检测) 4、自动驾驶 5、机器人 6、医疗拟合预测 7、神经网络 8、金融高频交易 9、互联网数据挖掘/关联推荐 人工智能、大…

机器学习在各个领域的实际应用

机器学习在各个领域的实际应用 经常会被问到,现在机器学习、人工智能这么火,那么它到底有什么实际应用呢,在本文中,分享了一个来自Github的项目,这个项目整理了包括机器学习等数据科学技术在工业界的开源项目&#xff…

机器学习的应用——关于正确应用机器学习

引言 前阵子看到一篇文章,学习了一段时间的机器学习算法后,再回头看机器学习问题,发现要想利用机器学习去很好的求解一个问题,其实并不是一件容易办到的事情,尤其是能够对整个模型的解释方面,要想能够对模型…

机器学习在生活中的九大有趣应用

No1:虚拟个人助理 Siri、小冰、度秘是现在虚拟个人助理的典型例子。顾名思义,当你通过语音询问时,他们便会找寻相应的信息,比如你问“我今天的日程安排是什么?”“从德国到伦敦的航班是什么?”等类似的问题…

机器学习可以应用在哪些场景?机器学习有什么用?

我们在说机器学习分类的时候,简单介绍了一下不同机器学习方法,主要是解决是什么问题,在本节中具体介绍一些常用的应用场景,主要说明这些应用到底怎么用,不对其中的算法以及原理做深入的介绍。 机器学习的应用 1. 分类…

安装Linux操作系统(Centos)

安装Linux操作系统(Centos) 文章目录 安装Linux操作系统(Centos)一、创建虚拟机1.1.新建虚拟机1.2.选择虚拟机硬件兼容性1.3.选择虚拟空白磁盘1.3.选择Linux对应的Centos版本1.4.虚拟机命名和存放位置1.5.设置处理器配置1.6.设置机器内存1.7.网络类型选择1.8.I/O控制器类型1.9.…

Linux操作系统CentOS7安装

最近在学习Linux,今天记录下如何安装CentOS7操作系统。 1. 下载虚拟机软件 虚拟机选择的是VMware Workstation软件,可以访问这个链接下载:https://coding.net/u/aminglinux/p/resource/git/blob/master/README.md 2. 安装虚拟机 按照提示&…

CentOS Linux操作系统

对于windows来说,每一个分区有一个盘符,每一个盘符实际上不是一个硬盘,而是一个分区partition; 对于Linux来说,使用统一的目录树结构 /, /home/cherry, /root, /bin, /mnt, /usr, /etc. 一、Linux命令行 cd/pwd/ls 当前目录操作…

Linux 安装Centos7操作系统

安装前准备(vmware配置) 1. 在自己的vmware中选择文件-新建虚拟机 或者 点击创建新的虚拟机 2. 新建虚拟机向导中选择典型 3.稍后创建操作系统 4. 更改操作系统和和版本 5. 更改虚拟机名称和位置 6.选择磁盘大小和将磁盘拆分多个文件(防止一…

Linux - CentOS操作系统学习

Linux介绍 Linux 内核最初只是由芬兰人林纳斯托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。 Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。伴随着互联网的发展,Linux得…

安装LINUX操作系统(CENT OS)

转载:https://blog.csdn.net/sunshine1_0/article/details/80839430 centos镜像下载地址:https://www.centos.org/download/ 选择DVD下载即可 1. 安装虚拟机 在VMWARE中创建新的虚拟机 选择自定义 默认值,下一步 稍后安装操作系统 选择正…

LINUX操作系统centos安装

安装Linux之前需准备一下软件: 1、虚拟机:VMware workstations 2、镜像:CentOS-7-x86_64-DVD-2009.iso 首先先创建虚拟机 1、打开VMware,创建虚拟机 2、选择安装操作系统 3、 选择CentOS的版本 4、硬盘大小默认(20…

CentOS 停止维护,来看看国产操作系统中有哪些顶流!

前言 众所周知,CentOS 8 Linux 已于2021年底停止使用,取而代之的是滚动版本 CentOS Stream,而 CentOS 7 也将于 2024年结束其最后一个维护周期。 2022年,除了国外的 CentOS 替换方案,国内的 CentOS 替换方案又有哪些呢…