In this post I will review the second question that you should ask to qualify a business problem as a machine learning problem.
Can you clearly formulate the problem?
The following paragraph is written for those in the PM* filed. If you are not familiar with the PMI* concepts please proceed to the following paragraph.
If you are a PM or familiar with the PMI concepts think of the ITTO*s. Take the Ts out and focus on the IO. And every time that you think of the “process” replace the word with “algorithm”. There you go, you already know more than you thought you may know about Machine Learning. My hope is that more PMs be ready to manage ML* projects and not just to manage them but to manage them with joy.
If you think that ML maybe beyond your understanding and it maybe more suitable for someone with a CS* background, there is a good chance that you could be wrong. In today’s learning economy the secret to success is to have a learning attitude. The best news is that you can learn anything regardless of what you maybe told in the past. If there is a will there is always a way! I learned this from Michel Thomas when I was learning French. If you ever listen to his CDs the first thing that he says is that if you struggle to learn something, always remember that there is nothing wrong with your learning skills but there is definitely something wrong with the teaching methodology! If you ever try to learn anything in life and your first few attempts are not successful, do not give up. Look for another teaching methodology that matches your learning style.
Now back to the second ML question:
You need to clearly define the problem meaning that you need to understand what the input to the algorithm is and what the expected output will be. Are you clear what you are going to feed into the algo and what the output should be? The output is what you want to predict so it can (and should) be what you need. In other words, you want to tell the machine that given X, predict Y. Oddly enough you don’t even have to say “please and thank you” in this case!
To keep this as simple and high level as possible, I only encourage you to think of what your input and output should be for now and here are some examples to inspire ideas:
- Spam filtering: given certain text/category of emails, predict spams
- Sentiment Analysis: given customer reviews, predict sentiment
- Anomaly detection: given the customers credit card history, predict outlier behaviour
- Association rules: given a customer bought potato and onions, predict they will buy a burger
As you can see with ML the sky’s the limit! Think of the banking industry, they can now use machine learning to predict whether their leads would pay off their loan or not. What do you think that the input would be in this case? A person’s profile. This post is showered with good news and the third and last good news is that there are tools (expensive ones!) with very friendly GUI that allow you to run such predictions with a few clicks. Let me know if you’d like to learn more.
For more ideas and inspirations I suggest that you read some good Machine Learning stories. Here is a list that you an refer to:
- Machine Learning and the Spatial Structure of House Prices and Housing Returns
- Netflix Recommendations: Beyond the 5 Stars
- Machine Learning for Social Network Analysis: A Systematic Literature Review
- Machine Learning for Baseball
- How Facebook’s machines got so good at recognizing your faces?
So far you have learned that machine learning can help those who need to automate large complex tasks. You also learned that for running a successful ML practice your team will need to think of an input so that the output will be of value to the bottom line. As a leader you can challenge them at the stage when they think of formulating the problem. Are the input/output in alignment with your business strategy?
Are you still curious how you could start your ML journey? Please read my next post soon.
*PM: Project Management
*PMI: Project Management Institute
*ITTO: Input, Tools, Techniques, Output
*ML: Machine Learning
*CS: Computer Science