3 ms·
Very interesting review, thanks for the read! If I may, I've had some different experiences. I work for one of the biggest supermarket chains in the US as part
by ajcp 6y ago
Very interesting review, thanks for the read! If I may, I've had some different experiences.
I work for one of the biggest supermarket chains in the US as part of the team implementing an invoice processing capability for the enterprise to utilize. We literally take in thousands of paper/non-digitized invoices a day, and in our testing have found Azure's Form Recognizer (AFR) to be very dependable and confidently accurate. I have also professionally used Google Form Parser and ABBYY's OCR engine, but not it's cloud offering.
> it's also the only service fast enough to be part of a synchronous pipeline.
I assume what you're talking about here is exposing the processing capability and response as part of a tool that is utilized by a person. While maybe as a one-off edge case, we've never seen the use in building for this. When talking about form processing the real goal of any enterprise is to get the invoice data into their system of record where it can be validated, addressed, and maintained. This does not require a "man-in-the-middle" approach wherein the user submits the invoice and then expects the results to be immediately returned so that they may...what, put them in the system of record, right? We've found that the "time to affect" workflow is the same regardless of whether it is hand-keyed or as the result of an AFR response to be programmatically submitted to the system.
> requires a custom model to be trained before extracting data
This is simply not true. AFR provides quite a few pre-built models[1] that we have found to return confidence scores consistently above 70%. To put that in perspective a human averages 66% accuracy when performing data-entry of this type[2]. Sure, they don't necessarily provide for invoice line items (which requires much more complex key-value arrays and matrices) they can be utilized to capture metadata on an invoice that can then inform on how and where it may be moved along in the "processing" flow.
We've also found that building a single, "monolithic [custom] model" able to address our specific vendor invoices with more finely tuned value returns has been fairly easy to build and maintain.
1. https://docs.microsoft.com/en-us/azure/cognitive-services/form-recognizer/concept-invoices https://docs.microsoft.com/en-us/azure/cognitive-services/fo...
2. https://www.sciencedirect.com/science/article/abs/pii/S0747563211000707 https://www.sciencedirect.com/science/article/abs/pii/S07475...
- mistrial9 6y ago> a human averages 66% accuracy when performing data-entry the cited material says something a bit different than that, but regardless .. different users and markets will have different tolerances for error, too
- ajcp 6y agoYes, sorry, it's a tricky concept to port over as the material says that 66% of the participants provided inaccurate inputs. So not accounting for an individuals verisimilitude it would be more accurate to say that roughly 66% of entries are inaccurate, as opposed to the average person being x% accurate.
- xpasky 6y agoWow, that paper is super strange! The outcome of visual check not adding any value to single entry seems incredibly surprising, yet besides all the fancy statistics in the paper, the authors made no attempt at all to investigate this surprising outcome further and hunt for an explanation. (The easiest experiment - try to see based on total time whether the participants didn't cheat; UX might have been an issue; ...)