《智能Web算法》试读:关于本书

关 于 本 书 现代Web应用那炫丽流畅的用户界面经常为人所津津乐道。这些应用的另一个方面则不太为人所知,那就是利用各种技术对信息进行智能化的处理,从而带来其他方法所不能给予的价值。这些技术的成功例子包括我们常见的Google、Netflix和Amazon。这些应用的核心智能是由一些算法构成的,而本书要介绍的就是这些算法。 本书涵盖五类重要的算法:搜索、推荐、聚类、分类和分类器融合,其中的每一个算法都可以写成一本完整的书,所以面面俱到并不是本书的目的。本书只会对这五类算法做基本的介绍,我们的目的是展示智能应用中的基本算法,而不是覆盖计算智能中的所有算法。本书是为普通读者撰写的,所以尽可能地降低了对读者的背景知识的要求。 本书的一大特点是在每章结尾都有一个很特殊的小节,我们称为To Do,其目的不仅仅是提供额外的参考资料,每个To Do小节还会指导读者更深入地了解这一章的主题,激起读者思考其他可能的好奇心,以及现实应用中可能要面对的挑战。 本书大量地使用了BeanShell脚本库,目的有两个:其一,让读者从更高的层次上理解算法,避免过早地陷入细节;其二,清楚地描述如何将这些算法整合到读者自己的应用中。在大部分情况下,读者只要写很少的几行代码就能使用本书附带的库。不仅如此,为了维护这些源代码,确保其时效性,我们还在Google Code(http://code.google.com/p/yooreeka/)上专门建了一个项目。 全书结构 本书其分7章,第1章是简介,第2~6章分别介绍搜索、推荐、聚类、分类和分类器组合,第7章介绍如何把前几章中的算法整合到一个具体的应用中。 尽管章节之间有一些联系,但这并不会妨碍你单独阅读第1~5章中的任何一章。第6章是以第5章为基础的,如果单独阅读第6章,则可能有些难度。第7章则涉及本书所有的内容,单独阅读该章也会有些困难。 第1章介绍了智能应用的概况,并举例说明了智能应用的意义。这一章从实践的角度定义了智能Web应用和一些设计原则。介绍了六大类Web应用,这些应用都可以利用本书中介绍的智能算法加以改进。这一章还讲述了本书所涉及的算法的历史起源,及其跟人工智能、机器学习、数据挖掘、软计算等领域的关系。最后还总结了八条具有重要的实践意义的设计原则。 第2章首先描述了依赖于传统信息获取技术的搜索方法。对传统方法稍作总结后,逐步转向不仅仅是索引的搜索,其中包括最富盛名的链接分析算法——PageRank。还有一个小节介绍了如何对用户的点击进行分析来提高搜索结果的质量。这项技术能获取用户对某个网站或话题的喜好,而且有很大的改进潜力,可以扩展出很多新的特性。 第2章还介绍了一个用于非网页文档搜索的新算法:DocRank。这个算法有一定的前景,但更重要的是这个算法说明了稍作改动,链接分析中的基本数学原理就能快速地扩展到其他应用中。另外还介绍了一些处理超大网络时有可能会遇到的挑战。最后,介绍了有关搜索结果的可信度和验证的问题。 第3章介绍了两个重要的概念,即距离和相似度。然后介绍两大类构建推荐系统的技术:协同过滤和基于内容的方法。该章以一个虚拟的网络音乐商店为例介绍了如何为其开发推荐系统,还介绍了两个更通用的例子,第一个例子是一个假想的网站,利用Digg的API获取用户感兴趣的内容,然后据此向用户推荐其没看过的文章。第二个例子是关于电影推荐的,引入了数据规范化(data normalization)的概念。本章还介绍了基于均方根误差的推荐系统精确性评价的方法。 第4章介绍了聚类算法。聚类有着广泛的应用领域,从理论上说,任何由多个对象组成的数据集都可以根据给定的属性进行聚类。在该章中,我们会介绍论坛帖子的分组,以及如何识别相似的网站用户。同时还介绍了不同类型的聚类算法,以及六种算法的完整实现:单链接(single link)、平均链接(average link)、最小生成树单链接(minimum spanning tree single link)、k均值(k-means)、ROCK和DBSCAN。 第5章介绍分类算法,这是智能应用所不可或缺的组件。该章首先描述了本体(ontology),它包含三个组成部分——概念(concept)、实例(instance)和属性(attribute)。所谓分类,就是将实例赋予最合适的概念。不同的分类器之间的差别就在于它们表示和衡量最优赋值方案的方法。该章简要介绍了分类问题,包括二分类和多分类、统计算法和结构算法。本章还介绍了使用分类器的三个步骤:训练、验证和生产阶段。 第6章介绍了分类器的组合——一种可以提升单个分类器准确性的高级技术。该章主要的例子是评价抵押申请的可靠性,同时会详细探讨Bagging和boosting两种技术。另外还介绍了Breiman的arc-x4 boosting算法的一个实现。 第7章举例介绍了这些智能算法在一个新闻门户网站中的应用。我们讨论了其中的技术问题,以及这些智能算法给应用所带来的新的业务价值。例如,聚类算法可以用于新闻的分组,还可以利用新闻之间的相互引用增加新闻的曝光度。在该章中,我们介绍了智能算法的实际应用,勾勒出了将各种智能算法组合在一起实现特定目标的大致框架。 有特色的TO DO小节 从第2章开始,每一章的最后一节会提供一些引导读者深入学习的内容。作为一个软件工程师,我们发现To Do这种形式非常有吸引力:带有祈使的语气,但又不像练习(exercise)那样正式。 有些To Do的内容是更加深入地探讨一章的内容,但有些是向读者展示与本章主题有关的其他内容。完成这些任务可以让读者更加深入和广泛地理解智能算法。 本书中所有标注了“TO DO”的代码都可以在各种IDE中查看,例如,在Eclipse IDE中可以单击Tasks面板。单击任何一个任务,都会显示与之相关的部分代码。 谁适合阅读本书 对于想学习在商业上取得巨大成功的算法的软件工程师和Web开发人员来说,本书正是为你们而写的。因为本书的源代码是基于Java编程语言的,所以本书对Java用户可能更具吸引力。尽管如此,使用其他编程语言的读者也能从本书中获益,或许还能将书中的代码转换成其他的编程语言。 本书中的例子和思想应用广泛,所以对于希望从业务角度更好地理解有关技术的技术经理、产品经理和管理层来说,本书也有一定的价值。 最后,尽管在本书的标题中有Web一词,但本书中的内容也同样适用于其他类型的软件应用,包括移动应用,以及诸如文本编辑器和电子表格一类的传统桌面应用等。 代码约定 本书中所有的源代码都是等宽字体,并且是与上下文分开的。本书中的大部分代码清单都是用于说明代码中的关键概念的,而有些清单有时则是与代码有关的附加信息,某些很长的代码行会有行继续符号。 本书中所有的源代码都可以从http://code.google.com/p/yooreeka/downloads/list或出版社的网站www.manning.com/AlgorithmsoftheIntelligentWeb中获得。 将下载的文件解压到C盘。我们假设读者使用的是微软Windows操作系统,否则,读者需要自行修改我们提供的脚本以适用于其他操作系统。压缩文件的顶层目录的名字是iWeb2,本书中所有的目录都是相对于这个顶层目录的。例如,如果说data/ch02目录,指的就是C:\iWeb\Data\ch02目录。 解压之后,就可以运行Ant构建脚本。很简单,切换到构建目录,然后运行ant。无论将文件解压在什么位置,Ant脚本都能正常运行。现在就可以根据附录A的内容来运行BeanShell脚本了。 作者在线 购买本书的同时,读者也获得了免费访问Manning Publications论坛的权限,在这里,读者可以对本书进行评价、咨询技术问题,并从作者或其他读者那里获得帮助。在浏览器中输入www.manning.com/AlgorithmsoftheIntelligentWeb,就能访问和订阅该论坛的内容,这个页面中说明了读者在注册后如何访问该论坛,可以获得哪些帮助以及论坛的规则,同时还有链接指向本书中例子的源代码、勘误表和其他下载。 Manning出版社致力于提供一个用户之间以及用户和作者之间的交流平台。对作者参与该论坛的交流并没有强制要求,所有Author Online上的贡献都是自愿的(当然也没有报酬)。建议读者尝试问作者一些有挑战性的问题,作者对这样的问题会更有兴趣。 只要本书还在出售,读者就可以在出版商的网站上访问Author Online论坛和所有讨论的文档。 关于封面设计 本书的封面设计来自法国的一本服装设计书,即J. G. St. Saveur在1796年出版的Encyclopedie des Voyages。旅游在当时还是一个比较新鲜的事物,诸如这样的旅行手册很受欢迎,无论是旅行者还是足不出户的读者,都能从书中了解到世界上其他地方的风土人情,以及法国和欧洲其他地区的特色服饰。 Encyclopedie des Voyages一书中用丰富的图片生动地展示了200年前世界各地的特色。在那个时代,两个人即使是来自两个相隔不过十来英里的地方,也可以轻易通过着装区分出来。不仅如此,在那个时代,通过一个人的服饰还能轻易地判断出这个人的社会地位、行业和种族。 在那以后,不同地区之间服饰的差异性逐步缩小。现在,仅仅根据服饰已经很难区分出来自不同大洲的人。或许,乐观地看,我们告别了一个文化和服饰极具特色的世界,换来了多姿多彩的个人生活,或者说得到了更丰富有趣的智能化高科技生活。 本书封面上两个世纪前极具地方特色的服饰就来自这本旅游手册,Manning出版社以此来庆祝计算机产业的发明、起步和其中的乐趣。
1人

>智能Web算法

智能Web算法
作者: Haralambos Marmanis, Dmitry Babenko
原作名: Algorithms of the Intelligent Web
isbn: 7121139197
书名: 智能Web算法
页数: 374
译者: 阿稳, 陈钢
定价: 65.00元
出版社: 电子工业出版社
装帧: 平装
出版年: 2011-11