机器学习预测准确性指南:插值和外推

评估训练数据之外的机器学习模型简介近年来,机器学习 (ML) 和深度学习 (DL) 等数据驱动方法已应用于广泛的任务,包括机器翻译和个性化定制推荐。这些技术通过分析大量数据揭示了给定训练数据集中的一些模式。但是,如果给定的数据集存在一些偏差并且不包含您想要了解或预测的数据,则可能很难从训练模型中获得正确答案。照片由 Stephen Dawson 在 Unsplash 上拍摄让我们考虑一下 ChatGPT 的情况。ChatGPT 目前的最新版本是 ChatGPT 4o,该模型使用的数据训练到 2023 年 6 月(本文撰写时)。因此,如果您询问 2024 年发生的事情,而这些事情未包含在训练数据中,您将无法得到准确的答案。这就是众所周知的“幻觉”,OpenAI 添加了预处理程序,以针对此类问题返回固定答案“无法回答”。另一方面,ChatGPT 的训练数据也基本基于用英语编写的文档,因此它不擅长英语母语国家(如日本和法国)以外的本地领域知识。因此,许多公司和研究小组投入大量精力定制他们的 LLM,通过使用 RAG(检索增强生成)或微调来包含区域或特定领域的知识。因此,确定训练所需的内容

来源:走向数据科学

模型训练和评估

预处理

基本上,除了基于树的方法(例如随机森林、XGBoost 和 LightGBM)之外,大多数机器学习算法都需要特征缩放。但是,由于我们在本实践中仅使用两个特征(例如 x₀ 和 x₁),它们的取值范围相同,即 -1 到 1(插值)或 -0.5 到 1(外推),因此我们将跳过特征缩放。

x₀ x₁

模型训练

为简单起见,除 LightGBM 之外的所有算法都使用默认超参数,其中默认参数适用于较大的数据集。

如前面部分所述,我们将在模型训练期间使用不同的数据集来评估插值和外推。

评估和可视化

模型训练后,我们将使用非常精细离散化的数据进行预测。基于这些预测值,使用 Plotly 表面函数绘制预测表面。

Plotly 表面函数

这些过程由以下代码完成: