随着越来越多的课题项目都需要跟大数据、人工智能等技术相结合,很多非计算机专业的研究生同学需要学习机器学习相关知识,相信这也会成为一个大的趋势。
我目前就在给我们学校的研究生同学上机器学习这门课,所以我结合课程的内容和要求来给初学的同学一些学习建议。
首先,我在给研究生同学上课的时候,会选择四本参考书,其中有三本是公开出版的,包括机器学习实战、机器学习(西瓜书)、深度学习,还有一本没有公开出版的是我自己编写的偏数据分析的参考书。
虽然参考书比较多,但是课程进行过程当中,有很多基础内容的学习需要学生自主完成,而且我会把学生分成多个小组,每个小组有自己的学习任务,每周会有一次集中陈述,其他组的同学可以对相关任务进行提问。从实际的学习效果来看,不少组的同学都能够对规定的任务做出一定的扩展。
对于非计算机专业的同学来说,学习机器学习可能会有三方面障碍,其一是没有编程和算法基础,其二是没有交流场景,其三是没有实践场景,所以要从这三个方面来入手。
编程语言可以选择Python,一方面Python语言本身的语法结构比较灵活,对于初学者比较友好,另一方面Python也是一门全场景编程语言,在大数据和人工智能领域有广泛的应用。
初学者学习机器学习可以从经典的机器学习算法开始,包括knn、决策树、朴素贝叶斯、支持向量机等等,一方这些算法比较简单且容易理解,只需要具备一定的线性代数和概率论基础,另一方面这些经典的机器学习算法有很多应用的小案例,通过复现这些小案例能够让初学者尽快获得学习的成就感。
很多同学在学习机器学习的时候并没有交流和实践场景,这会明显提升学习的难度,而且也大概率会走一些弯路,所以要积极参加一些技术论坛,同时要积极争取到专业老师的指导,这会明显提升学习效率,也会更快找到自己的科研着力点。
目前我联合一些国内外知名大学的导师和互联网大厂的企业导师,共同打造了一个技术论坛,在持续开展科研实践、项目实践、成果分享和知识讲座等活动,其中机器学习、深度学习、强化学习、联邦学习、迁移学习等内容是