Structured representation in deep neural network systems: from algorithms to hardware implementations.