Cracking the Code – Learning about Algorithms
An interesting topic that’s captured my attention recently, is algorithms. We use them in our Bots to make them more capable, but I don’t think I fully understood what they were, how they worked and just how often we interact with them.
So, in this blog, I’m taking a slightly different approach, as I bring you on my journey to develop a better understanding about algorithms, how they work and a few example of a few that we use with the Bots.
So, what is an algorithm? To my surprise, it’s not as complicated as I thought.. An algorithm is a set number of actions or rules which make up a process to complete a specific task, similar to a recipe. For example, you can think of the the system or data the algorithm is working with as ingredients (flour, eggs), the actions it completes like instructions (whisk this, bake that), and the intended outcome as the completed recipe.
There are also key characteristics to know that will help us better understand what makes an algorithm work:
Input – algorithms need data to action, without it there is nothing for it to create, compare, analyse etc.
Definition – every step of an algorithm is programmed in a specific way, being precise and with no unintended deviations.
Output – this is the end product or result performed by the algorithm after completing its set of actions.
Types of Algorithms
Hopefully, now your up to speed on what is an algorithm, and what it does. But, what types of algorithms are there? I’ll break down a few example that we recently talked about in our last webinar.
1. Fuzzy Wuzzy Match
The fuzzy wuzzy match algorithm is a powerful tool for comparing and matching strings that are very similar but are not a 100% match. An example of this algorithm being used in accounting is in a bank reconciliation. With data from different sources, matching items that have small discrepancies such as identifying ‘Woodworking LTD’ being a very similar to ‘Woodworking Limited’. This would allow a bot to reconcile these items as it understands the two in a similar as a person would.
2. Probably Approximately Correct (PAC)
PAC algorithms are designed to provide approximately correct answers with a high probability. It recognises that there may not always be a perfect match, but most of the data is correct with a small number of discrepancies or errors.
In accounting, these algorithms are often used for statistical sampling, allowing accountants to draw conclusions about an entire dataset based on a representative sample, reducing the time and resources needed for exhaustive analysis.
3. Exact Match
Exact match algorithms, as the name suggests, require a perfect match between input and reference data. In accounting, these algorithms are frequently employed in tasks such as verifying invoice numbers, account balances, or validating data entries. They ensure precision in critical financial operations.
There’s a lot more to algorithms than what we’ve discussed in this blog. You can go down a rabbit hole exploring different types, various use cases and capabilities. But, one thing to remember is algorithms are much easier to understand when you understand what the intended end result is and it’s understanding and the way it interacts with systems is similar to a human, but they can be a lot more capable than we are due to it’s speed, accuracy and capacity to store information.
I’m looking forward to exploring more about algorithms and AI, and what they’re capable of, and what they may be used for in the future. If you’d like to learn more about Automation and AI updated and follow along with the journey, stay tuned for another instalment of this series.
Make sure you join our growing community ‘the beanies’ for bookkeepers and accountants with insights, discussion and collaboration. Get signed up now!