随着这两年人工智能火起来,很多人都迫不及待的想入坑人工智能,之前也有不少同事朋友询问过我怎么进入这个行业,在这里我谈一下个人的拙见,如有异议,欢迎讨论,如果能帮到各位,非常荣幸。掌握一些必备知识人工智能是一个涉及多学科、多领域的的方向,数学、计算机、工程学等方面,下面分别谈一下:数学知识我想在大多数学校里,数学都是理工科学生的必修课,微积分、线性代数、概率论与数理统计,这些都比较基础实用,我觉得这个数学基础对入门人工智能足够了,人工智能应用数学最多的也就是求导、矩阵的运算和分解、概率的统计与分析。编程能力工欲善其事、必先利其器,人工智能方向编程语言使用最多的应该就是Python了,在很多学校理工科学生应该都会必修一门编程课,有的是C,有的是C++,就算这些都没用过,也应该对Matlab了解一些,我觉得有一些编程基础入门Python算是比较简单的,网上资源很多,社区支持也很强大。机器学习我这里所说的机器学习是广义上的机器学习,涵盖深度学习。无论是做传统的机器学习回归和分类,还是做深度学习,无论是做计算机视觉,还是做自然语言处理,都离不开机器学习,后面我会介绍一些我认为比较好的学习资源,对于机器学习,我划分为两个方面:(1) 框架层面;(2) 理论层面。(1) 框架层面机器学习框架有很多比如scipy、sklearn、tensorflow、pytorch、mxnet等,我觉得对于框架,不再多,而再精,每个框架都有自身的优势,也都有自己的缺点,可以根据自己的项目需求和自己的喜好选择一个框架,这里我比较推荐的是tensorflow和pytorch,tensorflow虽然繁琐,但是强大,pytorch比较简洁高效。(2) 理论方面理论方面主要包括传统的机器学习和深度学习里的一些网络框架,首先说一下传统的机器学习,我认为这是很有必要的,从事 AI工作中免不了用到传统的方法,比如回归、随即森林、SVM等,而且传统的机器学习理论性更强,更能让人了解机器学习中的内在内容。其次说一下深度学习网络模型,以计算机视觉为例,有很多成熟高效的网络模型,很多模型前后都有关联,需要了解不同网络模型,比如奠定基础的Alexnet,后面经常用于预训练的VGG,还有为深度网络提出解决方案的ResNet,还有近几年比较高效的SSD、YOLO系列,最后还有深度学习中的一些策略,比如怎么解决过拟合?BN是什么?Dropout是干什么的?激活函数有哪些和优缺点分别是什么?专业知识如果要成为一个AI从业者,需要结合不同方向的专业知识,比如要从事计算机视觉,仅仅拿到网络结构就开始搭,这是很难达到理想效果的,这就需要对图像底层有一些了解,例如图像的像素和通道结构,图像的边缘和灰度特征,图像的增广、去噪、分割,这能够让在相应的方向上走的更远,做出更好的东西,可能达到事半功倍的效果。学习资源经常会看到很多人在朋友圈转发各种人工智能学习资源,的确,随着人工智能火热起来,现在网上有很多各种各样的学习资源,让人眼花缭乱,好的学习资源屈指可数,大多数不知道冲着什么目的推出的教学资料,内容不怎么样,收费却不低,很多初学者不了解行情而误入歧途,不仅浪费了钱,也耽误了不少时间、浪费了不少精力,其实网上 有很多免费又非常好的资源,如果把这些利用起来,我觉得足可以成为一个AI从业者。在这里,我推荐一些我认为比较好的学习资源。视频资源(1) 吴恩达《机器学习》吴恩达机器学习 - 网易云课堂study.163.com(2) 吴恩达《深度学习工程师》
(3) 莫烦Python:我觉得虽然讲的很浅,但是没有语言障碍,通俗易懂。
(4) 李飞飞 《斯坦福深度视觉识别课程》推荐理由:吴恩达自然不必说,人工智能领域的大牛,无论是在学界还是在企业界都很有影响力,我觉得吴恩达的不仅有理论性,而且很实用,尤其《深度学习工程师》这门课程讲了很多深度学习策略、超参数调优、结构化机器学习、卷积神经网络和序列模型,都很实用,而且吴恩达的语速相对很多人例如Hinton的授课语速要慢一些,更有助于理解,能够跟得上节奏。而cs231n是李飞飞教授的经典计算机视觉入门课程,从传统的图像分类到机器学习基础知识,再到卷积神经网络涵盖计算机视觉知识非常全面。莫烦Python有很多课程机器学习、强化学习、Python基础、深度学习框架,很全面,中文授课,内容不深,但是有助于入门。书籍(1) 数学方面《概率论与数理统计》 盛骤
《数值分析》李庆扬
《线性代数》同济大学
推荐理由:这几本书都是用于大学生教材的,所以相对严谨一些,而且难度适中,对于做人工智能,我觉得这几本数学教材涵盖的知识差不多了。《数值分析》是我们本科数学系的教材,涵盖很多数值计算方法,很多可能在机器学习里用不到,但是我觉得想要做的更深,多了解一些数学是有价值的。(2) 机器学习方面《深度学习》Goodfellow、Bengio
《机器学习》 周志华
《机器学习实战》Peter Harrington
推荐理由:《深度学习》这本书仅仅看到这几位作者就会明白错不了,都是大牛,介绍了不同方向的机器学习技术,而且很大一部分在介绍深度学习的策略和模型优化方法。《机器学习》这本书主要讲的是传统机器学习算法,通俗易懂,没有过多的公式推导。《机器学习实战》这本书对每个机器算法都从头到尾实现了一遍,相对于前面这两本书,这本书更偏重于实践,结合很多实例直接编程,如果跟随这本书把各个算法实现一遍,对加深记忆有很大帮助。(3) 图像处理方面《图像工程》 章毓晋
《计算机视觉特征提取与图像处理》(第3版) Nixon&Aguado
推荐理由:对于入门计算机视觉这个方向,多了解一些图像底层的知识肯定是百利无一害,这两本书都是图像处理里不错的书籍,其中《图像工程》这本书,是合订版,也有单独成册的,分上中下三册,如果觉得这本书太厚也可以根据自己需求买其中一册。