主要内容

本页翻译不是最新的。点击此处可查看最新英文版本。

选择回归数据或打开保存的 App 会话

首次启动回归学习器时,您可以选择导入数据或打开一个之前保存的 App 会话。要导入数据,请参阅从工作区中选择数据从文件导入数据。要打开保存的会话,请参阅保存并打开 App 会话

从工作区中选择数据

提示

在回归学习器中,表是处理数据的最简单方式,因为它们可以包含数值和标签数据。使用导入工具将数据作为表导入 MATLAB® 工作区中,或使用表函数从工作区变量创建 table。请参阅

  1. 将您的数据加载到 MATLAB 工作区中。

    预测变量可以是数值、分类、字符串或逻辑向量、字符向量元胞数组或字符数组。响应变量必须为浮点向量(单精度或双精度)。

    将预测变量数据合并到一个变量中,可以是表或矩阵。您还可以将预测变量数据和响应变量结合起来,也可以将它们分开。

    有关数据集的示例,请参阅用于回归的示例数据

  2. App 选项卡上,点击回归学习器以打开 App。

  3. 学习选项卡的文件部分中,点击新建会话 > 从工作区

  4. 在“从工作区新建会话”对话框的数据集变量下,从工作区变量中选择一个表或矩阵。

    如果选择矩阵,请通过点击选项按钮来选择是使用行还是列进行观测。

  5. 响应下,观测默认响应变量。该 App 尝试从数据集变量中选择一个合适的响应变量,并将所有其他变量视为预测变量。

    如果您要使用不同响应变量,您可以:

    • 使用列表从数据集变量中选择另一个变量。

    • 点击从工作区选项按钮,然后从列表中另选一个工作区变量。

  6. 预测变量下,使用复选框添加或删除预测变量。通过点击全部添加全部删除来添加或删除所有预测变量。您也可以通过在表中选择多个预测变量,然后点击添加 N 个删除 N 个来添加或删除多个预测变量,其中 N 是所选预测变量的数目。当您选择多个预测变量时,全部添加全部删除按钮会变为添加 N 个删除 N 个

  7. 点击开始会话以接受默认验证方案并继续。默认验证选项是 5 折交叉验证,用于防止过拟合。

    提示

    如果您有大型数据集,可能希望改用留出法验证。要了解详细信息,请参阅选择验证方案

注意

如果您喜欢直接从命令行将数据加载到 App 中,可以在对 regressionLearner 的命令行调用中指定要在回归学习器中使用的预测变量数据、响应变量和验证类型。有关详细信息,请参阅回归学习器

有关后续步骤,请参阅Train Regression Models in Regression Learner App

从文件导入数据

  1. 学习选项卡的文件部分中,选择新建会话 > 从文件

  2. 在列表中选择一个文件类型,如电子表格、文本文件或逗号分隔值 (.csv) 文件,或选择所有文件以浏览其他文件类型,如 .dat

用于回归的示例数据

要开始使用回归学习器,请尝试以下示例数据集。

名称大小描述
汽车预测变量数目:7
观测值数目:406
响应:MPG(英里/加仑)

1970 年至 1982 年不同型号汽车的数据。预测燃油经济性(以英里/加仑为单位)或其他特征之一。

有关分步示例,请参阅Train Regression Trees Using Regression Learner App

基于 carbig 数据集中的变量创建一个表。

load carbig
cartable = table(Acceleration,Cylinders,Displacement, ...
    Horsepower,Model_Year,Weight,Origin,MPG);

医院预测变量数目:5
观测值数目:100
响应:Diastolic

模拟的医院数据。预测患者的舒张压。

基于 patients 数据集中的变量创建一个表。

load patients
hospitaltable = table(Gender,Age,Weight,Smoker,Systolic, ...
    Diastolic);

有关更多示例数据集,请参阅Statistics and Machine Learning Toolbox 示例数据集MATLAB Example Data Sets

选择验证方案

