对应于不同应用领域,还需要不同的数学工具,比如和图像、信号识别相关的领域,图形学等相关的基础功底是必须要有的,但这个已经是复杂的现实应用问题了,并不在本门课程的教学范围之内,本门课程的应用领域还是相对较为简单的。 实际上,如果你是一个工科生,你会发现学习数学最难的地方就是不理解这些数学工具到底能帮助我们去解决什么问题,因为大学老师大多数都是数学专业老师,并不会从学生各自专业的角度来讲解数学问题。但是当你知道你需要用数学工具做什么,有一个明确目标后,你会发现你的动力和学习能力将会有一个突破,你不会觉得这些数学知识是枯燥乏味的。因此哪怕你的数学基础相对薄弱,有一个明确的目的,再去补充这些数学知识,相信学员自己一定能解决这个问题。数学也绝对不是学习这门课的障碍,但是如果你想以其作为职业,去打好这个数学的底子是不可或缺的。 最后,如果你是数学专业,或者觉得自己数学很好的学生,你们也更不用担心不会 1、2 门语言,因为计算机语言只是一种工具,最关键的还是训练自己的思维,这种思维的核心就是数学和算法。如果你数学很好,学习这些语言是很快的,而且本门课程中除了最后的 C++ 开发,也不会应用到什么特别的语法特性。 但是另一方面也不要忽视学习好这些工具的重要性,只是希望学生自己能够权衡。对数学好的同学来说,可能最致命的是一个误区,因为计算机的基础是数学,所以完全使用数学思维去解决计算机问题是没问题的,我这里只能说计算机有自己的思维模式,哪怕是那些基于数学原理的算法问题,所以数学专业的同学必须要学会认识到这种思维的差异并学会使用计算机的思维来解决问题,而机器学习则是计算机思维的一个典型代表,这个将会在课程中具体讨论。 至于需要的数学基础,肯定是希望同学能够学习高等数学中的微积分,线性代数和概率论的相关知识,对于没有实际编程经验的学生则推荐深入学习一下离散数学(无关乎是否精于数学)。本门课程需要的数学基础也就是这些了。 关于内容 深度学习和机器学习的关系是什么?很多同学以为要先学机器学习再学深度学习是这样吗? 【回答】机器学习肯定是深度学习的基础,因为深度学习就是深度神经网络,而人工神经网络则是机器学习的一大经典模型。但是我们要认识到机器学习领域包含的算法和模型太多,因此想要专精深度学习不一定要学会其他许多的机器学习算法和理论。所以我们会在课程中安排机器学习相关的内容,只不过都是机器学习中和深度学习相关的必备基础知识。 但是如果你想要以后往算法工程师发展,去学习熟悉其他的机器学习模型也是必不可少的,只不过本门课程并没有这种要求,所有需要的机器学习知识都会在课程的前半部分详细讲解。 Caffe 框架和 TensorFlow 框架都要学吗? 【回答】首先本门课程主要应用的是 Caffe,但是同样会讲解 TensorFlow 的基本用法,并会进行简单演示。在我们的日常工作中发现 TensorFlow 是目前最强大的机器学习框架,没有之一,而且有 Google 公司的支持,有最庞大的社区,一旦有什么新模型都会有 TensorFlow 的实现可以使用(得益于 TensorFlow 的架构设计)。用 TensorFlow 来进行快速实验是非常好的选择。 但是我们也发现 TensorFlow 有两个比较大的问题,第一个问题是 TensorFlow 的单机执行效率低,尤其是和 Caffe 相比,对于资金并不是很充足的创业公司,在有一定量数据的情况下,并无法支撑一个可以快速运行 TensorFlow 训练的集群,这个时候 Caffe 以及其各种改版往往是更好的选择,而我们日常工作的实验场景就被此局限,因此更偏向于实际使用 Caffe。 第二个问题是 TensorFlow 过于庞大,实际开发产品 SDK 的时候,我们希望训练出来的模型能够直接放到产品中使用,因此训练和产品 SDK 使用的深度学习框架往往是一致或者可以互相转换的。而 TensorFlow 过于庞大复杂,还需要使用专门的构建工具,在实际产品应用集成中往往要使用能够完全掌控的工具和框架并进行修改,TensorFlow 的复杂性正和这种要求背道而驰。当然也可能是我们的工作场景和人员限制导致我们没有人力对 TensorFlow 进行深度研究、裁剪和维护,这也就是我们产品中使用 Caffe 的原因。 关于就业 学习了课程,掌握了这个技能,能不能找到工作,是否有匹配的岗位? 【回答】肯定可以! (责任编辑:本港台直播) |