开篇词:一门真正面向工程的深度学习进阶课程

开篇词:一门真正面向工程的深度学习进阶课程

大家好,我是深度学习算法工程师王学宽。现就职于某 AI 智能科技公司,参与教育+计算机视觉类创新性产品研发任务。曾在香港理工大学担任 RA,参与大规模图像检索项目的研发,后加入海康威视,参与 ADAS 视觉相关算法研发工作。曾发表多篇学术论文、申请多项国家专利,先后参与多项图像、自然语言项目相关课题研发工作,在深度学习领域具有深厚的专业知识和工程开发经验。运营有公众号:白话机器学习(微信号:simpleml90hou),开设有知乎专栏:《深度学习干货铺》。

很高兴能在接下来的十周里,通过《深度学习工程应用指南》达人课来分享深度学习在工程应用中的实战心得,包括在网络设计、训练调参、优化压缩、迁移剪枝等各个方面的技术知识和探索心得。希望能够通过通俗易懂的语言,带大家一起揭开深度学习的神秘面纱,帮助大家快速入门深度学习,并尽快展开工程实战项目。

深度学习入行的迫切性已无须强调,无论从行业发展前景、行业人才需求、国家人工智能发展战略等不同角度来看,深度学习作为人工智能发展的基石,在未来行业中必将大放异彩。目前,越来越多的企业,纷纷迈开了深度学习的第一步,并取得重要成果。对于从业者而言,行业的欣欣向荣带来更多的就业机会,更高的薪资待遇。越来越多的人开始希望投身到深度学习这个行业之中,从事工程或者算法类的相关工作。在实际工作中,入行者即便已了解了 Caffe 和 TensorFlow 等基础知识,但在实际工程设计时,依然会遇到各种各样的困惑,比如:

  • 我们在设计深度网络的时候有什么技巧和原则吗?
  • VGG、ResNet 网络如何应用在实际的芯片上?
  • BN 层应该放在哪里比较合理?
  • 网络越深越好还是越宽越好?
  • 训练时如此多的优化方法,一定是 SGD 吗?
  • 学习率怎么调比较合适?
  • 模型迁移、模型剪枝、模型压缩、模型精剪设计,这些都需要怎么去实践?
  • 序列问题中的 RNN 网络,怎样设计才能够确保网络更好、更快的收敛?
  • Siamese、Triplet 这样的网络要怎样训练?
  • 样本怎么处理、挖掘?
  • ……

而帮助大家认识这些问题,并尝试着解决这些问题,也是我推出这门课程的初衷。

课程优势

主要优势可以总结一下几点:

  • 全面的内容、快速入门到实战

    本课程内容涉及到工程实战深度学习中的各种概念、问题,内容全面、适合初学者从入门到快速实战,更面向工程开发。

  • 工程实战下的通俗概念阐释

    本课程涵盖深度学习各个不同领域涉及到的模型基本原理,并结合工程经验,对这些核心概念进行分析、解释。针对具体的数学推导公式,深入剖析。本课程在第二部分涉及到多个概念,每个课程将配有细致的图示化解释,通俗易懂。

  • 工程实战下的设计原则和技巧

    本课程重点介绍深度学习在实际工程实战时会遇到的一些问题,并针对这些问题,给出各种常用的解决技巧,另外,在设计网络时,也给出基本的设计原则,更加符合工程开发。

  • 更加直观的实战代码讲解

    本课程对网络设计原则、模型讲解的过程中,会引入大量的深度学习代码,以 Python 语言为主,来对模型、设计技巧、原则等问题进行说明,更加直观。

课程大纲

本课程共包括 23 个课时,分为四大部分。主要针对机器学习初学者、深度学习入门者以及其他想从事深度学习相关工作的从业者,分别涉及到深度学习的基本概念,模型原理,不同类别的网络模型,模型设计的基本原则、训练、优化、模型精简等等不同方面。另外,本课程还通过实际的网络设计,结合相应的原则来解决分类任务、序列任务等,加上动手实践过程,带领大家深入理解网络设计的基本原则和方法,并锻炼深度学习编程能力和技巧。

  • 第一部分(第01-02课):绪论。

    初窥门径。本部分带你初步认识深度学习、了解深度学习行业背景、发展状况以及如何进阶深度学习。

  • 第二部分(第03-14课):深度学习的核心理论。

    深谙其理。本部分从工程实践的角度出发,详细介绍深度学习中涉及到的各种各样的概念、原理,尤其在工业实战中的使用技巧和原则,帮助大家打好深度学习工程实战基础。

  • 第三部分(第15-20篇):工程实战中深度神经网设计原则。

    登堂入室。本部分从实际工程的角度出发,详细介绍卷积神经网、循环神经网的发展历程、工程设计原则和方法,并带领大家一起设计一个精简的深度网络,并用于目标检测任务。

  • 第四部分(第21篇):总结、回顾与展望。

    总结与超越。本部分对课程进行总结,回顾已经学习过的知识点,在此将这些知识点串成一条完整的技术路线,温故知新,并为大家接下来展开深度学习专业领域研究奠定理论基础。

