ML.NET, Azure Functions and the 4th Industrial Revolution
TLDR; There is a lot of hype around AI & ML. Here's an example of using ML.NET & Azure Functions to deliver a series of micro-optimisations, to automate a series of 1 second tasks. When applied to business processes, this is what the 4th Industrial Revolution could look like.
We're in the 3rd major hype cycle for AI and Machine Learning, and if we over-promise and under-deliver again, the 3rd AI Winter will soon be upon us.
Andrew Ng (of Google Brain / AI Fund) succinctly described the current state of play:
"If a typical person can do a mental task with less than one second of thought, we can probably automate it using AI either now or in the near future."1
When you look at the work / processes carried out by most organisations you can break them down into a series of 1 second decision-steps. If you apply Machine Learning, reactive workflows and the API Economy to the problem space, we start to get to the heart of what the 4th Industrial Revolution could deliver.
If I take a standard process I'm responsible for - doing my business expenses - I can break the process down into the following steps:
- Look through online bank statement, decide which transactions are expenses
- Take a screenshot
- Create new expense in accounts system
- Select relevant category
- Select VAT band
- Transcribe amount
- Upload screenshot
- Click the "Create Expense" button.
Only steps 1 & 2 require my intervention. If I had a PA, I could delegate steps 3-8 to them, so why couldn't I delegate this to an AI powered system? So I decided to build one.
I used Azure Durable Functions to orchestrate the end-to-end process, and Cognitive Services Computer Vision OCR service 2 to turn my screenshots into text. I used my previously uploaded expenses to train a ML.NET model that could predict expense category based on transaction description and hosted this Model in Azure Functions, which also interacts with our accounts system (the wonderful FreeAgent) API to create the expense.
On average it takes me 2 hours a month to do my expenses. That's 1 whole day per year spent doing a manual process.
It now takes a few seconds.
As this is all hosted on Serverless, the cost is measured in pence per million executions.
Now imagine how you could apply this approach to your own business processes.
This is the promise of the 4th Industrial Revolution.
What Artificial Intelligence Can and Can't Do Right Now - Harvard Business Review, November 9th 2016↩
Using John Carlisle's excellent Azure Function Extensions for Cognitive Services, available on NuGet.org↩