首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >微调模型的最佳实践?

微调模型的最佳实践?
EN

Stack Overflow用户
提问于 2020-10-13 09:53:32
回答 3查看 652关注 0票数 1

我有几个关于微调过程的问题。我正在构建一个应用程序,它能够识别以下文档中的数据:

  • 身份证
  • 驾驶执照
  • 护照
  • 收据

他们都有不同的字体(特别是收据),很难匹配完全相同的字体,我将不得不在许多相似的字体上训练模型。

所以我的问题是:

  1. 为了更好的性能和准确性,我应该为每种文档类型训练一个单独的模型吗?或者在一堆类似于在这种类型文档上使用的字体的字体上训练一个eng模型是好的吗?
  2. 每种字体应该生成多少页的培训数据?默认情况下,我认为tesstrain.sh生成大约4k页。关于如何生成最接近实际输入数据的培训数据,可能有任何建议。
  3. 应该使用多少次迭代?

例如,如果我使用的字体具有较高的错误率,并且我希望目标是98% - 99%的准确率。

另外,也许你们中的一些人有处理这类文档的经验,也许您知道一些用于这些文档的常见字体?

我知道护照和身份证中的MRZ使用的是OCR-B字体,但是文件的其余部分呢?

提前感谢!

EN

回答 3

Stack Overflow用户

发布于 2020-11-14 19:16:45

Ans 1你可以训练一个单一的模型来达到同样的目的,但是如果你想检测不同的语言,那么我认为你需要不同的模型。

Ans 2如果您正在寻找一些数据集,那么请看一下这个Mnist Png数据集,它有来自各种计算机字体的数字和字母表。这里有一个指向一些初学者代码的链接,以使用在Py火炬中实现的数据集。

Ans 3您可以使用白金枪鱼为您的模型找到最好的参数集,但是您需要一些

看看这些

他们正在努力完成类似的任务。希望它能回答你的问题!

票数 1
EN

Stack Overflow用户

发布于 2020-11-15 02:27:25

  1. 我会训练4种不同类型的分类器来分类身份证、执照、护照、收据。基本上,你知道护照是护照,还是驾驶执照等等。然后,我将有4种模式,用于翻译每种特定类型(护照,驾驶执照,身份证和收据)。应该注意的是,如果您正在使用多种语言,这很可能意味着根据每种特定的语言创建4个模型,这意味着如果您有L语言,则需要4*L的模型来翻译这些模型。
  2. 很可能是很多。我不认为那种字体真的是个问题。也许你应该做的是为诸如驾驶执照之类的东西定义一些模板,然后根据这个模板生成?
  3. 这是你最小的问题,只是测试一下。
票数 1
EN

Stack Overflow用户

发布于 2020-11-15 12:49:25

假设您所指的是一个ML数据模型,它可能用于使用计算机视觉执行ocr,我建议:

  1. 按照应用程序需求的要求设置分类法。这意味着按扫描文档类型(png、jpg tiff等)对预期的字体集进行分类。若要包含在适当的数据集中,请执行以下操作。选择与正在使用的字体最接近的字体以及需要收集的信息类型(仅为数字,字母字符)。
  2. 对您的数据集执行数据清理,并确保您具有OCR功能的同质数据。例如,所有文档图像都应该是png类型,最大维数为46x46,以便有一个合适的训练模型。请注意,较高分辨率的图像和较小的比例意味着更高的精度。
  3. 满足手写体以及,如果你有损坏或不可见的字体图像.如果纸张上的字体不清楚可见/磨损,这可能会改进字符转换选项。
  • 如果您在mnist提供的数据集上使用带有TF的keras模块,当您达到98%-99%的精度以获得更多的控制时,设置一个ML模型培训的取消规则,以防您期望图像中的字体容易出错(如前所述)。这有助于避免在培训数据集中出现不良图像时出现更高的错误边缘。对于一个1000+图像的数据集,一个很好的设置将使用TF密度为256个和5个周期。可以找到一个样本训练数据集这里

如果您只需要对您的应用程序进行一些自动化操作,或者进行需要从图像中转换OCR的数据输入,那么一个很好的开源解决方案就是使用通过PSImaging模块(Powershell)自动收集信息的方法,使用从png中检索到的置信度,并针对当前的数据集运行它们,以提高您的字符匹配精度。您可以找到相关的链接这里

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64332859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档