本节介绍开发一个机器学习系统的具体例子,系统模块化后的性能分析及提升

介绍这部分内容的原因:

1、学习复杂的机器学习系统的如何组成

2、介绍机器学习流水线、资源分配、下一步的决策

3、机器学习的新理念

18.1 Problem Description and Pipeline

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)    【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

OCR流水线、复杂机器学习系统的模块化。

18.2 Sliding Windows

1、我们先来看行人检测:

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

滑动窗口检测:每次滑动多少?(1像素太慢  一般4像素or8像素)

                         窗口仅含人的部分?(逐渐放大窗口再遍历滑动)

2、每个分出来的小图片都扔到分类器中检测是否有行人:(分类器如何得到?

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

3、我们把很可能是文字的区域高亮,较可能为灰色,否则为黑色。然后利用“扩张”使得高亮变大,之后利用高宽比过滤一些高亮区域,在最终留下的高亮区域画框。

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

4、以上是文字检测部分,接下来将进行文字分割:

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

利用分类器,滑动窗口进行分割。

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

最后可以利用神经网络、逻辑回归等等方法为基础的分类器进行字符识别。

18.3 Getting Lots of Data and Artificial Data

如何获取大量数据?从何种渠道?

1、人工合成数据:(首先前提是一个低偏差的分类器)

  • 从网站上下载各种字体并搭配不同的背景;
  • 对已有字体进行扭曲、旋转、模糊等等处理。

语音识别的样例扩充:增加各种噪声

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

注意:我们要知道加哪些噪声是有用的

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

 

2、手动标记/Crowd source

【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

3、注意事项:

首先(可通过学习曲线)明确低偏差分类器;

其次要知道获得大量数据会花费的时间。

18.4 Ceiling Analysis:What Part of the Pipeline to Work on Next

之前我们把机器学习系统分为几个模块,如何知道哪一模块值得花时间和精力去改善呢?
【Machine Learning】18 图片文字识别(Application Example: Photo OCR)

通过ceiling 分析,每个模块的改进对系统性能的提升多大来决定。


 

 

 

 

相关文章:

  • 2021-12-03
  • 2021-11-17
  • 2021-12-08
  • 2021-07-25
  • 2022-12-23
  • 2021-12-05
  • 2021-05-18
猜你喜欢
  • 2021-09-26
  • 2021-05-23
  • 2022-12-23
  • 2022-02-07
  • 2021-05-03
  • 2021-11-12
  • 2021-12-10
相关资源
相似解决方案