TRAIN 命令

使用自动化机器学习,利用培训数据集创建最佳预测模型。

说明

如果您是在 32 位计算机上运行 Analytics,则 TRAIN 命令不受支持。 该命令所需的计算是处理器密集型的,并且更适合于 64 位计算机。

语法

TRAIN {CLASSIFIER|REGRESSOR} <ON> 键域 <...n> TARGET 标签域 SCORER {ACCURACY|AUC|F1|LOGLOSS|PRECISION|RECALL|MAE|MSE|R2} SEARCHTIME 分钟数 MAXEVALTIME 分钟数 MODEL 模型名称 TO 表名称 <IF 测试> <WHILE 测试> <FIRST 范围|NEXT 范围> FOLDS 折叠数 <SEED 种子值> <LINEAR> <NOFP>

说明

用于 TRAIN 命令的数据集的最大支持大小是 1 GB。

参数

名称 描述
CLASSIFIER | REGRESSOR

要在培训预测模型时使用的预测类型:

  • CLASSIFIER 使用分类算法培训模型

    如果您想要预测记录属于哪个种类或类别,请使用分类。

  • REGRESSOR 使用回归算法培训模型

    如果您想要预测与记录相关联的数值类型值,请使用回归。

ON 键域 <...n>

一个或多个培训输入域。

域可以是字符、数值或者逻辑类型。 多个域必需以空格分隔。

说明

字符域必须是“类别的”。 也就是说,它们必须标识类别或者种类,并且包含最大数量的唯一值。

该最大数量由最大类别数选项(工具 > 选项 > 命令)指定。

TARGET 标记域

要培训该模型基于培训输入域预测的域。

不同的预测类型(分类或回归)适用于不同的域数据类型:

对 CLASSIFIER 有效 一个字符或逻辑目标域
对 REGRESSOR 有效 一个数值目标域
SCORER ACCURACY | AUC | F1 | LOGLOSS | PRECISION | RECALL | MAE | MSE | R2

要在对生成的模型进行评分(调整和排名)时使用的量度。

生成的模型中,包含此量度最佳值的模型被保留,其余的则被放弃。

有效的不同度量子集随您所使用的预测类型(分类或回归)而异:

对 CLASSIFIER 有效 ACCURACY | AUC | F1 | LOGLOSS | PRECISION | RECALL
对 REGRESSOR 有效 MAE | MSE | R2

说明

仅当标记的域包含二进制数据 — 即两个种类,如是/否或者真/假时,分类指标 AUC 才有效。

SEARCHTIME 分钟数

培训和优化预测模型所花费的总时间(分钟数)。

培训和优化涉及跨不同的流水线配置(不同的模型、预处理器和超参数组合)进行搜索。

说明

TRAIN 命令的总运行时间为 SEARCHTIME 加上最多两个 MAXEVALTIME。

提示

指定一个起码是 MAXEVALTIME 的 10 倍的 EARCHTIME。

此时间分配策略可在处理时间和允许对多种模型类型进行评估之间建立合理的平衡。

MAXEVALTIME 分钟数

每个模型评估的最大运行时间(分钟)。

提示

请为每 100 MB 的培训数据分配 45 分钟。

此时间分配策略可在处理时间和允许对多种模型类型进行评估之间建立合理的平衡。

MODEL 模型名称

该培训流程所输出的模型文件的名称。

该模型文件包含最适合于培训数据集的模型。 您将把该模型输入到 PREDICT 命令以生成有关未被发现的新数据集的预测。

请将模型名称指定为带引号的字符串。 例如:TO "Loan_default_prediction"

您可以指定 * .model 文件扩展名,或让 Analytics 自动指定。

默认情况下,该模型文件被保存到包含该 Analytics 项目的文件夹。

请使用绝对或相对文件路径将该模型文件保存到另外的现有文件夹:

  • TO "C:\Loan_default_prediction"
  • TO "ML Train output\Loan_default_prediction.model"
TO 表名

该培训流程所输出的模型评估表的名称。

模型评估表包含两种不同类型的信息:

  • 评价指标/度量对于分类或回归度量,定量估计培训流程输出的模型文件的预测性能

    不同的度量提供不同类型的估计。 评价指标标识您使用 SCORER 指定的指标。 度量标识您未指定的指标。

  • 重要性/系数按降序排列,值指示每个特征(预测器)对模型预测的贡献程度

