FastTreeRankingFeaturizationEstimator 类

定义

一个 IEstimator<TTransformer> ,用于将输入特征向量转换为基于树的特征。

public sealed class FastTreeRankingFeaturizationEstimator : Microsoft.ML.Trainers.FastTree.TreeEnsembleFeaturizationEstimatorBase
type FastTreeRankingFeaturizationEstimator = class
    inherit TreeEnsembleFeaturizationEstimatorBase
Public NotInheritable Class FastTreeRankingFeaturizationEstimator
Inherits TreeEnsembleFeaturizationEstimatorBase
继承
FastTreeRankingFeaturizationEstimator

注解

输入和输出列

输入标签数据类型必须为 key 类型或 Single。 标签的值决定相关性,其中较高的值表示较高的相关性。 如果标签为 key 类型,则键索引为相关性值,其中最小索引是最不相关的。 如果标签为 Single,则较大的值表示较高的相关性。 特征列必须是 的已知大小向量 Single ,输入行组列必须是 类型。

此估算器输出以下列:

输出列名称 列名称 说明
Trees 已知大小的向量 Single 所有树的输出值。 其大小与树系综模型中的树总数相同。
Leaves 已知大小的向量 Single 输入特征向量所属的所有叶 ID 的 0-1 向量表示形式。 其大小是树系综模型中总叶数。
Paths 已知大小的向量 Single 0-1 向量表示输入特征向量通过的路径到达叶。 其大小是树系综模型中非叶节点的数目。

这些输出列都是可选的,用户可以更改其名称。 请将跳过的列的名称设置为 null,以便不会生成它们。

预测详细信息

此估算器从树系综模型生成多个输出列。 假设模型仅包含一个决策树:

               Node 0
               /    \
             /        \
           /            \
         /                \
       Node 1            Node 2
       /    \            /    \
     /        \        /        \
   /            \     Leaf -3  Node 3
  Leaf -1      Leaf -2         /    \
                             /        \
                            Leaf -4  Leaf -5

假设输入特征向量属于 Leaf -1。 输出 Trees 可以是 1 元素向量,其中唯一的值是 携带的 Leaf -1决策值。 输出 Leaves 为 0-1 向量。 如果到达的叶是按 $- (i+1) $ 索引的第$i$ (,则第一个叶) Leaf -1 树中的叶,则 中的 Leaves 第$i$值将为 1,所有其他值为 0。 输出 Paths 是到达叶之前通过的节点的 0-1 表示形式。 中的 Paths $i$-th 元素指示是否接触按 $i$) 索引的第$i$节点 (。 例如,到达 Leaf -1 潜在顾客 $[1, 1, 0, 0]$ 作为 Paths。 如果存在多个树,则此估算器只会从所有树中连接 Trees', Leaves' , Paths'' , (第一棵树的信息首先出现在) 串联向量中。

有关使用示例的链接,请查看“另请参阅”部分。

方法

Fit(IDataView)

生成一个 ,它将调用InputColumnNameinput的列映射到三个TreeEnsembleModelParameters输出列。

(继承自 TreeEnsembleFeaturizationEstimatorBase)
GetOutputSchema(SchemaShape)

PretrainedTreeFeaturizationEstimator 将三个浮向量列添加到 中 inputSchema。 给定特征向量列时,添加的列是所有树的预测值、特征向量所属的叶 ID 以及这些叶的路径。

(继承自 TreeEnsembleFeaturizationEstimatorBase)

扩展方法

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

将“缓存检查点”追加到估算器链。 这将确保针对缓存的数据训练下游估算器。 在接受多个数据传递的训练程序之前设置缓存检查点会很有帮助。

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

给定估算器后,返回一个包装对象,该对象在调用 后 Fit(IDataView) 将调用委托。 对于估算器来说,返回有关适合对象的信息通常很重要,这就是方法返回特定类型对象(而不仅仅是常规 ITransformer)的原因Fit(IDataView)。 但是,同时, IEstimator<TTransformer> 通常形成为包含许多对象的管道,因此我们可能需要通过 EstimatorChain<TLastTransformer> 构建估算器链,其中要获取转换器的估算器埋在此链中的某个位置。 对于这种情况,我们可以通过此方法附加一个委托,该委托将在调用 fit 后调用。

适用于

另请参阅