Applying Machine Learning to Solve Business Challenges
No doubt you’ve heard the term ‘machine learning’ (ML) a lot – artificial intelligence and ML are not the same, but what’s the difference? ML is a means of developing AI. Although AI can be developed through explicit coding, this involves huge amounts of complex code, and ML is typically a much more efficient way to develop AI. This involves ‘feeding’ very large amounts of data of some type to an algorithm, which ‘learns’ about that data. There are now many fairly commonplace ML applications, such as voice recognition systems, recommendation engines for users of retail websites, automated face recognition, etc.
So how can you use ML to solve critical problems in your business? A great way to start is to ask yourself what information you don’t have that would be very valuable. What does your business really need to know to grow and thrive that it doesn’t have? For example, are there patterns of user actions on your retail website that can reliably predict a sale?
Is Machine Learning the answer?
First, is an ML solution appropriate to your problem? If a set of explicit rules can solve your problem, then you probably don’t need ML. Ie, If there is a reasonably small combination of inputs, the computer can be ‘told’ what to do to solve a problem , so it doesn’t need to ‘learn’ about input data. Also consider if a sophisticated ML solution is necessary – can you use relatively simple, tried and true linear regression to get the answers you want?
However, a ML solution is appropriate to many problems – and in fact, is often the only way to solve problems that involve an infinite number of possible input combinations, where it is practically impossible to hard-code a solution. – these days, many organisations have huge databases that are ideal for ML applications.:
Classification ML solutions are fed very large amounts of labelled data in order to classify new data. ML solutions can classify various types of data, such as images. By feeding an algorithm a very large number of photos that have been tagged to identify the faces in them, ML can be trained to identify faces in photos with extreme accuracy. ML may also be trained to recognise patterns in text – Facebook can use ML to classify the tone of users’ posts by learning about how users reacted to particular posts (using its ‘reaction’ buttons). Organisations that log and classify customer queries into categories such as ‘technical support’, ‘compliment’, ‘complaint’, ‘product query’, etc, can use ML to automatically classify new customer queries. A web email service can get very large amounts of data on ‘spam’ and ‘non-spam’ emails from its human users hitting the ‘spam’ button, and thus use ML to improve spam filtering.
Many ML solutions use more general pattern recognition – banks can use labelled instances of fraudulent transactions to detect new fraudulent transactions, and search engines can feed ML a range of different types of data, such as the most popularly clicked on search results for particular search types, etc, to improve search result quality. This is an example of where ML is the only really effective means of solving a problem – trying to improve web search quality through coding hard and fast rules is practically impossible. ‘
The next thing to ask is, do you have data that’s relevant and useful? You may have big data, but what if that data:
- Has a lot of inaccuracies and corruptions?
- Is too old to still be relevant? If your area of interest is subject to a lot of change (for example, in the types of products sold, or the regions they’re sold in) it’s especially important to have data that’s up-to-date. If you sell pies and you’ve recently started to stock a lot more apple pies and less meat pies, then you probably need recent data. On the other hand, if you’ve always sold used cars in Melbourne, and your business hasn’t changed much over the years, then the age of your data may not matter as much.
- Maybe your data isn’t labelled, or isn’t labelled in ways that would be useful to ML. You might have a large repository of documents on a particular subject, but are they labelled or classified in ways that ML can be trained on that data?
If any of the above apply, your data will likely not be very useful for an ML application. An option may be to cleanse the data, but the benefits of cleansing would have to be weighed against the costs.
On the other hand, your data may be accurate and correct, but you need to think carefully about your objective and what data you’re going to feed the learning algorithms to achieve that objective. What data do you want ML to take into account and what data do you want it to disregard? There may have been significant past increases in sales of some products, but those products were loss-leaders. If there’s certain products you don’t want to use as loss-leaders again, then the relevant sales data should not be given to ML.
Supervised vs unsupervised Machine Learning
For practical purposes, and especially for organisations new to ML, supervised rather than unsupervised ML is recommended. What’s the difference? Supervised ML is developed by ‘training’ ML on labelled or tagged data, such as a collection of images of animals that are tagged ‘horse’, ‘cow’, ‘dog’, etc. Based on the labelled data, the application develops mathematical functions enabling it to later recognise new, unlabelled data – in other words, it ‘learns’.
On the other hand, an unsupervised ML application is one which finds patterns in unlabelled data – such as a very large database of images trees and flowers with no labels identifying which is which. Unsupervised ML would look for patterns in the data, with the objective of classifying the images into trees and flowers.
When starting out, it’s generally easier to realise real benefits from supervised ML rather than unsupervised ML.
Can you afford to be wrong?
Can your ML solution produce wrong answers some of the time? Inevitably, a ML application will not get it right 100% of the time. Therefore, should not autonomously make decisions if complete reliability is needed. An example might be ML that recommends an appropriate drug given a patient’s symptoms. Clearly, in this case a medical professional needs to make the final decision, but ML could be very useful in making suggestions. Often, with these kinds of problems, ML can perform initial classification, or make suggestions, but final decisions will be left to humans.
Organisations may hear about ML and want to jump on the bandwagon, but they need to think about how they can apply ML to those problems which, when solved, will add real and significant value. These should be problems where there is a good chance of producing real results. Unless this is the case, it’s likely there won’t be sufficient drive or commitment of resources to produce a result.
Developing Machine Learning applications
You should expect that producing useful, actionable results from ML won’t be easy, for all the reasons described in this article. Most ML applications are developed through an iterative process of thorough testing and results analysis, and refinement of both the learning algorithm and the data you feed it (ie, analysis of results may identify that certain data needs to be excluded or cleansed, etc.)
For these reasons, there are no off-the-shelf ML solutions. You will find that even if your problem is similar to many others to which ML has been applied, there will be many significant differences that mean that generic ML solutions don’t work.
If you are interested in learning more about Machine Learning and how it can help your organisation, contact us and have a chat with us today.