If your business problem is narrow, your only option is to develop or source the machine learning model yourself. With a narrow problem, we mean ML models that require domain or business process or machine or system-specific data.
Here are the five different ways to develop or source a machine learning model
- Develop them yourself using open source code or third-party R, Python, or other libraries like Tensorflow. Developing these fully on your own may be an option, but make sure that you have machine learning experts working for your company. It is not enough to have programmers and statisticians, although they are also needed. Machine learning is its own unique field of science.
- Buy an off-the-shelf model development tool, such as RapidMiner. Tools like this can be used by almost anyone. Using them doesn’t require programming skills or understanding of programming languages.
- License a business process specific solution from a software company. For example, there are service providers for predictive marketing, such as 6Sense, Lattice Engines, and Sidetrade.
- Buy machine learning functionality as a feature in your platform. For example, most Online Personalization Engines (OPE), Multichannel Campaign Management (MCCM), and Customer Relationship Management (CRM) solutions provide a recommendation, lead scoring, or churn propensity analysis as part of their solution. Naturally, with an additional cost.
- Buy the development and management of a machine learning model as a service from a consultancy and software development company. If you don’t have the knowledge, competence, and resources to develop and maintain the machine learning model, this might be your best option.
The quality – the accuracy of predictions – might vary between these five options. How to then choose between the different options?
A good rule of thumb is that if your data is from a more generic process, similar to what your competitors are running, then lower accuracy might be acceptable and you can source ML as a business process specific solution or part of the platform (options 3 and 4). But if your process and data are truly unique and ML ads a strategic component to your product or service portfolio, then you are better off developing the model yourself or source it as a custom project from a company that is specialized in advanced analytics and machine learning.