人工智能 初学者-五份人工智能书单,助你用Python做数据分析
人工智能相关岗位中,涉及到的内容包含:算法、深度学习、机器学习、自然语言处理、数据结构、Tensorflow、Python 、数据挖掘、搜索开发、神经网络、视觉度量、图像识别、语音识别、推荐系统、系统算法、图像算法、数据分析、概率编程、计算机数学、数据仓库、建模等关键词,基本涵盖了现阶段人工智能细分领域的人才结构。
将上面的岗位涉及到的知识和技术划类,就形成了今天的五份书单:
01 人工智能科普类:人工智能科普、人工智能哲学
1. 《智能的本质》斯坦福、伯克利客座教授30年AI研究巅峰之作
2. 《科学+遇见人工智能》李开复、张亚勤、张首晟等20余位科学家与投资人共同解读AI革命
3. 《人工智能时代》从人工智能的历史、现状、未来,工业机器人、商业机器人、家用机器人、机器翻译、机器学习等人工智能应用领域依次介绍了人工智能发展前景。
4. 《人工智能简史》跟着图灵、冯•诺依曼、香农、西蒙、纽维尔、麦卡锡、明斯基等人工智能的先驱们重走人工智能之路,站在前人的肩膀上,看人工智能的三生三世,鉴以往才能知未来。
02 人工智能机器学习类:Python、机器学习、数据科学
1. 《Python机器学习实践指南》结合了机器学习和Python 语言两个热门的领域,通过利用两种核心的机器学习算法来用Python 做数据分析。
2. 《Python机器学习——预测分析核心算法》从算法和Python语言实现的角度,认识机器学习。
3. 《机器学习实践应用》阿里机器学习专家力作,实战经验分享,基于阿里云机器学习平台,针对7个具体的业务场景,搭建了完整的解决方案。
4. 《NLTK基础教程——用NLTK和Python库构建机器学习应用》介绍如何通过NLTK库与一些Python库的结合从而实现复杂的NLP任务和机器学习应用。
03 人工智能深度学习类:深度学习、Tensorflow
1. 《深度学习》AI圣经,深度学习领域奠基性的经典畅销书 特斯拉CEO埃隆·马斯克等国内外众多专家推荐!
2. 《深度学习精要(基于R语言)》基于R语言实战,使用无监督学习建立自动化的预测和分类模型
3. 《TensorFlow技术解析与实战》包揽TensorFlow1.1的新特性 人脸识别 语音识别 图像和语音相结合等热点一应俱全
4. 《TensorFlow机器学习项目实战》第二代机器学习实战指南,提供深度学习神经网络等项目实战,有效改善项目速度和效率
04 人工智能算法策略类:算法、推荐系统、编程等
1. 《神经网络算法与实现——基于Java语言》完整地演示了使用Java开发神经网络的过程,既有非常基础的实例也有高级实例。
2. 《趣学算法》 50 多个实例循展示算法的设计、实现、复杂性分析及优化过程 培养算法思维 带您感受算法之美。
3. 《算法谜题》 Google、Facebook等一流IT公司算法面试必备,经典算法谜题合集。
4. 《Python算法教程》精通Python基础算法,畅销书Python基础教程作者力作。
5. 《编程之法:面试和算法心得》程序员面试宝典 笔试金典 CSDN访问量过千万的博客结构之法算法之道博主July著作。
6. 《趣题学算法》一本有趣的、易学的、实用的,帮助读者快速入门应用的算法书。
7. 《Java遗传算法编程》遗传算法设计 机器学习人工智能 来自Java专家的声音 用遗传算法解决类似旅行商的经典问题。
8. 《算法学习与应用从入门到精通》320个实例、753分钟视频、5个综合案例、74个技术解惑,一本书的容量,讲解了入门类、范例类和项目实战类三类图书的内容。
05 人工智能时间图像和视觉识别类:图像识别 、语音识别、自然语言处理、建模工程
1. 《OpenCV和Visual Studio图像识别应用开发》无人驾驶人脸识别基础技术 用OpenCV实现图像处理应用 计算机视觉编程实战手册。
2. 《人脸识别原理及算法——动态人脸识别系统研究》介绍了动态场景下的人脸识别方法,该方法综合应用了人脸定位、人脸识别、视频处理等算法。
3. 《精通Python自然语言处理》用Python开发令人惊讶的NLP项目,自然语言处理任务,掌握利用Python设计和构建给予NLP的应用的实践。
4. 《Python自然语言处理》基于Python编程语言和NLTK,自然语言处理领域的一本实用入门指南。
5. 《贝叶斯方法:概率编程与贝叶斯推断》机器学习 人工智能 数据分析从业者的技能基础 国际杰出机器学习专家余凯博士 腾讯专家研究员岳亚丁博士推荐。
6. 《贝叶斯思维:统计建模的Python学习法》Thin Stats和Think Python图书作者重磅出击,数据分析师、数据工程师、数据科学家案头常备。
7. 《概率编程实战》人工智能领域的先驱、美国加州大学伯克利分校教授Stuart Russell作序推荐!一本不可思议的Scala概率编程实战书籍!
8. 《自己动手写神经网络》机器学习与人工智能参考书,基于Java语言撰写。
机器学习篇
在机器学习上,首先要推荐的是两部国内作者的著作:李航博士所著的《统计学习方法》和周志华教授的《机器学习》。
《统计学习方法》采用“总 - 分 - 总”的结构,在梳理了统计学习的基本概念后,系统而全面地介绍了统计学习中的 10 种主要方法,最后对这些算法做了总结与比较。这本书以数学公式为主,介绍每种方法时都给出了详尽的数学推导,几乎不含任何废话,因而对读者的数学背景也提出了较高的要求。
相比之下,《机器学习》覆盖的范围更广,具有更强的导论性质,有助于了解机器学习的全景。书中涵盖了机器学习中几乎所有算法类别的基本思想、适用范围、优缺点与主要实现方式,并穿插了大量通俗易懂的实例。
如果说《统计学习方法》胜在深度,那么《机器学习》就胜在广度。在具备广度的前提下,可以根据《机器学习》中提供的丰富参考文献继续深挖。
读完以上两本书,就可以阅读一些经典著作了。经典著作首推 Tom Mitchell 所著的 Machine Learning,中译本名为《机器学习》。本书成书于 1997 年,虽然难以覆盖机器学习中的最新进展,但对于基本理论和核心算法的论述依然鞭辟入里,毕竟经典理论经得起时间的考验。这本书的侧重点也在于广度,并不涉及大量复杂的数学推导,是比较理想的入门书籍。作者曾在自己的主页上说本书要出新版,并补充了一些章节的内容,也许近两年可以期待新版本的出现。
另一本经典著作是 Trevor Hastie 等人所著的 Elements of Statistical Learning,于 2016 年出版了第二版。这本书没有中译,只有影印本。高手的书都不会用大量复杂的数学公式来吓唬人(专于算法推导的书除外),这一本也不例外。它强调的是各种学习方法的内涵和外延,相比于具体的推演,通过方法的来龙去脉来理解其应用场景和发展方向恐怕更加重要。
Learning OpenCV的作者是Gary Bradski和Adrian Kaehler,两位都是OpenCV库的发起人。其中,Bradski是斯坦福大学人工智能实验室的顾问教授;Kaehler在2014-2016年间做过Magic Leap副总裁。
本书适合对计算机视觉和图像处理有基本了解的人群,通过本书能更好地了解OpenCV如何让编程任务更容易。
两位作者将众所周知的算法编码成可调用的函数库,可以用来完成更复杂的任务。当然,这也作为一本用户手册,目录结构清晰,遇到问题时可进行查阅。
这本书的中译本叫《学习OpenCV》,连封面都没怎么改……
压轴登场的非 Christopher Bishop 所著的 Pattern Recognition and Machine Learning 莫属了。本书出版于 2007 年,没有中译本,也许原因在于将这样一本煌煌巨著翻译出来不知要花费多少挑灯夜战的夜晚。这本书的特点在于将机器学习看成一个整体,不管于基于频率的方法还是贝叶斯方法,不管是回归模型还是分类模型,都只是一个问题的不同侧面。作者能够开启上帝视角,将机器学习的林林总总都纳入一张巨网之中,遗憾的是,大多数读者跟不上他高屋建瓴的思路(也包括我自己)。
David J C MacKay 所著的 Information Theory, Inference and Learning Algorithms,成书于 2003 年,中译本名为《信息论,推理与学习算法》。本书作者是一位全才型的科学家,这本书也并非机器学习的专著,而是将多个相关学科熔于一炉,内容涉猎相当广泛。相比于前面板着脸的教科书,阅读本书的感觉就像在和作者聊天,他会在谈笑间抛出各种各样的问题让你思考。广泛的主题使本书的阅读体验并不轻松,但可以作为扩展视野的一个调节。
Natural Language Processing with Python的作者是Steven Bird、Ewan Klein和Edward Loper,三人分别是墨尔本大学软件工程系副教授、爱丁堡大学语言技术教授和宾夕法尼亚大学博士。
本书基于自然语言工具包NLTK库,不要求读者有Python编程的经验。
内容按照难易程度顺序编排,先介绍了语言处理的基础,讲述如何使用小的Python程序分析感兴趣的文本信息;接着讨论了结构化程序设计,以巩固前面几章中介绍的编程要点;然后介绍了语言处理的基本原理,包括标注、分类和信息提取等;进而再介绍了句子解析、句法结构识别和句意表达方法和如何有效管理语言数据。后记部分简要讨论了NLP领域的过去和未来。
综合评价,本书是自然语言处理领域的一本实用入门指南。
数学篇
>>>>
1、线性代数
推荐两本国外的教材。其一是 Gilbert Strang 所著的 Introduction to Linear Algebra,英文版在 2016 年出到第五版,暂无中译本。这本通过直观形象的概念性解释阐述抽象的基本概念,同时辅以大量线性代数在各领域内的实际应用,对学习者非常友好。作者在麻省理工学院的 OCW 上开设了相应的视频课程,还配有习题解答、模拟试题等一系列电子资源。
其二是 David C Lay 所著的 Linear Algebra and its Applications,英文版在 2015 年同样出到第五版,中译本名为《线性代数及其应用》,对应原书第四版。这本书通过向量和线性方程组这些基本概念深入浅出地介绍线代中的基本概念人工智能 初学者人工智能 初学者,着重公式背后的代数意义和几何意义,同样配有大量应用实例,对理解基本概念帮助很大。
>>>>
2、概率论
基础读物可以选择 Sheldon M Ross 所著的 A First Course in Probability,英文版在 2013 年出到第九版(18 年马上要出第十版),中译本名为《概率论基础教程》,对应原书第九版,也有英文影印本。这本书抛开测度,从中心极限定理的角度讨论概率问题,对概念的解释更加通俗,书中还包含海量紧密联系生活的应用实例与例题习题。
另一本艰深的读物是 Edwin Thompson Jaynes 所著的 Probability Theory: The Logic of Science,本书暂无中译本,影印本名为《概率论沉思录》也已绝版。这本书是作者的遗著,花费半个世纪的时间完成,从名字就可以看出是一部神书。作者从逻辑的角度探讨了基于频率的概率,贝叶斯概率和统计推断,将概率论这门偏经验的学科纳入数理逻辑的框架之下。如果读这本书,千万要做好烧脑的准备。
>>>>
3、数理统计
基础读物可以选择陈希孺院士所著的《数理统计学教程》。关于统计学是不是科学的问题依然莫衷一是,但它在机器学习中的重要作用毋庸置疑。陈老的书重在论述统计的概念和思想,力图传授利用统计观点去观察和分析事物的能力,这是非常难能可贵的。
进阶阅读可以选择 Roger Casella 所著的 Statistical Inference,由于作者已于 2012 年辞世,2001 年的第二版便成为绝唱。中译本名为《统计推断》,亦有影印本。本书包含部分概率论的内容,循循善诱地介绍了统计推断、参数估计、方差回归等统计学中的基本问题。
>>>>
4、最优化理论
可以参考 Stephen Boyd 所著的 Convex Optimization,中译本名为《凸优化》。这本书虽然块头吓人,但可读性并不差,主要针对实际应用而非理论证明,很多机器学习中广泛使用的方法都能在这里找到源头。
>>>>
5、信息论
推荐 Thomas Cover 和 Jay A Thomas 合著的 Elements of Information Theory,2006 年出到第二版,中译本为《信息论基础》。这本书兼顾广度和深度,虽然不是大部头却干货满满,讲清了信息论中各个基本概念的物理内涵,但要顺畅阅读需要一定的数学基础。另外,本书偏重于信息论在通信中的应用。