选择一种验证方法来检查拟合模型的预测准确度。验证可以估计模型在新数据上的性能,帮助您选择最佳模型。验证可以防止过拟合。过于灵活且存在过拟合的模型验证准确度较差。在训练任何模型之前选择一个验证方案,以便可以使用相同的验证方案比较会话中的所有模型。

提示

尝试默认验证方案,然后点击开始会话以继续。默认选项是 5 折交叉验证,它可以防止过拟合。

如果您有大型数据集,并且训练模型使用交叉验证耗时太长,请重新导入数据并尝试改用更快的留出法验证。

假设没有为测试保留数据,这是默认情况。

  • 交叉验证:选择折数(或划分数)来对数据集分区。

    如果您选择 k 折,则 App:

    1. 将数据划分为 k 个不相交的数据集或折

    2. 对于每个验证折:

      1. 使用训练折观测值(不在验证折中的观测值)训练模型

      2. 使用验证折数据评估模型性能

    3. 计算所有折上的平均验证误差

    这种方法可以很好地估计使用完整数据集训练的最终模型的预测准确度。该方法需要多次拟合,但能高效使用所有数据,因此适用于小型数据集。

  • 留出法验证:选择要用作验证集的数据百分比。该 App 在训练集上训练模型,并使用验证集评估其性能。用于验证的模型仅基于部分数据,因此留出法验证仅适用于大型数据集。最终模型是使用完整数据集进行训练的。

  • 再代入验证:不采取任何防止过拟合的措施。App 使用所有数据进行训练,并基于相同数据计算错误率。由于没有任何单独的验证数据,对于模型在新数据的性能,您得到的估计可能不切实际。也就是说,训练样本准确度可能高得不切实际,而预测准确度可能较低。

    为了帮助您避免训练数据过拟合,请改为选择另一个验证方案。

注意

该验证方案只影响回归学习器计算验证度量的方式。最终模型始终使用完整数据集进行训练,不包括任何为测试保留的数据。

选择数据后训练的所有模型都使用您在此对话框中选择的同一验证方案。您可以使用同一验证方案比较会话中的所有模型。

要更改验证选择并训练新模型,您可以再次选择数据,但会丢失任何已训练的模型。App 会警告您导入数据会启动新会话。可将您要保留的任何已训练模型保存到工作区,然后导入数据。

有关训练模型的后续步骤,请参阅Train Regression Models in Regression Learner App

(可选)为测试保留数据

将数据导入回归学习器时,可以指定保留一定百分比的数据用于测试。在“新建会话”对话框的测试部分中,点击相应的复选框以留出测试数据集。指定用作测试集的导入数据的百分比。如果您愿意,您仍可以选择在启动 App 会话后导入单独的测试数据集。

您可以使用测试集来评估已训练模型的性能。特别是,您可以检查验证度量是否为模型在新数据的性能提供了良好的估计。有关详细信息,请参阅Evaluate Test Set Model Performance。有关示例,请参阅Train Regression Model Using Hyperparameter Optimization in Regression Learner App

注意

App 不将测试数据用于模型训练。从 App 中导出的模型是基于完整的训练和验证数据进行训练的,不包括为测试保留的任何数据。

保存并打开 App 会话

在回归学习器中,您可以保存当前 App 会话并打开一个之前保存的 App 会话。

  • 要保存当前 App 会话,请在学习选项卡的文件部分中点击保存。首次保存当前会话时,您必须指定会话文件名和文件位置。保存会话选项保存当前会话,而会话另存为选项将当前会话另存为一个新文件。将压缩会话另存为选项可保存当前 App 会话的一个压缩版本,从而使保存的会话文件更小。请注意,将压缩会话另存为选项会从当前会话中的所有已训练模型中永久删除训练数据。

  • 要打开一个保存的 App 会话,请在文件部分中点击打开。在“选择要打开的文件”对话框中,选择要打开的已保存会话。

另请参阅

主题