by Naveen Joshi – Director at Allerin; Process Automation, Connected Infrastructure (IoT); Research & Development on ML/DL
Algorithm developers are using transfer learning to reuse the experience gained by one algorithm as the starting point for building another one for performing related tasks. Humans can transfer their knowledge across different tasks. For instance, if a person knows how to ride a bike, then he can easily transfer his knowledge to learn how to drive a car. Transfer learning is a similar concept. It is a process that enables developers to use the experience gained by one model while performing one task and apply it to a second model to solve different but related tasks. It differs from the traditional machine learning method in a way that it uses pre-trained algorithms to jump-start the development of another algorithm.
Applications of transfer learning
One of the biggest advantages of transfer learning is that it speeds up the time required to develop and train an AI model. The quickness that it provides to develop new AI systems has paved the way for many transfer learning applications.
Transfer learning for NLP
NLP uses various techniques like text embeddings, machine translation, and dialogue and conversations to decipher and understand the meaning of texts. These different techniques are prepared using different training datasets for accomplishing various tasks like document classification, sentiment analysis, and language generation. The training data sets of these different technologies can be used together to create an AI model that can accomplish different NLP tasks. For instance, developers can create a conversational chatbot that can learn from knowledge gained by various NLP datasets to provide different NLP use cases.
Transfer learning for speech
Developers can leverage the benefits of transfer learning to develop and train speech recognition models. For instance, to develop a speech recognition system, developers require thousands of hours of speech as training data. But to train a speech recognition system from an existing model will require data from the first model and a few hours of additional speech data that is specific to new tasks. Let’s take an example of an AI system that can detect emotions based on the voice of people. To develop such a system, developers can transfer knowledge of pre-trained algorithms for speech recognition to their AI algorithms and then combine algorithms that can detect emotions.
Transfer learning for computer vision
One of the applications where computer vision excels is image classification. Computer vision uses several methods for image classification based on task-specific features like edge detection, blob detection, and scale space. Suppose a neural network is created to classify only a few animals say, for example, cats, dogs, and cows, but now the developer wants the network to detect horses too in images. Then developers can transfer the knowledge of an AI model that was created to detect horses and add it to their network so that it can detect horses along with other animals.