I am excited to announce that our work on routing data flows per task in Multi-Task Learning models in order to improve the task count scalability is accepted for an Oral presentation at ICCV 2019 in Seoul, South Korea. This paper introduces Task Routing our method for routing data within convolutional neural networks and the PyTorch layer enabling this functionality.


As with any combinatorial problem, in MTL there exists an optimal combination of tasks and shared resources which is unknown. Searching the space to find this combination is becoming increasingly inefficient, as modern models grow in depth, complexity and capacity. This search duration grows proportionally with the number of tasks and parameters present in the model’s structure. Previous works in both MTL and STL rely on evolutionary algorithms or factorization techniques to discover their optimal way of learning, however this takes time and prolongs the training process. In our work, inspired by the efficiency of Random Search we enforce a structured random solution to this problem by regulating the per-task data-flow in our models. By assigning each unit to a subset of tasks that can use it we create specialized sub-networks for each task. In addition, we show that providing tasks with alternate routes through the parameter space, increases feature robustness and improves scalability while boosting predictive performance.


By using the Task Routing Layer (TRL) within a MTL CNN each task specific output gets its own specialized subnet which may be shared with other tasks to some extent. This disentangling of the task specific paths allows for fitting more MTL tasks within the parameter space of a single model. In the case of the UCSD Birds dataset, we are able to accomodate 312 classification tasks within one model.


If you find this repository usefull, please cite this paper:

Many Task Learning With Task Routing
Gjorgji Strezoski, Nanne van Noord, Marcel Worring
International Conference on Computer Vision (ICCV), 2019 [Oral]
[ArXiv] [Open Access] [Web]

author = {Strezoski, Gjorgji and Noord, Nanne van and Worring, Marcel},
title = {Many Task Learning With Task Routing},
booktitle = {The IEEE International Conference on Computer Vision (ICCV)},
month = {October},
year = {2019}