From b694ed53a4fc38c6508efa3374ebcebeeceb4dd6 Mon Sep 17 00:00:00 2001 From: MaloneGod <809829352@qq.com> Date: Thu, 7 Mar 2019 20:35:56 +0800 Subject: [PATCH] =?UTF-8?q?Update=201.=E6=9C=BA=E5=99=A8=E5=AD=A6=E4=B9=A0?= =?UTF-8?q?=E6=A6=82=E8=A7=88.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 还有图1-14和图1-13弄成一样的了,请重新上传图1-14 --- ...46\344\271\240\346\246\202\350\247\210.md" | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git "a/docs/1.\346\234\272\345\231\250\345\255\246\344\271\240\346\246\202\350\247\210.md" "b/docs/1.\346\234\272\345\231\250\345\255\246\344\271\240\346\246\202\350\247\210.md" index f872efb..e92f3e9 100644 --- "a/docs/1.\346\234\272\345\231\250\345\255\246\344\271\240\346\246\202\350\247\210.md" +++ "b/docs/1.\346\234\272\345\231\250\345\255\246\344\271\240\346\246\202\350\247\210.md" @@ -88,7 +88,7 @@ * 是否在人类监督下进行训练(监督,非监督,半监督和强化学习) * 是否可以动态渐进学习(在线学习 vs 批量学习) -* 它们是否只是通过简单地比较新的数据点和已知的数据点,或者在训练数据中进行模式识别,以建立一个预测模型,就像科学家所做的那样(基于实例学习 vs 基于模型学习) +* 它们是否只是通过简单地比较新的数据点和已知的数据点,还是在训练数据中进行模式识别,以建立一个预测模型,就像科学家所做的那样(基于实例学习 vs 基于模型学习) 规则并不仅限于以上的,你可以将他们进行组合。例如,一个先进的垃圾邮件过滤器可以使用神经网络模型动态进行学习,用垃圾邮件和普通邮件进行训练。这就让它成了一个在线、基于模型、监督学习系统。 @@ -137,16 +137,16 @@ 下面是一些最重要的非监督学习算法(我们会在第 8 章介绍降维): -* 聚类 +* **聚类** K 均值 层次聚类分析(Hierarchical Cluster Analysis,HCA) 期望最大值 -* 可视化和降维 +* **可视化和降维** 主成分分析(Principal Component Analysis,PCA) 核主成分分析 局部线性嵌入(Locally-Linear Embedding,LLE) t-分布邻域嵌入算法(t-distributed Stochastic Neighbor Embedding,t-SNE) -* 关联性规则学习 +* **关联性规则学习** Apriori 算法 Eclat 算法 @@ -178,7 +178,7 @@ 一些算法可以处理部分带标签的训练数据,通常是大量不带标签数据加上小部分带标签数据。这称作半监督学习(图 1-11)。 -一些图片存储服务,比如 Google Photos,是半监督学习的好例子。一旦你上传了所有家庭相片,它就能自动识别到人物 A 出现在了相片 1、5、11 中,另一个人 B 出现在了相片 2、5、7 中。这是算法的非监督部分(聚类)。现在系统需要的就是你告诉这两个人是谁。只要给每个人一个标签,算法就可以命名每张照片中的每个人,特别适合搜索照片。 +一些图片存储服务,比如 Google Photos,是半监督学习的好例子。一旦你上传了所有家庭相片,它就能自动识别到人物 A 出现在了相片 1、5、11 中,另一个人 B 出现在了相片 2、5、7 中。这是算法的非监督部分(聚类)。现在系统需要的就是你告诉它这两个人是谁。只要给每个人一个标签,算法就可以命名每张照片中的每个人,特别适合搜索照片。 ![](../images/chapter_1/1-11.png) @@ -188,7 +188,7 @@ ## 强化学习 -强化学习非常不同。学习系统在这里被称为智能体(agent),可以对环境进行观察,选择和执行动作,获得奖励(负奖励是惩罚,见图 1-12)。然后它必须自己学习哪个是最佳方法(称为策略,policy),以得到长久的最大奖励。策略决定了智能体在给定情况下应该采取的行动。 +强化学习非常不同。学习系统在这里被称为智能体(agent),可以对环境进行观察、选择和执行动作,并获得奖励作为回报(负奖励是惩罚,见图 1-12)。然后它必须自己学习哪个是最佳方法(称为策略,policy),以得到长久的最大奖励。策略决定了智能体在给定情况下应该采取的行动。 ![](../images/chapter_1/1-12.png) @@ -288,7 +288,7 @@ 图 1-18 几个可能的线性模型 -在使用模型之前,你需要确定`θ0`和`θ1`。如何能知道哪个值可以使模型的性能最佳呢?要回答这个问题,你需要指定性能的量度。你可以定义一个实用函数(或拟合函数)用来测量模型是否够好,或者你可以定义一个代价函数来测量模型有多差。对于线性回归问题,人们一般是用代价函数测量线性模型的预测值和训练样本的距离差,目标是使距离差最小。 +在使用模型之前,你需要确定`θ0`和`θ1`。如何能知道哪个值可以使模型的性能最佳呢?要回答这个问题,你需要指定性能的量度。你可以定义一个实用函数(或拟合函数)用来测量模型是否够好,或者你可以定义一个代价函数来测量模型有多差。对于线性回归问题,人们一般是用代价函数测量线性模型的预测值和训练样本之间的距离差,目标是使距离差最小。 接下来就是线性回归算法,你用训练样本训练算法,算法找到使线性模型最拟合数据的参数。这称作模型训练。在我们的例子中,算法得到的参数值是`θ0=4.85`和`θ1=4.91×10–5`。 @@ -364,7 +364,7 @@ print(lin_reg_model.predict(X_new)) # outputs [[ 5.96242338]] 这就是一个典型的机器学习项目。在第 2 章中,你会第一手地接触一个完整的项目。 -我们已经学习了许多关于基础的内容:你现在知道了机器学习是关于什么的,为什么它这么有用,最常见的机器学习的分类,典型的项目工作流程。现在,让我们看一看学习中会发生什么错误,导致不能做出准确的预测。 +我们已经学习了许多关于基础的内容:你现在知道了机器学习是关于什么的、为什么它这么有用、最常见的机器学习的分类、典型的项目工作流程。现在,让我们看一看学习中会发生什么错误,导致不能做出准确的预测。 # 机器学习的主要挑战 @@ -376,7 +376,7 @@ print(lin_reg_model.predict(X_new)) # outputs [[ 5.96242338]] 机器学习还达不到这个程度;需要大量数据,才能让多数机器学习算法正常工作。即便对于非常简单的问题,一般也需要数千的样本,对于复杂的问题,比如图像或语音识别,你可能需要数百万的样本(除非你能重复使用部分存在的模型)。 -> 数据不合理的有效性 +> 数据的不可思议的有效性 > > 在一篇 2001 年发表的[著名论文](http://ucrel.lancs.ac.uk/acl/P/P01/P01-1005.pdf)中,微软研究员 Michele Banko 和 Eric Brill 展示了不同的机器学习算法,包括非常简单的算法,一旦有了大量数据进行训练,在进行去除语言歧义的测试中几乎有相同的性能(见图 1-20)。 > @@ -422,7 +422,7 @@ print(lin_reg_model.predict(X_new)) # outputs [[ 5.96242338]] ## 不相关的特征 -俗语说:进来的是垃圾,出去的也是垃圾。你的系统只有在训练数据包含足够相关特征、非相关特征不多的情况下,才能进行学习。机器学习项目成功的关键之一是用好的特征进行训练。这个过程称作特征工程,包括: +俗语说:如果进来的是垃圾,那么出去的也是垃圾。你的系统只有在训练数据包含足够相关特征、非相关特征不多的情况下,才能进行学习。机器学习项目成功的关键之一是用好的特征进行训练。这个过程称作特征工程,包括: * 特征选择:在所有存在的特征中选取最有用的特征进行训练。 * 特征提取:组合存在的特征,生成一个更有用的特征(如前面看到的,可以使用降维算法)。 @@ -448,9 +448,9 @@ print(lin_reg_model.predict(X_new)) # outputs [[ 5.96242338]] > * 收集更多的训练数据 > * 减小训练数据的噪声(比如,修改数据错误和去除异常值) -限定一个模型以让它更简单,降低过拟合的风险被称作正则化(regularization)。例如,我们之前定义的线性模型有两个参数,`θ0`和`θ1`。它给了学习算法两个自由度以让模型适应训练数据:可以调整截距`θ0`和斜率`θ1`。如果强制`θ1=0`,算法就只剩一个自由度,拟合数据就会更为困难:它所能做的只是将拟合曲线上下移动去尽可能地靠近训练实例,结果会在平均值附近。这就是一个非常简单的模型!如果我们允许算法可以修改`θ1`,但是只能在一个很小的范围内修改,算法的自由度就会介于 1 和 2 之间。它要比两个自由度的模型简单,比 1 个自由度的模型要复杂。你的目标是在完美拟合数据和保持模型简单性上找到平衡,确保算法的推广效果。 +限定一个模型以让它更简单并且降低过拟合的风险被称作正则化(regularization)。例如,我们之前定义的线性模型有两个参数,`θ0`和`θ1`。它给了学习算法两个自由度以让模型适应训练数据:可以调整截距`θ0`和斜率`θ1`。如果强制`θ1=0`,算法就只剩一个自由度,拟合数据就会更为困难:它所能做的只是将拟合曲线上下移动去尽可能地靠近训练实例,结果会在平均值附近。这就是一个非常简单的模型!如果我们允许算法可以修改`θ1`,但是只能在一个很小的范围内修改,算法的自由度就会介于 1 和 2 之间。它要比两个自由度的模型简单,比 1 个自由度的模型要复杂。你的目标是在完美拟合数据和保持模型简单性上找到平衡,确保算法的推广效果。 -图 1-23 展示了三个模型:虚线表示用缺失部分国家的数据训练的原始模型,短划线是我们的第二个用所有国家训练的模型,实线模型的训练数据和第一个相同,但进行了正则化限制。你可以看到正则化强制模型有一个小的斜率,它对训练数据的拟合不是那么好,但是对新样本的推广效果好。 +图 1-23 展示了三个模型:虚线表示用一些缺失国家的数据训练的原始模型,短划线是我们的第二个用所有国家训练的模型,实线模型的训练数据和第一个相同,但进行了正则化限制。你可以看到正则化强制模型有一个小的斜率,它对训练数据的拟合不是那么好,但是对新样本的推广效果好。 ![](../images/chapter_1/1-23.png) -- GitLab