Learning in Modular Systems
CARNEGIE-MELLON UNIV PITTSBURGH PA ROBOTICS INST
Pagination or Media Count:
Complex robotics systems are often built as a system of modules, where each module solves a separate data processing task to produce the complex overall behavior that is required of the robot. For instance, the perception system for autonomous off-road navigation discussed in this thesis uses a terrain classification module, a ground-plane estimation module, and a path-planning module among others. Splitting a complex task into a series of sub-problems allows human designers to engineer solutions for each sub-problem independently, and devise efficient specialized algorithms to solve them. However, modular design can also create problems for applying learning algorithms. Ideally, learning should find parameters for each module that optimize the performance of the overall system. This requires obtaining local information for each module about how changing the parameters of that module will impact the output of the system. Previous work in modular learning 1, 2 showed that if the modules of system were differentiable gradient descent could be used to provide this local information in shallow systems containing with two or three modules between input and output. However, except for convolutional neural networks, this procedure was rarely successful in deep systems of more than three modules. Many robotics applications added an additional complication by employing a planning algorithm to produce their output. This makes it hard to define a loss function to judge how well the system is performing, or compute a gradient with respect to previous modules in the system. Recent advances in learning deep neural networks 3, 4 suggest that learning in deep systems can be successful if data-dependent regularization is first used to provide relevant local information to the modules of the system, and the modules are then jointly optimized by gradient descent.