唐山自助建站,全县网站建设情况通报,深圳市龙华区大浪街道,wordpress安全问题一、决定下一步做什么
在机器学习的学习过程中#xff0c;我们已经接触了许多不同的学习算法#xff0c;逐渐深入了解了先进的机器学习技术。然而#xff0c;即使在了解了这些算法的情况下#xff0c;仍然存在一些差距#xff0c;有些人能够高效而有力地运用这些算法我们已经接触了许多不同的学习算法逐渐深入了解了先进的机器学习技术。然而即使在了解了这些算法的情况下仍然存在一些差距有些人能够高效而有力地运用这些算法而其他人可能对接下来的步骤感到陌生不清楚如何正确运用这些知识。
在本节课程中我们将讨论一个关键问题在机器学习项目中当我们面临改进算法性能的任务时我们应该如何决定接下来的工作方向呢为了解答这一问题我们将以预测房价的学习例子为例假设我们已经完成了正则化线性回归即最小化代价函数 J 的值。
需要改进的情况
假设我们在使用训练好的模型预测新的房屋样本时发现了巨大的误差接下来应该怎么办呢以下是一些可能的改进方法
1. 获取更多的训练实例
通过电话调查或上门调查等方式获取更多的不同房屋出售数据。然而获得更多的训练数据可能代价较大而且并不总是有效。
2. 减少特征的数量
精心挑选一小部分特征避免过拟合。有时候减少特征数量可以提高算法的泛化能力。
3. 获得更多的特征
有时候增加特征可以改善算法性能但同样需要谨慎选择。
4. 增加多项式特征
引入特征的高次方如 x^2、x^3有时可以更好地拟合数据。
5. 调整正则化程度
通过增加或减少正则化参数 调整模型的复杂度以防止过拟合或欠拟合。 避免盲目尝试
在选择这些方法时我们不应该盲目地随机尝试而是运用一些机器学习诊断法来帮助判断哪些方法对我们的算法是有效的。这些诊断法是一种测试方法通过执行这些测试我们能够深入了解算法的表现并找到有针对性的改进方法。
在接下来的视频中我们将学习如何评估机器学习算法的性能并介绍一些机器学习诊断法这些方法有助于更深入地了解算法的表现指导我们选择下一步的改进方法。虽然实施这些诊断法可能需要一些时间但它们能够帮助我们更有效地改进机器学习系统节省开发时间。 二、评估一个假设
参数选择的困境
当我们选择学习算法的参数时通常我们会优化这些参数以使训练误差最小化。然而仅仅因为一个假设函数具有很小的训练误差并不能说明它就是一个好的假设函数。我们已经学到了过拟合的例子即使在训练集上表现很好的假设函数在新的数据集上可能表现很差。 评估过拟合
为了评估算法是否过拟合我们采用以下方法 分割数据集 我们将数据分为训练集和测试集通常采用 70% 的数据作为训练集剩下的 30% 作为测试集。重要的是两者都应包含各种类型的数据并在划分前对数据进行洗牌。 测试集评估 对于线性回归模型我们使用测试集数据计算代价函数 J。对于逻辑回归模型我们利用测试数据集计算代价函数并计算误分类率。对于每一个测试集实例计算 (h(x) - y)^2然后对计算结果求平均。 这样我们就能够在新的数据集上验证我们的模型表现并得到更准确的评估。这种方法能够帮助我们判断模型是否过拟合提高算法的泛化能力。
三、模型选择和交叉验证集
模型选择步骤
我们将数据划分为训练集、交叉验证集和测试集其中分配的百分比通常为 60% 的数据作为训练集20% 的数据作为交叉验证集剩下的 20% 作为测试集。 模型选择的步骤如下
使用训练集训练出多个模型每个模型对应不同次数的二项式模型。对每个模型使用交叉验证集计算交叉验证误差代价函数的值。选择具有最小交叉验证误差的模型作为最终模型。使用步骤 3 中选出的模型对测试集计算得出推广误差代价函数的值。
这个过程确保我们选择的模型在未见过的数据上表现良好避免了仅仅根据训练误差来选择模型可能导致的过拟合问题。 误差计算方法
在以上过程中我们使用了不同数据集上的不同误差计算方法
训练误差 使用训练集数据计算代价函数 J。交叉验证误差 对于每一个模型使用交叉验证集数据计算代价函数。测试误差 对于最终选出的模型使用测试集数据计算代价函数。 这样的综合考虑可以更全面地评估模型的性能确保所选择的模型对于未知数据的泛化能力较强。
参考资料
[中英字幕]吴恩达机器学习系列课程
黄海广博士 - 吴恩达机器学习个人笔记