One of my favourite TV shows is called Grand Designs. It follows people on their journey as they design and build their ultimate dream home. Usually, it starts with a happy, upbeat couple, describing this amazing vision that they will be moving into by Christmas. Cut to three years later, and the not-so-happy couple is knee-deep in mud, contemplating their half-finished house, and thinking about selling a kidney. Having worked on AI projects, which can feel very similar to this, I can totally relate to how that poor couple feels!
So, to save you from a Grand Designs disaster, I am going to share 5 lessons I’ve learned from working on AI projects that will hopefully mean you get to keep all your body parts!
Lesson 1: Plan with Precision
It might sound obvious, but effective planning is the cornerstone of a successful AI project. To build a robust project plan, you need to identify the potential risks. Among the most significant risks in AI projects is the quality of data.
Consider these real-world examples:
Example 1: In one of our recent projects, we relied on a publicly available, supposedly "well-curated" dataset to train an AI model. However, once we delved deeper and understood the specific requirements of our data, we realized it was far from perfect. This forced us to develop a suite of tools to clean and label the data and generate variations to effectively train the model. We even had to hire students to contribute human intelligence for manual tasks.
These unexpected expenses weren't initially budgeted for because we had assumed the data was of a high quality.
Example 2: Another instance involved working with privately held data, such as legal contracts. Privacy and confidentiality were paramount concerns. We had to collaborate closely with our partners to establish the necessary contracts and digital mechanisms to gain access to their data securely.
These examples highlight the critical importance of planning for quality data. The quality of data directly impacts the success of your AI models.
Lesson 2: Choose Wisely – The Right AI Approach
AI comes in various forms and sizes, similar to choosing between a ready-made house and a custom-built dream home. In AI projects, you can opt for off-the-shelf solutions provided by tech giants like Microsoft and AWS or decide to create your own custom AI models.
Here's the catch: developing custom AI models introduces complexity and uncertainty, this will invariably end badly if you have budget constraints. To mitigate these risks, we've found that during the minimum viable product (MVP) stage, it's often best to leverage off-the-shelf solutions. Once you've proven the value, you can explore more cost-effective ways to fine-tune your AI models.
In essence, Lesson no 2 is to choose the right type of AI for your specific project stage and budget.
Lesson 3: Embrace Uncertainty
AI models are all about probability. They don't provide certainties; instead, they offer probabilities of outcomes. This is quite different from the deterministic nature of traditional software development, where input A consistently produces output B.
Training AI models involves managing uncertainty and fine-tuning to achieve desired results. It can be a frustrating process, akin to taking two steps forward and one step back. For instance, you might have a model that's 90% accurate, only to see its accuracy drop to 80% during further training, with no clear explanation.
This level of uncertainty can be challenging, especially for project timelines and budgets. It's crucial to prepare for these uncertainties when working on AI projects.
Lesson 4: Budget for AI's Costs
AI development, particularly model training and fine-tuning, can be costly. To succeed in AI development, your team needs the flexibility to experiment with different approaches without constantly worrying about costs.
You'll need affordable access to computing power and bandwidth. While major cloud providers offer AI services, they may not be budget-friendly for smaller projects. In such cases, creative solutions, like purchasing a high-powered AI server, can significantly cut costs. We've seen impressive results from a more budget-friendly approach, with our AI server outperforming expensive alternatives.
Lesson no 4 reminds us that AI is expensive but offers creative ways to manage costs effectively.
Lesson 5: Use AI Sparingly – Only When Necessary
Finally, and perhaps most importantly, remember that AI is just one tool among many. The mantra among experienced AI professionals is to use AI only when it's truly needed. Many technology solutions can be achieved without AI, using deterministic, rules-based programming.
Consider a hybrid approach where you use AI alongside deterministic code. Use a rules engine for problems that can be answered efficiently and with high accuracy. Reserve AI for the complex, ambiguous cases that demand its unique capabilities. This approach not only reduces the effort required to train AI models but also makes your project more cost-effective.
So, Lesson no 5, never rush into using AI unless it's genuinely necessary for your specific project.
There you have it, five invaluable lessons to help you navigate AI projects successfully. Remember, with meticulous planning, the right approach, an acceptance of uncertainty, prudent budgeting, and a judicious use of AI, you can avoid the pitfalls that can turn your AI project into a "Grand Designs" disaster.