Introduction
We are in an era where AI has been convenient in our daily lives such as helping us write essays and helping us find the answers we needed instead of googling and searching for answers link by link.
In addition to productivity, one of the productive things for developers is having Pre-Trained models.
What is a Pre-Trained Model?
A Pre-Trained Model is where the model is already trained by a developer for other developers to use.
For example, a developer could create a model to detect cat images. That model can be accessible for other developers to use that model for their apps such as "A social media app that only show cat images by using a pre-trained model that filters out non cat images".
Advantage of using Pre-Trained Models
An advantage of using Pre-Trained Models is that the model is already trained for you to use by simply integrating an API or other methods to your projects. This results in less time and more efficient than creating one yourself.
Disadvantage of using Pre-Trained Models
A disadvantage is that models may not work under your unique circumstance.
For example, there can be a Pre-Trained model that detects ASL Alphabet from A-Z. The problem is that it is trained on Image Classification and not using Hand Landmarks. This results in the model not working in your environment since Image Classification captures everything such as the background and the Hand.
Additionally, some models are more accurate than others, leading to a lack of transparency of how the models are trained and the data used.
Why should Pre-Trained Models be used in Prototypes?
I believe models that are already trained should be use in prototypes such as showing your skills in AI in your personal projects for example. It gets to show the individual the skills of integrating a model and understanding how it works on the surface. Once a person master that fundamental, they can build their own such as using Teachable Machines or ml5.js.
Using a Pre-Trained model is fine as a prototype if you are working in a production-ready app. However, I believe it's best to train the model under your own dataset instead of using someone else's when you are launching your own app for others to use because:
- Your app should include your own unique dataset. Therefore, it is more accurate in your circumstance.
- More customization to your own model. You can add additional classes to your model instead of hoping that someone else model has that for you.
- Just a good learning experience to train and use your own model in your app. Just to show your skills of building your own model.
Overall, I believe using a Pre-Trained Model in the prototype shows how the functionality will work. Once the app is fleshed out, then it would be appropriate to train your own model to fit your circumstance.
What do you think? Let me know in the comments of your thoughts about this.
References:
Top comments (0)