关于深度学习如何学的疑惑

很多朋友会认为深度学习是一门工程类学科,也有人把它比喻成一个炼丹的过程,而 Caffe、TensorFlow 就相当于是炼丹炉,而深度网络则像是在炼丹。而深度学习框架的使用,使得这项炼丹技巧越来越大众化,越来越多的人慢慢开始忽视深度学习背后的科学知识,把它仅仅当做一门实验科学来做。甚至有人认为,只要调调包、调调参就够了。然而,真的是这样子吗?

我相信,有这样想法的人,即使是从事着这样行业,估计也不会有太高的成就。深度学习技术发展确实十分迅速,网络上各种各样的开源模型确实存在很多,那这些模型真的就只是调用下就可以了吗?

实际上,并不是这样子的。基础不扎实,首先你可能很难获得一份大厂的 Offer。国内外名企在招聘的时候,十分强调基础的重要性,而这里的基础并不是仅仅只看过西瓜书、NG 的课程这么简单,更需要你能够讲出其中的内部原理、机制。对于深度学习工程师,不仅仅需要你去调调参,同样也需要你去阅读大量的文献,设计新型的网络结构。

记住,想要走的远,就需要基础打得牢。不要相信那些网上的烟雾弹,迷失本心。付出多少才会收获多少,薪资也才会符合自己创造的价值。想想公司可能花闲钱来养你划水吗?答案一定是,No!

你将收获什么?

  • 扎实的技术岗位求职知识储备

相信很多订阅或者准备订阅这个课程的人,都是希望在未来能够投身到深度学习、人工智能这个行业中的,而目前伴随着行业人数、技术门槛等各方面的提升,很多公司在笔试、面试的时候,都更加关注深度学习基础是否扎实这一问题。在面试中,很多面试官喜欢提问深度学习模型背后的一些理论性的东西。因此,更加需要大家注重这方面的积累。本课程通过细致的原理剖析,帮助大家吃透深度学习中的各个理论,相信用来挑战接下来的面试应该是绰绰有余了。

  • 深度学习模型初识

很多同学在开始学习深度学习的时候,都喜欢从模型的角度入手,本课程同样也不例外,在介绍过深度学习的基本理论和方法之后,我们立刻将重点转移到真实的模型和方法中,通过以模型为载体,再次反观理论方法,相互印证,进而更好的推动读者对这两方面内容的理解。

  • 模型设计、模型压缩,更工程化的技术

本课程中涉及到了丰富的模型设计、压缩、迁移等工程实战相关知识,相信目前在网络上已经存在各种各样的关于 Caffe、TensorFlow 的视频教程,这些教程更多的偏向于纯粹的工程入门,更像是在教你用一门软件。对于工程化而言,模型设计原则、模型压缩方法、技巧等等往往具有更加重要的意义。它是我们掌握深度学习技术的进阶基础,一个合格的深度学习算法工程师,不仅要懂得如何设计模型,更需要懂得如何设计精简的模型。

  • 工程深度学习实例讲解

在模型讲解阶段,课程会引入大量的实战代码,并通过代码讲解,来带领大家深入理解不同模型的网络结构。而深度学习本身也更加强调实战能力,“纸上谈兵”没有实际意义。

作者寄语

我希望本课程的读者在掌握深度学习相关知识和技巧的同时,能够将所学应用到实际的项目中,时刻牢记,我们需要有更多的创新精神和意识,真正用 AI 技术去重新认识世界、改变世界,推动社会的进步。我相信,这个时代是人工智能的时代,同时也希望这个时代能够有你的身影。

最后,预祝每一位准备入行深度学习的朋友,均能够通过自身的学习与努力找到心仪的工作。如果大家有任何疑问和建议,也可以通过读者圈或者在我的知乎专栏“深度学习干货铺”留言与我交流,希望我们能够共同探讨、共同进步。

上一篇
下一篇
目录