请将表名称指定为具有 .FIL 文件扩展名的带引号的字符串。 例如:TO "Model_evaluation.FIL"

默认情况下,表数据文件 (.FIL) 被保存到包含 Analytics 项目的文件夹。

请使用绝对或相对文件路径将该数据文件保存到另外的现有文件夹:

  • TO "C:\Model_evaluation.FIL"
  • TO "ML Train output\Model_evaluation.FIL"

说明

表名称被限制为不超过 64 个字母数字字符(不包括 .FIL 扩展名)。 该名称可以包括下划线字符 ( _ ),但不能包括其他特殊字符或任何空格。 该名称不能以数字开头。

IF 测试

可选

一个条件表达式,它必须为真以便处理每个记录。 仅对满足条件的那些记录执行该命令。

说明

在应用任何范围参数(WHILE、FIRST、NEXT)之后,仅针对表中的剩余记录评估 IF 条件。

WHILE 测试

可选

一个条件表达式,它必须为真以便处理每个记录。 该命令被一直执行到条件的计算结果为假或者到达表的末尾为止。

说明

如果您将 WHILE 与 FIRST 或 NEXT 结合使用,请在达到一个限制时立即记下处理步骤。

FIRST 范围 | NEXT 范围

可选

要处理的记录数:

  • FIRST 从第一个记录开始处理,直到达到指定的记录数为止
  • NEXT 从当前选定的记录开始处理,直到达到指定的记录数为止

请使用范围指定要处理的记录数。

如果您省略 FIRST 和 NEXT,则会默认处理所有记录。

FOLDS 折叠数

评估和优化模型时要使用的交叉验证折叠数。

折叠是培训数据集的子集,并且被用在交叉验证流程中。

通常,在培训模型时使用 5 到 10 个折叠可产生良好的结果。 所允许的最小折叠数是 2,最大折叠数是 10。

提示

增加折叠数可以生成更好的模型预测性能估计,但是也会增加总运行时间。

SEED 种子值

可选

要用来在 Analytics 中初始化随机数生成器的种子值。

如果省略 SEED,则 Analytics 会随机选择种子值。

如果您想要在将来使用相同数据集重复该培训流程,请明确指定一个种子值并且记下来。

LINEAR

可选

请仅对线性模型进行培训和评分。

如果 LINEAR 被省略,则会评估与分类或回归相关的所有模型类型。

说明

使用较大的数据集,如果您只包括线性模型,则该培训流程通常会更快地完成。

仅包括线性模型可保证输出中的系数。

NOFP

可选

请从培训流程中排除特征选择和数据预处理。

特征选择即自动选择培训数据集中在优化预测模型方面最有用的域。 自动选择可以提高预测性能,并且减少在模型优化中涉及的数据量。

数据预处理对培训数据集执行缩放和标准化等变换,以使其更适合于培训算法。

注意

您应该只排除特征选择和数据预处理(如果您有理由这样做)。

示例

培训分类模型

您想要培训一个可在随后流程中用来预测哪些贷款申请人将违约的分类模型。

您使用一组包含每笔贷款的已知结果(包括客户是否违约)的历史贷款数据培训该模型。

在后续的预测流程中,您将使用由 TRAIN 命令生成的模型处理当前贷款申请人数据。

OPEN "Loan_applicants_historical"
TRAIN CLASSIFIER ON Age Job_Category Salary Account_Balance Loan_Amount Loan_Period Refinanced Credit_Score TARGET Default SCORER LOGLOSS SEARCHTIME 960 MAXEVALTIME 90 MODEL "Loan_default_prediction.model" TO "Model_evaluation.FIL" FOLDS 5

培训回归模型

您相培训一个回归模型,以便在后续流程中使用该模型来预测房屋的未来销售价格。

您使用一组最近的房屋销售数据(包括销售价格)来培训该模型。

在后续的预测流程中,您将使用由 TRAIN 命令生成的模型生成房价评估。

OPEN "House_sales"
TRAIN REGRESSOR ON Lot_Size Bedrooms Bathrooms Stories Driveway Recroom Full_Basement Gas_HW Air_conditioning Garage_Places Preferred_Area TARGET Price SCORER MSE SEARCHTIME 960 MAXEVALTIME 90 MODEL "House_price_prediction.model" TO "Model_evaluation.FIL" FOLDS 5

备注

说明

有关此命令工作原理的详细信息,请参见 Analytics 帮助