FastForestRegressionTrainer 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
用於 IEstimator<TTransformer> 使用 Fast Forest 訓練決策樹迴歸模型。
public sealed class FastForestRegressionTrainer : Microsoft.ML.Trainers.FastTree.RandomForestTrainerBase<Microsoft.ML.Trainers.FastTree.FastForestRegressionTrainer.Options,Microsoft.ML.Data.RegressionPredictionTransformer<Microsoft.ML.Trainers.FastTree.FastForestRegressionModelParameters>,Microsoft.ML.Trainers.FastTree.FastForestRegressionModelParameters>
type FastForestRegressionTrainer = class
inherit RandomForestTrainerBase<FastForestRegressionTrainer.Options, RegressionPredictionTransformer<FastForestRegressionModelParameters>, FastForestRegressionModelParameters>
Public NotInheritable Class FastForestRegressionTrainer
Inherits RandomForestTrainerBase(Of FastForestRegressionTrainer.Options, RegressionPredictionTransformer(Of FastForestRegressionModelParameters), FastForestRegressionModelParameters)
- 繼承
備註
要建立此訓練器,請使用 FastForest 或 FastForest(Options)。
輸入與輸出欄位
輸入標籤欄位資料必須是 Single。 輸入特徵欄位資料必須是已知大小的向量。Single
此訓練器會輸出下列欄位:
| 輸出數據行名稱 | 欄類型 | Description |
|---|---|---|
Score |
Single | 模型預測的無界分數。 |
訓練師特性
| 機器學習任務 | Regression |
| 需要正規化嗎? | No |
| 快取是必須的嗎? | No |
| 除了 Microsoft.ML 之外,必須使用 NuGet | Microsoft.ML.FastTree |
| 可匯出至 ONNX | Yes |
訓練演算法細節
決策樹是非參數模型,對輸入進行一連串簡單測試。 此決策程序將這些資料映射到訓練資料集中的輸出,而這些輸出的輸入與被處理的實例相似。 在二元樹資料結構的每個節點,根據相似度度量做出決策,該指標會將每個實例遞迴地映射到樹的分支之間,直到到達適當的葉節點並返回輸出決策。
決策樹有多項優點:
- 它們在訓練與預測期間,無論是計算還是記憶體使用都非常高效。
- 它們可以代表非線性的決策邊界。
- 它們執行整合的特徵選擇與分類。
- 它們在有噪音特徵時仍能保持韌性。
快速森林是一種隨機森林實作。 該模型由一系列決策樹組成。 決策森林中的每棵樹都會透過預測輸出一個高斯分布。 在整個樹群上進行聚合,以尋找模型中所有樹最接近合併分布的高斯分布。 此決策森林分類器由一系列決策樹組成。
一般而言,集合模型比單一決策樹提供更好的覆蓋與準確度。 決策森林中的每棵樹都會輸出一個高斯分布。
更多詳情請見:
請參考「參見」部分,裡面有相關用法的連結。
欄位
| 名稱 | Description |
|---|---|
| FeatureColumn |
訓練師期待的特色欄。 (繼承來源 TrainerEstimatorBase<TTransformer,TModel>) |
| GroupIdColumn |
排名訓練師期望的可選群組ID欄位。 (繼承來源 TrainerEstimatorBaseWithGroupId<TTransformer,TModel>) |
| LabelColumn |
訓練師期望的標籤欄。 可以是 |
| WeightColumn |
訓練師預期的體重欄。 可以是 |
屬性
| 名稱 | Description |
|---|---|
| Info |
用於 IEstimator<TTransformer> 使用 Fast Forest 訓練決策樹迴歸模型。 (繼承來源 FastTreeTrainerBase<TOptions,TTransformer,TModel>) |
方法
| 名稱 | Description |
|---|---|
| Fit(IDataView, IDataView) |
使用訓練與驗證資料訓練 a FastForestRegressionTrainer ,回傳 RegressionPredictionTransformer<TModel>。 |
| Fit(IDataView) |
訓練並返回 ITransformer。 (繼承來源 TrainerEstimatorBase<TTransformer,TModel>) |
| GetOutputSchema(SchemaShape) |
用於 IEstimator<TTransformer> 使用 Fast Forest 訓練決策樹迴歸模型。 (繼承來源 TrainerEstimatorBase<TTransformer,TModel>) |
擴充方法
| 名稱 | Description |
|---|---|
| AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
在估計鏈中附加一個「快取檢查點」。 這將確保下游估計器能針對快取資料進行訓練。 在訓練師接受多次資料通行前設置快取檢查點會很有幫助。 |
| WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
給定一個估計器,回傳一個包裹物件,該物件會呼叫一次 Fit(IDataView) 代理。 估計器通常回傳擬合的資訊很重要,因此該 Fit(IDataView) 方法回傳一個特定型別的物件,而非一般 ITransformer的 。 然而,同時, IEstimator<TTransformer> 通常會被組成包含許多物件的管線,因此我們可能需要建立一條估計鏈,將 EstimatorChain<TLastTransformer> 我們想要取得變壓器的估計器埋藏在這條鏈的某處。 在這種情況下,我們可以透過此方法附加一個代理,當 fit 被呼叫時會被呼叫。 |