机器学习实践测试驱动的开发方法pdf

下载地址:网盘下载

内容简介  · · · · · ·

本书主要介绍如何将测试驱动开发运用于机器学习算法。每一章都通过示例介绍了机器学习技术能够解决的有关数据的具体问题,以及求解问题和处理数据的方法。具体涵盖了测试驱动的机器学习、机器学习概述、K 近邻分类、朴素贝叶斯分类、隐马尔可夫模型、支持向量机、神经网络、聚类、核岭回归、模型改进与数据提取等内容。通过学习本书,你将能够利用机器学习技术解决涉及数据的现实问题。

作者简介  · · · · · ·

Matthew Kirk

是Modulus 7公司的创始人,该公司针对数据科学和Ruby开发提供咨询服务。Matthew从事程序设计工作已15年有余,在全球许多技术大会上做过机器学习和数据科学主题的演讲。

目录  · · · · · ·

前言  xi
第1章 测试驱动的机器学习  1
1.1 TDD的历史  2
1.2 TDD与科学方法  2
1.2.1 TDD可构建有效的逻辑命题  3
1.2.2 TDD要求你将假设以文字或代码的形式记录下来  5
1.2.3 TDD和科学方法的闭环反馈机制  5
1.3 机器学习中的风险  5
1.3.1 数据的不稳定性  6
1.3.2 欠拟合  6
1.3.3 过拟合  7
1.3.4 未来的不可预测性  8
1.4 为降低风险应采用的测试  8
1.4.1 利用接缝测试减少数据中的不稳定因素  8
1.4.2 通过交叉验证检验拟合效果  9
1.4.3 通过测试训练速度降低过拟合风险  10
1.4.4 检测未来的精度和查全率漂移情况  11
1.5 小结  11
第2章 机器学习概述  13
2.1 什么是机器学习  13
2.1.1 有监督学习  13
2.1.2 无监督学习  14
2.1.3 强化学习  15
2.2 机器学习可完成的任务  15
2.3 本书采用的数学符号  16
2.4 小结  16
第3章 K近邻分类  17
3.1 K近邻分类的历史  18
3.2 基于邻居的居住幸福度  18
3.3 如何选择K  21
3.3.1 猜测K的值  21
3.3.2 选择K的启发式策略  21
3.3.3 K的选择算法  24
3.4 何谓“近”  24
3.4.1 Minkowski距离  25
3.4.2 Mahalanobis距离  26
3.5 各类别的确定  27
3.6 利用KNN算法和OpenCV实现胡须和眼镜的检测  29
3.6.1 类图  29
3.6.2 从原始图像到人脸图像  30
3.6.3 Face类  33
3.6.4 Neighborhood类  36
3.7 小结  43
第4章 朴素贝叶斯分类  45
4.1 利用贝叶斯定理找出欺诈性订单  45
4.1.1 条件概率  46
4.1.2 逆条件概率  47
4.2 朴素贝叶斯分类器  48
4.2.1 链式法则  48
4.2.2 贝叶斯推理中的朴素性  49
4.2.3 伪计数  50
4.3 垃圾邮件过滤器  51
4.3.1 类图  51
4.3.2 数据源  52
4.3.3 Email类  52
4.3.4 符号化与上下文  55
4.3.5 SpamTrainer类  56
4.3.6 通过交叉验证将错误率最小化  63
4.4 小结  66
第5章 隐马尔可夫模型  67
5.1 利用状态机跟踪用户行为  67
5.1.1 隐含状态的输出和观测  69
5.1.2 利用马尔可夫假设简化问题  70
5.1.3 利用马尔可夫链而非有限状态机  71
5.1.4 隐马尔可夫模型  71
5.2 评估:前向-后向算法  72
5.3 利用维特比算法求解解码问题  75
5.4 学习问题  76
5.5 利用布朗语料库进行词性标注  76
5.5.1 词性标注器的首要问题:CorpusParser  77
5.5.2 编写词性标注器  79
5.5.3 通过交叉验证获取模型的置信度  86
5.5.4 模型的改进方案  88
5.6 小结  88
第6章 支持向量机  89
6.1 求解忠诚度映射问题  89
6.2 SVM的推导过程  91
6.3 非线性数据  92
6.3.1 核技巧  92
6.3.2 软间隔  96
6.4 利用SVM进行情绪分析  97
6.4.1 类图  98
6.4.2 Corpus类  99
6.4.3 从语料库返回一个无重复元素的单词集  102
6.4.4 CorpusSet类  103
6.4.5 SentimentClassifier类  107
6.4.6 随时间提升结果  111
6.5 小结  111
第7章 神经网络  113
7.1 神经网络的历史  113
7.2 何为人工神经网络  114
7.2.1 输入层  115
7.2.2 隐含层  116
7.2.3 神经元  117
7.2.4 输出层  122
7.2.5 训练算法  122
7.3 构建神经网络  125
7.3.1 隐含层数目的选择  126
7.3.2 每层中神经元数目的选择  126
7.3.3 误差容限和最大epoch的选择  126
7.4 利用神经网络对语言分类  127
7.4.1 为语言编写接缝测试  129
7.4.2 网络类的交叉验证  132
7.4.3 神经网络的参数调校  135
7.4.4 收敛性测试  136
7.4.5 神经网络的精度和查全率  136
7.4.6 案例总结  136
7.5 小结  136
第8章 聚类  137
8.1 用户组  138
8.2 K均值聚类  139
8.2.1 K均值算法  139
8.2.2 K均值聚类的缺陷  140
8.3 EM聚类算法  141
8.4 不可能性定理  142
8.5 音乐归类  142
8.5.1 数据收集  143
8.5.2 用K均值聚类分析数据  144
8.5.3 EM聚类  146
8.5.4 爵士乐的EM聚类结果  149
8.6 小结  151
第9章 核岭回归  153
9.1 协同过滤  153
9.2 应用于协同过滤的线性回归  154
9.3 正则化技术与岭回归  157
9.4 核岭回归  158
9.5 理论总结  158
9.6 用协同过滤推荐啤酒风格  159
9.6.1 数据集  159
9.6.2 我们所需的工具  159
9.6.3 评论者  162
9.6.4 编写代码确定某人的偏好  164
9.6.5 利用用户偏好实现协同过滤  166
9.7 小结  167
第10章 模型改进与数据提取  169
10.1 维数灾难问题  169
10.2 特征选择  171
10.3 特征变换  173
10.4 主分量分析  175
10.5 独立分量分析  177
10.6 监测机器学习算法  179
10.6.1 精度与查全率:垃圾邮件过滤  179
10.6.2 混淆矩阵  181
10.7 均方误差  182
10.8 产品环境的复杂性  183
10.9 小结  183
第11章 结语  185
11.1 机器学习算法回顾  185
11.2 如何利用这些信息来求解问题  186
11.3 未来的学习路线  187
作者介绍  188
封面介绍  188

