From 78873404c0aab2e5cf4b89edad33341d860d3825 Mon Sep 17 00:00:00 2001 From: benjas <909336740@qq.com> Date: Sun, 27 Dec 2020 12:33:19 +0800 Subject: [PATCH] Add comment of Establish a Baseline --- ...筑能源利用率预测-checkpoint.ipynb | 53 ++++++++++++++++--- ...处理_建筑能源利用率预测.ipynb | 53 ++++++++++++++++--- 2 files changed, 90 insertions(+), 16 deletions(-) diff --git a/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/.ipynb_checkpoints/1_数据预处理_建筑能源利用率预测-checkpoint.ipynb b/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/.ipynb_checkpoints/1_数据预处理_建筑能源利用率预测-checkpoint.ipynb index 95b06f1..f82790a 100644 --- a/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/.ipynb_checkpoints/1_数据预处理_建筑能源利用率预测-checkpoint.ipynb +++ b/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/.ipynb_checkpoints/1_数据预处理_建筑能源利用率预测-checkpoint.ipynb @@ -3224,13 +3224,33 @@ "print(y_test.shape)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "切分完成,6622条数据为训练集,2839为预测集。\n", + "\n", + "在这个notebook还有最后一步:建立我们的baseline基准线。" + ] + }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 建立一个Baseline\n", "\n", - "### 衡量标准:平均绝对误差 - Mean Absolute Error(MAE)" + "建立一个Baseline是很重要的。如果我们建立的模型不能超过随机猜测(即50%的成功率),那么我们可能不得不承认机器学习不适合这个问题。或者是我们没有使用正确的模型,亦或者是需要更多的数据,也可能是有一个更简单的解决方案不需要机器学习。\n", + "\n", + "对于回归任务,一个很好的简单基线是测试集上的所有目标的中值。这很容易实现,并为我们的模型设置了一个相对较低的门槛:如果它们不能比猜测中值更好,那么我们就需要重新考虑我们的方法。" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 衡量标准:平均绝对误差 - Mean Absolute Error(MAE)\n", + "\n", + "在机器学习任务中使用了许多度量标准,很难知道要选择哪一个。大部分时间,它将取决于特定的问题,如果你有一个特定的目标来优化。[AndrewNg的建议使用单一的实值度量来比较模型](https://www.coursera.org/learn/machine-learning-projects/lecture/wIKkC/single-number-evaluation-metric),因为它简化了评估过程。与其计算多个指标并试图确定每个指标的重要性,不如使用单个数字。在这种情况下,由于我们进行了回归,所以平均绝对误差(MAE)是一个合适的度量。这也是可解释的,它代表所有单个观测值与算术平均值的偏差的绝对值的平均。" ] }, { @@ -3264,6 +3284,30 @@ "print(\"Baseline Performance on the test set: MAE = %0.4f\" % mae(y_test, baseline_guess))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "这表明我们对测试集的平均估计值偏离了大约25个点。分数在1到100之间,所以这意味着一个简单方法的平均误差为25%。中值猜测的天真方法为我们的模型提供了一个较低的基线!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 总结\n", + "在这第一部分中,我们执行了机器学习问题的前三个步骤:\n", + "\n", + "* 清理并格式化原始数据\n", + "* 进行了探索性的数据分析\n", + "* 利用特征工程和特征选择开发了一组特征来训练我们的模型\n", + "* 完成了建立基线度量的关键任务,这样我们就可以确定我们的模型是否比猜测更好!\n", + "\n", + "希望你开始了解流程的每一部分是如何流入下一部分的:清理数据并将其转换为适当的格式,让我们进行探索性的数据分析。然后EDA在特征工程和选择阶段。这三个步骤通常是按这个顺序执行的,不过我们会根据建模结果进行更多的EDA或特征工程。数据科学是一个迭代过程,在这个过程中,我们总是在寻找改进我们先前工作的方法。这意味着我们不必一开始就把事情做好(尽管我们可以尽最大努力),因为一旦我们对问题有了更多的了解,几乎总是有机会重新审视我们的决定。\n", + "\n", + "在第二部分中,我们将重点介绍几种机器学习方法的实现,选择最佳模型,并使用交叉验证的超参数调整对模型进行优化。最后一步,我们将保存我们开发的数据集,以便在下一部分中再次使用。" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -3283,13 +3327,6 @@ "y.to_csv(\"data/training_labels.csv\", index=False)\n", "y_test.to_csv(\"data/testing_labels.csv\", index=False)" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/1_数据预处理_建筑能源利用率预测.ipynb b/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/1_数据预处理_建筑能源利用率预测.ipynb index 95b06f1..f82790a 100644 --- a/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/1_数据预处理_建筑能源利用率预测.ipynb +++ b/机器学习竞赛实战_优胜解决方案/建筑能源利用率预测/1_数据预处理_建筑能源利用率预测.ipynb @@ -3224,13 +3224,33 @@ "print(y_test.shape)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "切分完成,6622条数据为训练集,2839为预测集。\n", + "\n", + "在这个notebook还有最后一步:建立我们的baseline基准线。" + ] + }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 建立一个Baseline\n", "\n", - "### 衡量标准:平均绝对误差 - Mean Absolute Error(MAE)" + "建立一个Baseline是很重要的。如果我们建立的模型不能超过随机猜测(即50%的成功率),那么我们可能不得不承认机器学习不适合这个问题。或者是我们没有使用正确的模型,亦或者是需要更多的数据,也可能是有一个更简单的解决方案不需要机器学习。\n", + "\n", + "对于回归任务,一个很好的简单基线是测试集上的所有目标的中值。这很容易实现,并为我们的模型设置了一个相对较低的门槛:如果它们不能比猜测中值更好,那么我们就需要重新考虑我们的方法。" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 衡量标准:平均绝对误差 - Mean Absolute Error(MAE)\n", + "\n", + "在机器学习任务中使用了许多度量标准,很难知道要选择哪一个。大部分时间,它将取决于特定的问题,如果你有一个特定的目标来优化。[AndrewNg的建议使用单一的实值度量来比较模型](https://www.coursera.org/learn/machine-learning-projects/lecture/wIKkC/single-number-evaluation-metric),因为它简化了评估过程。与其计算多个指标并试图确定每个指标的重要性,不如使用单个数字。在这种情况下,由于我们进行了回归,所以平均绝对误差(MAE)是一个合适的度量。这也是可解释的,它代表所有单个观测值与算术平均值的偏差的绝对值的平均。" ] }, { @@ -3264,6 +3284,30 @@ "print(\"Baseline Performance on the test set: MAE = %0.4f\" % mae(y_test, baseline_guess))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "这表明我们对测试集的平均估计值偏离了大约25个点。分数在1到100之间,所以这意味着一个简单方法的平均误差为25%。中值猜测的天真方法为我们的模型提供了一个较低的基线!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 总结\n", + "在这第一部分中,我们执行了机器学习问题的前三个步骤:\n", + "\n", + "* 清理并格式化原始数据\n", + "* 进行了探索性的数据分析\n", + "* 利用特征工程和特征选择开发了一组特征来训练我们的模型\n", + "* 完成了建立基线度量的关键任务,这样我们就可以确定我们的模型是否比猜测更好!\n", + "\n", + "希望你开始了解流程的每一部分是如何流入下一部分的:清理数据并将其转换为适当的格式,让我们进行探索性的数据分析。然后EDA在特征工程和选择阶段。这三个步骤通常是按这个顺序执行的,不过我们会根据建模结果进行更多的EDA或特征工程。数据科学是一个迭代过程,在这个过程中,我们总是在寻找改进我们先前工作的方法。这意味着我们不必一开始就把事情做好(尽管我们可以尽最大努力),因为一旦我们对问题有了更多的了解,几乎总是有机会重新审视我们的决定。\n", + "\n", + "在第二部分中,我们将重点介绍几种机器学习方法的实现,选择最佳模型,并使用交叉验证的超参数调整对模型进行优化。最后一步,我们将保存我们开发的数据集,以便在下一部分中再次使用。" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -3283,13 +3327,6 @@ "y.to_csv(\"data/training_labels.csv\", index=False)\n", "y_test.to_csv(\"data/testing_labels.csv\", index=False)" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": {