We previously explained why most small and non-tech companies should stick to working with AI vendors than building their own solutions. As with any generalization, there are exceptions.
If the solution passes all these tests then you absolutely need to build your own AI solutions:
- You have access to a large amount of unique proprietary data. Any large B2C company has significant data and if this data exists in multiple companies, it is likely that AI vendors probably already worked with the data and have the experience to mine it effectively. However, if this data does not exist anywhere else in the market, then vendors will not have experience with the data.
- Minor improvements in processing this data can lead to significant financial impact. Here the word minor is important. It is easy to work with a vendor who can quickly build a solution that performs OK. However, if minor improvements are impactful, then you want a focused team that has complete alignment of incentives with your business. It is easier to achieve that level of focus and alignment with an in-house solution.
- You already have access to or can easily access AI talent. This is probably the hardest part. An engineer willing to experiment with AI and an AI expert are two very different things. Experience helps in fine-tuning models and working with large datasets and an experienced team can provide better results faster.
Discover alternatives to in-house solution even in this scenario
Even when vendors have no domain-specific know-how and this AI solution can make or break your business, you may want to outsource it. Since this is a niche solution, you won’t find vendors with ready products. However, that is not the end.
There are hundreds of machine learning/AI consultancies that solve custom problems. Almost every major consulting company started such a unit. A contract that ensures alignment of incentives can solve your businesses’ problems and let you focus on your business. For example by sharing a portion of the benefits you reap from a better AI system, you can align incentives of the custom solution provider.
Life savers as you implement your in-house AI solution
If working with a custom solution provider also did not solve your problems, then you exhausted all options and need to build your own solution. We are also in the same camp as the data science problems we faced while mining vendor data were not common problems and we built our solutions. Most of these tactics are general best practices of building great software but I have also included the AI specific tactics we discovered:
- Focus focus focus: A brutally simplified specific solution is easier to build, test and maintain. Defining the scope is probably the most important part of the business.
- Re-prioritize the team as business priorities change: Unlike working with a vendor, you have a lot more flexibility with requirements when working with an internal team. So use it by ensuring they work on the correct problem.
- Use existing tools: There are too many data cleaning, preparation and model building tools, APIs and SDKs to list here. But I should mention that Tensorflow is one of the most popular tools and if you are not using it, would be a good idea to inquire why.
- Iterate: Current data science process is iterative. A model is built and fine-tuned over time. Sometimes your data scientists will come up with approaches that allow building such good models that turn your old models into garbage but this is rare.
These are our experiences so far, but we will build it over time as we improve our approach. Hope we helped you in the process.