本书以机器学习与计算统计为主题背景,专门讲t述如何挖掘和分析 Web,上的数据和资源,如何分析用户体验、市场营销、个人品味等诸多信息,并得出有用的结论,通过复杂的算法来从 Web 网站获取、收集并分析用户的数据和反馈信息,以便创造新的用户价值和商业价值。全书内容细实,包括协作过滤技术(实现关联产品推荐功能)、集群数据分析(在大规模数据集中发掘相似的数据子集)、搜索引擎核心技术(爬虫、索引、查询引擎、PageRank算法等)、搜索海量信息并进行分析统计得出结论的优化算法、贝叶斯过滤技术(垃圾邮件过滤、文本过滤)、用决策树技术实现预测和决策建模功能、社交网络的信息匹配技术、机器学习和人工智能应用等。
本书是 Web 开发者、架构师、应用工程师等的绝佳选择。
无论是有意还是无意,越来越多投身于互联网的人们已经制造出了相当多的数据,这给了我们无数潜在的机会来洞悉用户体验、商业营销、个人偏好和通常所谓的人类行为(human behavior)。本书向大家介绍了一个新兴的领域,称为集体智慧(collective intelligence)。这一领域涵盖了诸多方法,借助这些方法我们可以从众多 Web 站点处(这些站点的名字或许你曾经有所耳闻)提取到值得关注的重要数据;借助这些方法我们还可以从使用自己应用程序的用户那里搜集信息,并对我们所掌握的数据进行分析和理解。
本书的目的是要带领你超越以数据库为后端的简单应用系统,并告诉你如何利用自己和他人每天搜集到的信息来编写更为智能的程序。
本书的代码示例是用 Python 语言编写的,因此熟悉 Python 编程将会有助于你对算法的理解,不过笔者给出了所有算法的解释说明,所以其他语言的程序员也能看懂。对于已经了解了像 Ruby 或 Perl 这样高级语言的程序员,Python 代码应该是非常容易理解的。本书的目的不是要作为一本学习编程的指导书,因此尤为重要的一点在于,为了熟悉基本概念,我们最好已编写过足够多的代码。如果懂得递归和一点点函数式编程(functional programming)的基本概念,那么我们就会发觉书中的内容是很容易理解的。
本书并不假设你已经具备了任何有关数据分析、机器学习或统计学方面的知识。笔者在尝试以尽可能浅显易懂的方式来解释数学概念,不过具备一点三角学和统计学的基本知识将会对你理解算法有所助益。
本书每一章节的代码示例都是以一种教程式的风格编写而成的,它鼓励你以循序渐进的方式来构建应用程序,并对算法的工作原理有一个深入的理解和认识。大多数情况下,写完一个新的函数或方法之后,我们会在一个交互的会话环境里使用它,以此来理解算法的工作原理。通常算法是有简单的变体的,我们可以用多种方式对其进行扩展。通过示例讲解并以交互的方式对其进行测试,我们对算法将会有更为深入的理解,从而可以对其进行改造,以适应自己的应用程序。
尽管书中的算法是伴随着对相关公式的解释,以文字形式加以描述的,但是假如有针对算法和示例问题的实际代码,那将会是更有助益的(而且有可能更易于理解)。本书中的所有示例代码都是用 Python,一种优秀的高级语言编写而成的。之所以选择 Python 是因为它有如下特性。
简练
使用像 Python 这样的动态类型语言编写的代码往往比用其他主流语言编写而成的代码更加简短。这意味着,在完成示例的过程中会有更少的录入工作,而且这也意味着我们将更容易记住算法并真正领会算法的原理。
易于阅读
Python 不时被人们指为"可执行的伪代码"。虽然很明显这是一种夸大之词,但是它表明,大多数有经验的程序员可以读懂 Python 代码并领会代码所要表达的意图。Python中一些不是很显见的语言要素将会在后面的"Python 技巧"一节中加以解释。
易于扩展
Python 随附了许多标准库,这些库涉及数学函数、XML(扩展标记语言)解析,以及网页下载。本书中用到的非标准库,如 RSS(Really Simple Syndication)解析器和 SQLite接口,则是免费的,很容易下载、安装和使用。
交互性
在学习示例的过程中,可以尝试执行我们编好的函数,而无须为此专门编写额外的程序,这一点是非常有价值的。Python 可以直接从命令行运行程序,它还有交互提示。允许我们键入函数调用、创建对象,并以交互的形式来对包进行测试。
多范式
Python 支持面向对象、过程式和函数式编程风格。机器学习算法千差万别,最为清晰的做法是针对不同算法采用不同的范式。有时将函数作为参数传入很有用处,而有我们则须要在对象中捕获状态。对于这两种方式,Python 均予以支持。
多平台和免费
Python 有一个针对所有主流平台的单一参考实现,并且它对所有平台都是免费的。4书中所列代码可以运行于 Windows、Linux 和 Macintosh环境。
对于有兴趣学习 Python 编程的初学者而言,笔者推荐大家阅读由 Mark Lutz与David Asche合著的《Learning Python》(O'Reilly),该书有对 Python 的全面论述。为了更为直观地表达算法或基础性概念,笔者在整本书中使用了一些 Python 特有的语法,但是其他语言的程序员应该会发现,Python 的代码相对而言还是较为容易掌握的。下面是为非 Python 程序员提供的一份快速概览。
列表和字典的构造函数
Python 有一组不错的基本类型,其中有两种类型在本书中被大量使用,它们分别是列表和字典。列表是由一组任意类型的值构成的有序列表,它由方括号构造而成∶
number_list=[1, 2, 3, 4] string_list=['a','b','c','d'] mixed_list= ['a',3,'c',8]
字典是由一组名值对构成的无序集合,类似于其他语言中的 hash map。它由大括号构造而成∶
ages={'John';24,'Sarah':28,'Mike';31}
可以通过序列名后跟方括号的形式来访问列表和字典中的元素∶
string_list[2] returns 'c' ages [ 'Sarah'] returns 28
有意义的空白字符
与大多数语言有所不同,Python 实际上是利用代码的缩进来定义代码块的。请看下列代码片段∶
if x=*1: print 'x is 1' print 'Still in if block' print'outside if block'
因为代码是被缩进的,所以语法解释器知道前两个打印语句会在 x 为 1 的时候被执行。缩进可以是任意数量的空格,只要它是常量即可。本书使用的缩进是两个空格。在输入代码的时候,我们须要注意正确拷贝缩进。
列表推导式
列表推导式(list comprehension)是一种方便简洁的语法形式,我们可以利用它将一个列表经过滤后转换成另一个列表,也可以利用它将函数应用于列表中的元素。列表推导式以如下形式书写∶
【表达式 for 变量 in 列表】
或者∶
【表达式 for 变量 in 列表 if 条件】例如,下列代码∶
11= [1,2,3,4,5,6,7,8,9] print [v*10 for v in l1 if v>4]
将打印输出如下列表;
[50,60, 70,80, 90]
本书中频繁地使用了列表推导式,因为要将一个函数应用于整个列表,或是删除不需要的列表项时,这种表达方法非常简练。列表推导式的另一种常见用法是与dict 构造函数结合在一起使用∶
11=[1,2,3,4,5,6,7,8,9] timesten=dict([ (v, v*10) for v in l1l)
上述代码将会建立一个字典,以原先的列表作为键,以每个列表项乘以10 作为值∶
(1:10,2:20,3:30,4:40,5:50,6:60,7:70,8:80,9:90)
开放的 API
用于将集体智慧合成起来的算法需要来自许多用户的数据。除机器学习的算法外,本书还论及了许多开放的 Web APIs(应用编程接口)。这些 API允许我们通过特殊的协议对来自相应 Web 站点的数据进行访问;我们可以编写程序将数据下载下来并加以处理。这些数据通常是由站点的使用者来提供的,我们可以从中挖掘出新的内涵来。有的时候,我们可以用现成的 Python 库来访问这些 API;而有时,如果没有现成的库,那么最为直接的做法莫过于创建自己的接口来访问数据,为此我们须要利用 Python 提供的内建库将数据下载下来,并对 XML 加以解析。
【下载地址】
链接:https://pan.baidu.com/s/1AmWCuXAP_nZ3qSqH7clGDw
提取码:qm9d
相关文章
为了更好地适应新形势,满足读者对大数据分析处理学习的迫切需要,我们推出了《大数据分析 ∶ R基础及应用》一书 ,力求使读者能够从中了解大数据
读完本书后,你将掌握R语言的精华,并能够熟练使用多种工具来解决各种数据科学难题。
网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始, 获得初始
通过它,你将学到如何写能处理大量非结构化文本的 Python 程序。你将获得有丰富标注的涵盖语言学各种数据结构的数据集,而且你将学到分析书面
本书可以作为Python编程语言的一本指南或者教程。它主要是为新手而设计,不过对于有经验的程序员来说,它同样有用。
本书以机器学习与计算统计为主题背景,专门讲t述如何挖掘和分析 Web,上的数据和资源,如何分析用户体验、市场营销、个人品味等诸多信息,并得出
为了能让更多的编程小自轻松地入门编程,我把高效学习法结合 Pvthon 中的核心知识,写成了这本书。随意翻上几页,你就会发现这本书和其他编程
本书结构非常简单,其实就是 52 个习题。其中 26 个覆盖了输入输出、变量、以及函数三个课题,另外 26个覆盖了一些比较高级的话题,如条件
本书以CPython为研究对象,在C代码一级,深入细致地剖析了Python的实现。本书不仅包括了对大量Python内置对象的剖析,更将大量的
本书是学习Python编程语言的入门书籍。Python是一种很流行的开源编程语言,可以在各种领域中用于编写独立的程序和脚本。Python免费
本书用 Python 语言来讲解算法的分析和设计。本书主要关注经典的算法,但同时会为读者理解基本算法问题和解决问题打下很好的基础。全书共 1
本书面向的读者是那些经常使用电子表格软件进行数据处理,但从未写过一行代码的人。前几章会教你设置 Python 运行环境,告诉你计算机是如何看
神经网络是一种模拟人脑的神经网络,以期能够实现类人工智能的机器学习技术。本书揭示神经网络背后的概念,并介绍如何通过Pvthon实现神经网络。
Python 是一种容易学习的强大的编程语言。它包含了高效的高级数据结构,能够用简单而高效的方式进行面向对象编程。Python 优雅的语法和
本书是面向 Python 初学者的学习指南,详细介绍了 Python 编程基础,以及一些高级概念,如面向对象编程。
FlashFXP绿色版网盘下载,附激活教程 1738
FlashFxp百度网盘下载链接:https://pan.baidu.com/s/1MBQ5gkZY1TCFY8A7fnZCfQ。FlashFxp是功能强大的FTP工具
Adobe Fireworks CS6 Ansifa绿色精简版网盘下载 1540
firework可以制作精美或是可以闪瞎眼的gif,这在广告领域是需要常用的,还有firework制作下logo,一些原创的图片还是很便捷的,而且fireworks用法简单,配合dw在做网站这一块往往会发挥出很强大的效果。百度网盘下载链接:https://pan.baidu.com/s/1fzIZszfy8VX6VzQBM_bdZQ
navicat for mysql中文绿色版网盘下载 1605
Navicat for Mysql是用于Mysql数据库管理的一款图形化管理软件,非常的便捷和好用,可以方便的增删改查数据库、数据表、字段、支持mysql命令,视图等等。百度网盘下载链接:https://pan.baidu.com/s/1T_tlgxzdQLtDr9TzptoWQw 提取码:y2yq
火车头采集器(旗舰版)绿色版网盘下载 1690
火车头采集器是站长常用的工具,相比于八爪鱼,简洁好用,易于配置。火车头能够轻松的抓取网页内容,并通过自带的工具对内容进行处理。站长圈想要做网站,火车头采集器是必不可少的。百度网盘链接:https://pan.baidu.com/s/1u8wUqS901HgOmucMBBOvEA
Photoshop(CS-2015-2023)绿色中文版软件下载 1805
安装文件清单(共46G)包含Window和Mac OS各个版本的安装包,从cs到cc,从绿色版到破解版,从安装文件激活工具,应有尽有,一次性打包。 Photoshop CC绿色精简版 Photoshop CS6 Mac版 Photoshop CC 2015 32位 Photoshop CC 2015 64位 Photoshop CC 2015 MAC版 Photoshop CC 2017 64位 Adobe Photoshop CC 2018 Adobe_Photoshop_CC_2018 Photoshop CC 2018 Win32 Photoshop CC 2018 Win64