新書推薦:
《
女人的胜利
》
售價:NT$
254.0
《
数据有道:数据分析+图论与网络+微课+Python编程(鸢尾花数学大系:从加减乘除到机器学习)
》
售價:NT$
1214.0
《
500万次倾听:陪伤心的人聊聊
》
售價:NT$
245.0
《
英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。)
》
售價:NT$
367.0
《
万千心理·儿童心理治疗中的心智化:临床实践指导
》
售價:NT$
398.0
《
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
》
售價:NT$
301.0
《
周易
》
售價:NT$
203.0
《
东南亚的传统与发展
》
售價:NT$
306.0
|
內容簡介: |
本书将帮助读者掌握开发有效学习系统所需的流程、模式和策略,通过简单的故事、图片和Python示例来向读者传达机器学习的基本思想。即使读者是一名初学者,只要具备一些Python编程基础,不管大学数学水平如何,都能轻松阅读本书并有所收获。
|
目錄:
|
译者序推荐序前言作者简介第一部分 机器学习入门第1章 机器学习概论 21.1 欢迎来到机器学习的世界 21.2 范围、术语、预测和数据 31.2.1 特征 41.2.2 目标值和预测值 51.3 让机器开始机器学习 61.4 学习系统举例 81.4.1 预测类别:分类器举例 81.4.2 预测值:回归器举例 91.5 评估机器学习系统 101.5.1 准确率 101.5.2 资源消耗 111.6 创建机器学习系统的过程 121.7 机器学习的假设和现实 131.8 本章参考阅读资料 151.8.1 本书内容 151.8.2 章节注释 16第2章 相关技术背景 182.1 编程环境配置 182.2 数学语言的必要性 182.3 用于解决机器学习问题的软件 192.4 概率 202.4.1 基本事件 212.4.2 独立性 222.4.3 条件概率 232.4.4 概率分布 242.5 线性组合、加权和以及点积 272.5.1 加权平均 292.5.2 平方和 312.5.3 误差平方和 322.6 几何视图:空间中的点 332.6.1 直线 332.6.2 直线拓展 372.7 表示法和加1技巧 412.8 渐入佳境:突破线性和非线性 422.9 NumPy与“数学无所不在” 452.10 浮点数问题 492.11 本章参考阅读资料 502.11.1 本章小结 502.11.2 章节注释 51第3章 预测类别:分类入门 523.1 分类任务 523.2 一个简单的分类数据集 533.3 训练和测试:请勿应试教育 553.4 评估:考试评分 583.5 简单分类器#1:最近邻分类器、远距离关系和假设 593.5.1 定义相似性 603.5.2 k?-最近邻中的k 613.5.3 答案组合 613.5.4 k?-最近邻、参数和非参数方法 613.5.5 建立一个k?-最近邻分类模型 623.6 简单分类器#2:朴素贝叶斯分类器、 概率和违背承诺 643.7 分类器的简单评估 663.7.1 机器学习的性能 663.7.2 分类器的资源消耗 673.7.3 独立资源评估 733.8 本章参考阅读资料 773.8.1 局限性和尚未解决的问题 773.8.2 本章小结 773.8.3 章节注释 773.8.4 练习题 79第4章 预测数值:回归入门 804.1 一个简单的回归数据集 804.2 最近邻回归和汇总统计 824.2.1 中心度量方法:中位数和均值 834.2.2 构建一个k?-最近邻回归模型 854.3 线性回归和误差 864.3.1 地面总是不平坦的:为什么需要斜坡 864.3.2 倾斜直线 894.3.3 执行线性回归 914.4 优化:选择最佳答案 924.4.1 随机猜测 924.4.2 随机调整 934.4.3 智能调整 944.4.4 计算的捷径 944.4.5 线性回归的应用 954.5 回归器的简单评估和比较 954.5.1 均方根误差 954.5.2 机器学习的性能 964.5.3 回归过程中的资源消耗 964.6 本章参考阅读资料 984.6.1 局限性和尚未解决的问题 984.6.2 本章小结 994.6.3 章节注释 994.6.4 练习题 99第二部分 通用评估技术第5章 机器学习算法的评估和比较分析 1025.1 评估和大道至简的原则 1025.2 机器学习阶段的术语 1035.2.1 有关机器的重新讨论 1045.2.2 更规范的阐述 1065.3 过拟合和欠拟合 1095.3.1 合成数据和线性回归 1095.3.2 手动操控模型的复杂度 1115.3.3 金凤花姑娘(“恰到好处”原则):可视化过拟合、欠拟合和“最佳拟合” 1125.3.4 简单性 1155.3.5 关于过拟合必须牢记的注意事项 1165.4 从误差到成本 1165.4.1 损失 1165.4.2 成本 1175.4.3 评分 1185.5 (重新)抽样:以少胜多 1195.5.1 交叉验证 1195.5.2 分层抽样 1225.5.3 重复的训练-测试集拆分 1245.5.4 一种更好的方法和混排 1275.5.5 留一交叉验证 1315.6 分解:将误差分解为偏差和方差 1325.6.1 数据的方差 1335.6.2 模型的方差 1335.6.3 模型的偏差 1345.6.4 结合所有的因素 1345.6.5 偏差-方差权衡示例 1355.7 图形可视化评估和比较 1395.7.1 学习曲线:到底需要多少数据 1395.7.2 复杂度曲线 1415.8 使用交叉验证比较机器学习模型 1435.9 本章参考阅读资料 1445.9.1 本章小结 1445.9.2 章节注释 1445.9.3 练习题 146第6章 评估分类器 1476.1 基线分类器 1476.2 准确率以外:分类器的其他度量指标 1496.2.1 从混淆矩阵中消除混淆 1516.2.2 错误的方式 1516.2.3 基于混淆矩阵的度量指标 1526.2.4 混淆矩阵编码 1546.2.5 处理多元类别:多元类别平均 1566
|
內容試閱:
|
1983年,电影WarGames(战争游戏)问世。那时我还是一个未成年的孩子,一些电影情节让我深深地着迷:爆发一场核灾难的可能性,电影主角与计算机系统之间近乎神奇的互动方式……但是,最令我着迷的是机器居然具有能够自主学习的潜力。作为一个天真的少年,我花了好几年的时间研究战略核武器库。随后,大约又过了10年,我才开始认真学习计算机程序设计。指引一台计算机去执行一个设定的过程非常神奇,在学习复杂系统的细节的同时,又满足了我的好奇心,这真是一种非常美妙的体验。然而,路漫漫其修远兮,吾将上下而求索。几年之后,我开始编写第一个明确设计为可以学习(learn)的程序。我欣喜若狂,并深深地意识到这便是我的精神家园。因此,我想和大家分享一下这个具有自主学习能力的计算机程序世界。读者对象本书假定的读者对象是哪些人呢?本书的读者对象是机器学习的初学者。更重要的是,读者只需要具备少量的大学水平的数学知识,而且本书并不会试图提高关于数学方面的要求。虽然许多机器学习的书籍都会花费大量的篇幅阐述数学概念和方程,但我将尽最大的努力减轻读者有关数学知识方面的负担。从本书书名可见,我确实希望读者有Python语言编程基础。如果读者能够阅读Python程序,那么一定能够从本书的讨论中获得更多的信息。虽然许多关于机器学习的书籍都依赖于数学知识,但本书却借助故事、图片和Python代码来与读者进行交流。当然,本书偶尔也会涉及数学公式。但是,如果读者对这些数学公式不感兴趣,那么可以直接跳过大部分的数学公式。本书也会尽量为读者提供足够的上下文来解释这些数学公式,以帮助读者理解数学公式的含义。为什么推荐读者选择阅读本书呢?因为我和读者之间可以达成共识:所有选择这本书的读者都想学习有关机器学习的知识。虽然读者可能有着不同的专业背景:也许读者是一个专注于机器学习的计算机入门班的学生;也许读者是一个处于事业中期的商业分析师,但突然需要拥有超越电子表格分析能力极限的其他方法;也许读者是一个技术爱好者,希望扩大自己的兴趣;抑或读者是一个科学家,需要以一种新的方式分析数据。机器学习正在渗透到社会的方方面面。根据读者的专业背景,本书会对每个人提供不同的帮助。即便精通数学的读者,如果想利用Python进行机器学习方面的突破,也能从本书中收获良多。因此,本书的目标是让有兴趣或者需要实现机器学习项目的读者,通过使用Python scikit-learn和其他相关库,以一种具体的学习方式理解和掌握机器学习的过程及最重要的概念。读者将会发现书中所有的模式、策略、陷阱和疑难杂症,都适用于他们将要学习、构建或者使用的所有的机器学习系统。方法许多试图解释数学主题(例如机器学习)的书,一般都假设外行人可以轻易地读懂数学公式,并据此呈现这些数学公式。但这种方法往往使得大多数人(甚至包括那些喜欢数学的人)望而却步。本书则通过可视化的方式,将语言描述与可运行的代码相结合,在读者的脑海中构建一幅更好的机器学习过程图。我是一个充满热情并且经过良好训练的计算机科学家,同时热爱创造。创造会让我知晓自己是否已经达到了理解某些事物的真实水平。读者可能熟知这句人生格言:“如果真的想了解一件事,那么最好的方法是把这件事传授给别人。”那么,可以由这句话衍生出另一句人生格言:“如果真的想了解一件事,那么最好的方法是训练计算机完成该任务!”这正是我要教授读者机器学习知识的目的所在。基于最基础的数学知识,本书将为读者讲述最重要且最常用的机器学习工具和技术背后的概念,然后,向读者展示如何让计算机完成该任务。注意:本书不会从零开始编写程序以实现这些方法。我们将站在巨人的肩膀上,使用一些非常强大的、节省时间的、预先构建的软件库(稍后将对此进行详细阐述)。本书不会详细地涵盖所有这些库,因为这需要海量的篇幅。相反,本书将从实际需求出发。本书将采用最好的工具来完成任务,并提供足够的背景知识以指导读者理解本书将要使用的概念。对于偏好数学的读者,本书会提供一些更深入的参考资料,以供他们进一步研究。这些参考资料将在各章末尾的章节注释中提供,以便其他读者轻松地跳过这些资料。如果读者正在阅读这篇前言,以决定是否需要投入时间来阅读本书,这里需要向读者指明一些超出本书范围的内容。本书不会深入研究数学证明,也不会依赖数学来阐述原理。市面上存在许多按照上述思路编写的教科书,本书在每章结尾将提供一些相关参考书籍。同样,本书假设目标读者具有熟练的初级或者中级水平的Python程序设计知识。然而,对于一些更高级的Python主题和内容(主要来自第三方包,例如NumPy或者Pandas),本书将解释其背后的原理,以便读者能够理解每种技术及其背景知识。概述在本书第一部分,我将帮助读者打下坚实的基础。第1章将介绍有关机器学习的语言描述和概念概述。第2章将采取一种略微不同的方法,介绍一些在机器学习中反复出现的数学和计算主题。第3章和第4章将引导读者初步完成构建、训练和评估机器学习系统的基本步骤,这些机器学习
|
|