Transfer learning is the application of knowledge gained from completing one task to help solve a different, but related, problem. The development of algorithms that facilitate transfer learning processes has become a goal of machine learning technicians as they strive to make machine learning as human-like as possible.
Machine learning algorithms are typically designed to address isolated tasks. Through transfer learning, methods are developed to transfer knowledge from one or more of these source tasks to improve learning in a related target task. The goal of this transfer of learning strategies is help evolve machine learning to make it as efficient as human learning.
Transfer learning theory
During transfer learning, knowledge is leveraged from a source task to improve learning in a new task. If the transfer method ends up decreasing performance of the new task, it is called a negative transfer. A major challenge when developing transfer methods is ensuring positive transfer between related tasks while still avoiding negative transfer between less related tasks.
When applying knowledge from one task to another, the original task's characteristics are usually mapped onto those of the other to specify correspondences. A human typically provides this mapping, but methods are evolving that perform the mapping automatically.
Transfer learning examples
In machine learning, knowledge or data gained while solving one problem is stored, labeled then applied to a different but related problem. For example, the knowledge gained by a machine learning algorithm to recognize cars could later be transferred for use in a separate machine learning model being developed to recognize other types of vehicles, such as trucks.
Transfer learning is also useful during deployment of upgraded technology such as a chatbot. If the new domain is similar enough to previous deployments, transfer learning can assess which knowledge should be transplanted into the next. Using transfer learning, developers can decide what knowledge and data is reusable from the previous deployment, and transfer that information for use when developing the upgraded version.
To measure the effectiveness of transfer learning techniques, three common indicators are used: One is measuring whether performing the target task is achievable using only the transferred knowledge. Second is measuring the amount of time it takes to learn the target task using knowledge gained from transferred learning versus how long it would take to learn without it. Third is whether the final performance of the task learned via transfer learning is comparable to completion of the original task without the transfer of knowledge.