下载地址:网盘下载

原文地址:https://www.cnblogs.com/longgg/p/8424128.html

时间: 2024-10-08 10:09:23

机器学习实践测试驱动的开发方法pdf的相关文章

机器学习实践 测试驱动的开发方法——互动出版网

这篇是计算机类的优质预售推荐>>>><机器学习实践 测试驱动的开发方法> 用测试驱动方法开发出可靠.稳定的机器学习算法. 编辑推荐 本书介绍在开发机器学习算法时如何运用测试驱动的方法,捕捉可能扰乱正常分析的错误.这本实践指南从测试驱动开发和机器学习的基本原理讲起,展示了如何将测试驱动开发运用于若干机器学习算法,包括朴素贝叶斯分类器和神经网络. 任何机器学习算法都有一些传统的测试方法,但它们通常都不会考虑编码中的人为错误.借助测试驱动的开发方法,你便不会像其他研究者那样盲

Scrum敏捷软件开发之技术实践——测试驱动开发TDD

重复无聊的定义 测试驱动开发,英文全称Test-Driven Development,简称TDD,是一种不同于传统软件开发流程的新型的开发方法.它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行.这有助于编写简洁可用和高质量的代码,并加速开发过程.(来源百度百科) 重复无聊的过程 测试驱动开发的基本过程如下: 快速新增一个测试(编者注:并非快速) 运行所有的测试(有时候只需要运行一个或一部分),发现新增的测试不能通过 做一些小小的改动,尽快

