前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >写给开发者的机器学习指南(三)

写给开发者的机器学习指南(三)

作者头像
哒呵呵
发布2018-08-06 17:50:33
4010
发布2018-08-06 17:50:33
举报
文章被收录于专栏:鸿的学习笔记鸿的学习笔记

Validation techniques

在本节中,我们将解释一些可用于模型验证的技术,以及在验证技术范围内机器学习领域常用的一些术语。

Crossvalidation

交叉验证技术是机器学习领域最常见的技术之一。它的本质是在训练你的模型时忽略你的数据集的一部分,然后使用模型来预测这个被忽略的数据。将预测值与实际值进行比较,从而显示模型的性能和训练数据的质量。

这种交叉验证最重要的部分是分割数据。执行这个技术时,应始终使用完整的数据集。换句话说,你不应该随机选择X个数据点进行训练,然后随机选择X个数据点进行测试,因为一些数据点可以在两个集合中,而其他数据点可能不会被使用。

(2 fold)Cross validation

在2折交叉验证中,您对每个折叠执行将数据分成测试和训练(所以2次)两个步骤,并使用训练数据集训练模型,然后使用测试集验证。这样做允许您计算测试数据的预测中的错误2次。 这些误差值应当没有显著差异。 如果他们这样做,您的数据或您选择的模型预测的功能是有问题的。无论哪种方式,您应该更多地查看数据,了解您的数据在特定情况下正在发生什么,因为基于数据训练模型可能会导致错误数据的过拟合模型。

Regularization

正则化的基本思想是通过简化模型来防止过度拟合你的模型。假设你的数据是一个三y元多项式函数,但你的数据有噪声,这将导致模型的更到维度。 然后,该模型对新数据执行得不好,而它似乎是一个很好的模型。 正则化有助于防止这种情况,通过用特定值λ简化模型。然而,为了找到一个模型的正确的lambda是困难的,当你不知道什么时候模型过拟合或不过拟合。 这就是为什么交叉验证通常用于找到最适合您的模型的lambda。

Precision

在计算机科学领域,我们使用精度这个术语来定义所选项目的一定数量的相关性。因此,当您计算文档上搜索算法的精度值时,该算法的精度由结果集中有多少文档的相关性定义的。

精度值由下式确定:

假设我们有文档{aa,ab,bc,bd,ee}作为完整语料库,并且我们查询名称中带有a的文档。 如果我们的算法将返回文档集合{aa,ab},则精度显然是100%。 让我们通过填写公式来验证它:

实际上是100%。 如果我们再次运行查询,但获得的结果多于{aa,ab},那么我们还要返回{bc,de},这会影响精度,如下所示:

这里的结果包含有相关性的结果,但也有2个不相关的结果。 这导致了精度降低。 但是,如果你计算这个例子的查全率是100%。这就是精度和查全率是如何彼此有不同的。

--未完待续

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 鸿的学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档