免责声明:我完全没有机器学习/数据科学的背景,也不熟悉数据科学的通用术语,所以请多多包涵。
我正在尝试使用 Python 制作一个机器学习应用程序来提取发票信息(发票编号、供应商信息、总金额、日期、税款等)。截至目前,我正在使用 Microsoft Vision API 从给定的发票图像中提取文本,并将响应组织成一个自上而下的逐行文本文档,希望它可以提高我的准确性最终的机器学习模型。我目前的情况是严格使用字符串解析,这种方法对于发票号、数据和总金额都非常有效。
然而,当涉及到供应商信息(名称、地址、城市、省份等)时,由于我的脚本依赖于地址检测(因为与其他地址相比,地址具有非常不同的格式),字符串解析几乎不起作用发票上的信息)。由于发票上出现的数值数量众多,税务信息难以解析。
所以(这就是我迷路的地方) 我设想了一个机器学习模型,该模型将输入来自用户的单个发票图像,其输出将是提取的发票信息。我目前正在研究 Azure 机器学习工作室,因为它的即插即用方面对我很有吸引力,而且它似乎很容易使用和试验。但是我不知道初始数据集的要求是什么!我是否应该用一堆示例发票中的必要信息(发票编号、总金额、日期……)填充我的数据集(顺便说一句,以 CSV 格式)?如果不是,我应该在我的数据集中包含哪些其他信息?我在想重要信息出现在图像上的位置的 xy 坐标对。
最后一个问题与这个问题范围有关,哪种算法(回归、分类、聚类)甚至可以从输入文本中“提取”(或帮助它)信息?据我所知,回归预测数值(即 2 + x = 10,因此 8 + x 可能是 16)和分类“标签”事物(即,此图像包含一棵树,此图像不包含)。我对聚类不太熟悉,尽管我认为识别输入文本的结构可能很有用。
总结一下:发票的哪些特征可以填充初始数据集以初始化模型?如何使用聚类算法来识别发票的结构?我如何在这个问题中使用回归/分类算法,这些算法需要哪些输入才能提供有意义的结果?
任何帮助/指导/反馈将不胜感激。对不起,我缺乏知识,但这个领域非常有趣,需要一些帮助来解决这个问题。谢谢:)