Learning with multiple stages of representation, typically implemented by a neural network. Depth, connectivity, objective, training experience and parameter sharing are distinct design choices; a deep architecture need not be convolutional or supervised.