Machine learning projects are very exciting but require a lot of preparation. A lot of people tend to just simply dive right into creating models and producing useful output. However, a lot of people will be surprised to hear that the most important aspects of the projects might not be technical at all. In this article, we will take a look at the three things you need to take a look at in order to make sure that your ML project is a success.
Asking the Right Questions
Before you even begin any development work, you need to make sure that you have asked yourself the right questions. The first thing that you should consider is your objective. This could simply be a question that you are trying to find the answer to. If your objective is not properly defined, you will waste a lot of time just collecting and analyzing data and producing a product that is of no use to anyone. Additional questions to ask yourself include:
- What are your business goals? – While a lot of businesses get into machine learning by experimenting, you should always have clear business goals that you are trying to achieve with your product. This could be something like reducing costs, increasing revenue, or something else, but make sure that this is well defined from the very beginning.
- How do you measure success? – It is important to set benchmarks for your project so that you know that you are on the right path. However, these benchmarks need to be quantifiable. When you come up with some ideas, be sure to run it by business analysts so that each element of your business in agreement that the goals are meaningful and attainable.
- How will you acquire the right talent? – Finding the right people who have the skills to perform the job is difficult in the current IT landscape. Furthermore, even if you are able to find the right candidates, they could be expensive. What a lot of companies are doing is outsourcing mundane tasks such as data annotation, in order to pay more for data scientists and other ML experts.
- How will risk be handled? – Machine learning is a very innovative filed and comes with some risks. You may find out that you need a lot more data to train the ML algorithms or that the data you are currently using is simply not good enough. You always need to have a backup plan to keep your project from collapsing.
Speaking of collecting data, this brings us to the next thing you must consider which is how you will prepare the data.
Regardless of the industry, your product is geared towards, you will need more than simply raw data to train your ML models. One of the most important data preparation methods is data annotation. Just like human beings rely on their parents, siblings, and friends to teach them about the world that surrounds them, ML algorithms require people to teach them as well. This is necessary if you want your product to recognize and label objects in the real world. Self-driving cars are a great example. They need to recognize everything they encounter on the road and be able to navigate around it.
This entails countless hours of human annotators drawing \2D and 3D boxes around objects and labeling everything they see in the image. As you can imagine, this could get extremely costly since lots of data needs to be annotated. Outsourcing this part of the project could save you a lot of time, money and hassle because you will be able to focus on developing your product. While we used self-driving cars in this example, data annotation is used in a wide range of industries and is the foundation of machine learning projects.
The reason this part of the project is so important is that if you train your models with the wrong data, it could be too costly to fix. Furthermore, if erroneous data was used to train your ML models and it was released to the public, the result could be disastrous. For example, let’s stay with our self-driving car project mentioned above. If the data was not accurately annotated to represent, cars, pedestrians, road signs, etc. the final product could be simply too dangerous to release on the road. This will also come with all kinds of PR related nightmares since your product will lose a lot of trust in the eyes of the consumers. Therefore, be very careful with how your data is annotated since this will help keep your project on track.
What Impact Will Your Product Have?
This is very difficult to measure or foresee, but based on all of the data that the ML algorithms have analyzed, they must be able to produce some kind of output. Since the machine is analyzing only pure data, it will not take into account any moral or ethical considerations. This is often the case when companies use ML to find ways of cutting costs or increasing productivity. If you feed into it statistics about employee performance, your revenue, goals and other business data, it might suggest something like cutting the number of vacation days or increasing working hours.
This is when you really have to make an emphasis on putting in the right data. A lot of companies will only input that that is publically available or that they can mine, but will disregard data that must be paid for in order to obtain. In many cases, the data that is behind the paywall will be able to help you, users, the most since it will be more accurate and without biases. There are further ethical considerations such as tracking people’s activities without their consent, but this is beyond the scope of this article.
Finally, consider the algorithms that are to produce the output. If your product produces a questionable result, people will naturally want to know how your product came up with this answer. This can be difficult if the algorithms are proprietary. If you release this information, you will disclose the inner workings of your product to your competitors. However, imaging AI-powered crime-solving techniques that are able to analyze the crime scene and match the suspect to the crime. The accused will naturally want to know how the system works in order to uncover flaws. As you can imagine, this will cause a lot of problems.
Start with “Why”
While all of these questions may be difficult to answer when you are first starting out, start simply by asking yourself “Why are you creating your product?” This will provide you with a sense of purpose. Once you have identified a reason for your existence, it will be easier to identify business goals and the problems your product will solve. However, all of this just goes to show that the most difficult part of your project might not be technical. Your answers to the questions above will determine the course of your project. Needless to say, it is important that your project is advancing in the right direction to avoid unforeseen costs and delays.