快速入门:通过测试资源管理器进行由测试驱动的开发

源码下载地址:http://pan.baidu.com/s/1ntooNO1 我们建议你创建单元测试来帮助保持你的代码在众多递进式开发步骤中正确运行. 你可以使用几个框架来编写单元测试,包括第三方开发的一些框架. 某些测试框架专用于不同语言或平台中的测试. "测试资源管理器"为其中任意框架中的单元测试提供了一个接口. 大多数常用框架都有适配器,你可以为其他框架编写自己的适配器. "测试资源管理器"将取代 Visual Studio 早期版本中的单元测试窗口. 其优点

分享《Python机器学习实践指南》(高清中文版PDF+高清英文版PDF+源代码)

下载:https://pan.baidu.com/s/11dGldpITOoUUJmS9eD5ENw Python机器学习实践指南(高清中文版PDF+高清英文版PDF+源代码) 中文和英文两版对比学习, 带目录书签,可复制粘贴:讲解详细并配有源代码. 其中,高清中文版如图: 原文地址:http://blog.51cto.com/3215120/2301528

USB开发——内核USB驱动+libusb开发方法

linux内核已经具备usb驱动,所以一些设备使用可以免驱,libusb是针对linux内核中ubs驱动的一套api,会自行调用usb驱动接口,并为应用提供api接口,将usb设备开发减少为应用层开发. 一.usb驱动配置: ..... 二.libusb移植: ..... 三.基于libusb的应用开发: ..... 四.深入libusb: ..... 五.深入内核usb驱动: ..... 未完待续....

面向机器智能的TensorFlow实践(高清版)PDF

面向机器智能的TensorFlow实践(高清版)PDF百度网盘链接:https://pan.baidu.com/s/1Sr013uYIkeXT98ztddeIEA 提取码:s5z5 复制这段内容后打开百度网盘手机App,操作更方便哦内容简介 · · · · · · 本书是一本佳的TensorFlow入门指南.几位作者都来自研发一线,他们用自己的宝贵经验,结合众多高质量的代码,生动讲解TensorFlow的底层原理,并从实践角度介绍如何将两种常见模型--深度卷积网络.循环神经网络应用到图像理解和自

机器学习实践:《Python机器学习实践指南》中文PDF+英文PDF+代码

机器学习是近年来渐趋热门的一个领域,同时Python 语言经过一段时间的发展也已逐渐成为主流的编程语言之一.<Python机器学习实践指南>结合了机器学习和Python 语言两个热门的领域,通过利用两种核心的机器学习算法来将Python 语言在数据分析方面的优势发挥到极致. 共有10 章.第1 章讲解了Python 机器学习的生态系统,剩余9 章介绍了众多与机器学习相关的算法,包括各类分类算法.数据可视化技术.推荐引擎等,主要包括机器学习在公寓.机票.IPO 市场.新闻源.内容推广.股票市场.

测试驱动android

测试驱动android开发 在安卓模拟器或者真机上跑测试用例速度很慢.构建.部署.启动app,通常需要花费一分钟或者更久.这不是TDD(测试驱动开发)模式.Robolectric提供一种更好的方式. 可能你一直尝试在java IDE中使用junit或者testng直接跑测试用例,但是一直报java.lang.RuntimeException: Stub!异常. 这个异常是因为在jdk中没有android运行环境.而现在Robolectric这款android单元测试工具,模拟了android s

测试驱动开发TDD(一)TDD的好处及介绍

背景 一个高效的软件开发过程对软件开发人员来说是至关重要的,决定着开发是痛苦的挣扎,还是不断进步的喜悦.国人对软件蓝领的不屑,对繁琐冗长的传统开发过程的不耐,使大多数开发人员无所适从.最近兴起的一些软件开发过程相关的技术,提供一些比较高效.实用的软件过程开发方法.其中比较基础.关键的一个技术就是测试驱动开发(Test-Driven Development).虽然TDD光大于极限编程,但测试驱动开发完全可以单独应用.下面就从开发人员使用的角度进行介绍,使开发人员用最少的代价尽快理解.掌握.应用这种