GPU-Accelerated Deep Learning: Essential GPU ideas, Deep Learning Frameworks, and optimization Approaches