Low Rank Optimization for Efficient Deep Learning: Making A Balance between Compact Architecture and Fast Training