Theoretical Issues in Deep Networks: Approximation, Optimization and Generalization