集体智慧编程书评

寒假的时候找了几本有关机器学习的书,其中一本《集体智慧编程》被很多人推崇作为入门的第一本,于是花了10几天时间快速看了下,今天看完。

整个书不多,300多页,基本上每一章讲一个算法,最后一章用作复习所有的算法之用。每一个算法都有用实际的例子来讲述,并且以源码的形式来一步一步的呈现出算法的精要,这点特别赞。

所讲述的算法大多为监督学习中的分类问题,也有讲述了几个非监督学习算法。监督的有朴素贝叶斯算法,决策树算法,神经网络算法,k-最近邻算法,还简要描述了核方法和SVMs。非监督的讲了K均值聚类,层级聚类,还讲了一个非负矩阵分解算法用来寻找重要特征。书中还有1章专门讲了优化,讲了2个优化算法:模拟退火以及遗传算法。还有一章简要的介绍了“遗传编程”思想。

作者的代码很看重通用性和灵活性。基本上一个算法写好,可以直接用于各类的通用问题,你所做的只要把数据准备好,并且传入适当的参数。你还可以自己定义自己的一些函数,如成本函数,来改变算法的运行情况。

更难能可贵的是,本书不仅只对机器学习算法进行讲解,还详细的讲了怎么一步步获得数据,并且预处理数据,怎么把算法执行的结果以可视化的形式呈现。这些方法对于解决一个实际问题,都是可能是最被忽视但是却最为重要的部分!

作为书评,当然也要讲下不足的地方,很大一点就是算法的讲解太浅显。其实要是真说的话,这本书根本什么都没讲,只告诉你第一步,第二步,...。不过这也正是本书的风格,要真直接上数学推导,那这本书也就不是这本书了,还不如直接PRML。

这本书用来入门确实极佳,真是有点相见恨晚的感慨。之前学机器学习,基本上是从基础入手,各种数学,概率统计啊,线性代数啊,优化啊等,配合着PRML伺候,效率太低,而且缺乏激情。这本书从实例入手,辅以简洁明了的python代码,可操作性极强,真是很合我胃口。不过话说回来,由于有之前的基础,再配合实例代码的浇灌,也当真有一种拨云见日的喜悦啊!

总的来说,这本书算是告诉了我用机器学习算法解决一个问题时,要怎么一步一步来。当然,这对我是远远不够的,学习一个算法可不是学习step1, step2, step3, ...

看完一本书的感觉真的非常爽!接下来再认真啃掉几本书!!



发表评论

电子邮件地址不会被公开。 必填项已用*标注

*