AI is still all the hype, and incredible progress is being reported every day. New companies and products are popping up every day, and AI is destined to be a big part of our daily lives in the future.
Investors are looking for the next big AI-enabled startup and boards are asking CEOs and CTOs to make sure they do not miss out on this great blue ocean or become obsolete when the new AI-enabled startup comes racing past.
Companies are being sold for incredible amounts of money simply because they have new and groundbreaking AI technology.
So if you have a startup that is growing and delivering value, then sooner or later chances are that you or someone around you will ask, “Why don’t we add AI to our product?”.
Before you jump straight into it, powering up a heavy computer and start training your new AI, there are a few considerations to think about first.
Do you even need AI to make your product better?
The first question to ask yourself: Do you even need AI for what you are trying to do?
Adding AI for the sake of adding AI is not helpful. Instead, you need to think in terms of features valuable to your users.
Deciding to use AI to solve a problem, should not be a decision that is driven by sales, marketing or investors, instead it should be driven by the problem you are trying to solve for your customers.
Once you understand the problem, you are ready to discuss how to solve the problem, but still, AI is just one tool in the toolbox and while AI can solve many problems it might not be the best tool for your specific problem.
It is also important to be aware that not all problems can be solved with AI. For an AI to be able to solve your problem, it should be very clearly and precisely defined. It is also preferable to try to automate simple tasks as they are less costly and will often reach higher automation levels.
If the task definition, the quality requirements, or some other factors can change randomly or without the change being visible in the data used to train the AI, then the AI is likely to not perform well.
Many problems can be solved better, cheaper, and faster, using traditional algorithms, so using AI to solve those, will be a waste of time and money. The cost difference for development and running a traditional vs an AI algorithm can often be a factor 10, so it is definitely worth considering whether or not you really need an AI.
For AI to make sense, your data needs to have a pattern and the pattern needs to be something that can be generalized, meaning the pattern can be found in future new data.
Has it already been done?
There are many AI tools available and using one of those might very well be the best solution to your problem.
There are many great open-source AI models that you can start using (remember to check the license, but often you just have to write that you are using the work and I encourage you to donate too) and many commercial services have popped up with great AI solutions to specific problems.
While you will not own the technology behind the AI, you will be able to solve the problem for your clients, and unless you have some unique capability in your startup, you will probably be struggling to make something that is better than what is already out there.
Azure and Google are doing world-class Optical Character Recognition (OCR), YOLO is amazing at fast real-time object detection and it is pretty fantastic what texts GPT-3 can generate.
So before you build your own AI, search the web and see if someone has already solved it for you.
How do you handle mistakes?
Whether you use AI or traditional automation algorithms, hardcoded functions, or heuristics, there will always be mistakes made. Sometimes they can be costly and sometimes they will have no impact at all.
So you must ask yourself how these mistakes should be handled. The answer to this question will bring key insights into:
- Whether you really want to/can do this feature or not?
- What is the minimum expected performance level of the automation for it to have a real business impact?
- What will the cost of handling mistakes be?
That cost can be financial but it can also be user experience and brand image
The easiest case is when you don’t care about mistakes because their impact is small.
If you are building a recommendation engine, it might not matter much if the recommendations are completely off from time to time if they are mostly good.
But if your algorithm is computing a credit rating or helping humans make decisions that impact other people’s lives, then you probably can’t live with the mistakes.
Worse, beyond the mistakes, you need to take into account AI bias and fairness. Most AIs are trained on human-made data which has the same biases as… humans.
Such biases can be related to naming, race, age, gender, etc. and as much as we have procedures in place to reduce it for humans, the tolerance for a biased AI is low and you need to figure out such procedures to keep any AI bias or fairness issues in check.
If that liability can be handled by a third party providing the AI or automation service, that may also be a very good point in favor of using that third party’s automation solution, rather than having to handle it yourself.
Do you have the data you need?
To train an AI you need data and lots of it.
GPT-3 was trained on 45 Terabytes of text, DALL·E 2 used hundreds of millions of captioned images from the internet. There is no doubt that any successful AI is trained on a lot of data.
But you do not only need a lot of data, you also need good data!
If your AI is trained on bad data, you get a bad AI. Best case, it will not perform well for the task you need it to, but worse, it might even start to give results that could hurt your business eg. because of biases in your training data or because the data was not as clean and correct as you thought it was.
On March 23, 2016 Microsoft gave the world their chatbot called Tay. It was trained to have conversations with users on Twitter, but also to learn from the tweets it got back, and thereby “improve” all by itself.
Just 16 hours after it was launched Microsoft had to close it down after it tweeted a series of racist and offensive tweets.
In this case, Microsoft got a lot of free data, but unfortunately, most of it was tweets from trolls who found it funny to try to train Tay to be a troll itself, and they succeeded.
Sometimes it is possible to generate more data, from the data you get eg. by rotating images, stitching texts or labels together to form new text, and so on. It is also possible to buy or generate synthetic data for training. However, original good data beats everything.
Tesla has all its drivers giving them countless hours of driving videos, from many different cameras and enhanced with data from many other sensors, Google has all of us telling them which ads work and which don’t by registering our clicks (And just about everything else that happens in a browser) and if you look at your business with the right mindset, chances are that you could also be generating the data you need to train your next smart AI.
If you don’t, chances are that you should not be making your own AI.
Do you have the time and money?
The cost of computation is going down, and while Moore’s law might be slowing down, big computation power has never been as available as it is today. However, it is not free.
At the same time, the market for AI scientists has never been hotter, so finding the right people to drive your new AI research and development forward, will not be easy or cheap.
Once you find the right people, they will need time to understand the business subject matter to be able to work within your field and to work with experts within your industry.
They will need time to experiment with the types of models to use, the architecture of the models, the hyperparameters, and many other small bits and pieces that will need tweaking, for your AI models to really take shape.
I remember a time, when we had to wait for our computers to load, and in that time we might go for a cup of coffee or have a chat with the person next to us. For most daily tasks this is now a thing of the past, but for training AI it is not.
It is very common for a training session to take days or weeks to complete, even on those big cloud computers optimized for AI or the expensive training servers full of GPUs, and most often the first training run will not be the one to put in production.
So you need to be realistic about what kind of an investment you are looking at and what time frame you are working with. This will vary a lot depending on the complexity of the AI you are building but I think we all have a gut feeling that Elon is not getting to those self-driving cars, cheap and in a short timeframe.
Creating AI to solve hard problems in your business is a great opportunity that we did not have years ago, but before rushing into it, your business needs to be ready to take on the big task of making it a success. Before you embark on this journey, you need to consider:
- Do you even need it?
Are you solving a real problem for your customers or are you just fascinated by the new shiny AI object?
Do you really need AI to solve the real problem or are there other easier ways to solve the problem?
Can AI solve this problem?
- Do you need to be the one solving the problem?
Make sure you check to see if the problem has already been solved by someone else who would love to sell or “give” it to you and if so, consider if you can do it considerably better.
- How do you handle mistakes?
And avoid any liability related to bias and fairness?
- Do you have the data?
It is impossible to train an AI without the right data and a lot of it. How do you plan to get access to this kind of data and will the data work for what you are trying to achieve?
- Do you have the time and money?
Are you looking for a fast and/or cheap solution to your problem? Then it is likely that AI is not for you at this time.
At Pixelz, we identified our problem – being able to deliver images faster, with the right quality, and at the right price. We were convinced that AI could help us do that.
We started investing in our own AI in 2016 because the AIs already available on the market could not solve our challenges. We work with professional e-commerce images, and though there were a lot of AIs made for working with images, none of them worked with the level of detail or with the resolutions we needed.
In the years building up to this, we had built a workflow system that produced the data we needed to train an AI, so we felt it was the right time to invest.
It took us around 1½ years to get the first working prototype, with a team of 2 AI researchers with approximately $80,000 worth of hardware.
Our team of AI researchers has grown to 5 people, and our latest AI training server is a beast costing us a bit more than 200.000$, and that’s not even considered a big server in “AI-land”.
Initially, our time saving was only a few % but over the years we have improved that first AI, added many more AIs, and also added automation using traditional visual algorithms. Today we are able to automate around 70% of our process!