机器学习之应用举例

#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

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值