主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

oobQuantileError

回帰の袋装树の袋装外分位点損失

説明

犯错= oobQuantileError (Mdlは,予測子デ,タMdl。Xで予測されたout-of-bag中央値に対してMdl。Y内の真の応答を比較し,回帰の袋树であるMdlを使用して,out-of-bag平均絶対偏差(mad)の1/2を返します。MdlTreeBaggerモデルオブジェクトでなければなりません。

犯错= oobQuantileError (Mdl名称,值は,1以上の名称,值引数のペアによって指定された追加オプションを使用します。たとえば,分位確率,誤差のタaaplプ,分位点回帰誤差の推定に含める木を指定します。

入力引数

すべて展開する

回帰の袋树。関数TreeBaggerによって作成されたTreeBaggerモデルオブジェクトとして指定します。

  • Mdl。方法の値は回归でなければなりません。

  • 関数TreeBaggerを使用してMdlに学習させる場合,名前と値のペア“OOBPrediction”,“上”を指定しなければなりません。このようにすると,必要なout-of-bag観測値のescンデックスの行列がTreeBaggerによってMdl。OOBIndicesに格納されます。

名前と値の引数

オプションの引数のペアをName1 = Value1,…,以=家として指定します。ここで的名字は引数名,价值は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021aより前では,名前と値をそれぞれコンマを使って区切り,的名字を引用符で囲みます。

アンサンブル誤差のタ@ @プ。“模式”と次の表の値から構成されるコンマ区切りのペアとして指定します。τ分位数の値であるとします。

説明
“累积”

犯错は,分位点回帰の累積誤差が格納されているMdl。NumTrees元素个数(τ列の数値行列です。错(jkは,Mdl。Trees(1:jの学習器のみを使用したτkの分位点回帰誤差です。

“合奏”

犯错は,アンサンブル全体に対する分位点回帰の累積誤差が格納されている1行元素个数(τ列の数値ベクトルです。错(kは,τkのアンサンブル分位点回帰誤差です。

“个人”

犯错は,個々の学習器の分位点回帰誤差が格納されているMdl。NumTrees元素个数(τ列の数値行列です。错(jkは,Mdl。Trees(jの学習器のみを使用したτkの分位点回帰誤差です。

“累积”または“个人”の場合,を使用して分位点推定に含める木の本数を減らすと,犯错の行数および対応する行の@ @ンデックスが変化します。

例:“模式”、“累积”

分位確率。分位数的と区間[0,1]の値が含まれている数値ベクトルから構成されるコンマ区切りのペアとして指定します。oobQuantileErrorは,Mdl。Xの各観測値(行)にいて,分位数内のすべての確率に対応する分位数を推定します。

例:“分位数”,[0 0.25 0.5 0.75 1]

デ,タ型:|

応答の推定に使用する木の@ @ンデックス。“树”“所有”または正の整数の数値ベクトルから構成されるコンマ区切りのペアとして指定します。ンデックスはMdl。Treesのセルに対応します。各セルにはアンサンブル内の木が格納されます。の最大値は、アンサンブル内の木の本数(Mdl。NumTrees)以下でなければなりません。

“所有”の場合,oobQuantileErrorはアンサンブル内のすべての木を使用します(1: Mdl。NumTreesになります)。

既定以外の値を指定すると,犯错の行数が変化する可能性があります。

例:“树”,[1 10 Mdl。NumTrees]

デ,タ型:字符|字符串||

各木の応答の重み。“TreeWeights”元素个数(個の非負値による数値ベクトルから構成されるコンマ区切りのペアとして指定します。の値です。

“模式”,“个人”を指定した場合,oobQuantileErrorTreeWeightsを無視します。

デ,タ型:|

出力引数

すべて展開する

out-of-bag分位点回帰誤差の1/2。数値スカラ,またはT元素个数(τ列の行列として返されます。τ分位数の値です。

Tは,模式および分位数の値に依存します。分位数,τ“树”,を指定したとします。

  • “模式”、“累积”の場合,犯错元素个数(元素个数(τ列の数値行列になります。错(jkは,Mdl。Trees((1:j))の学習器を使用したτkの累積的なout-of-bag分位点回帰誤差です。

  • “模式”、“合奏”の場合,犯错1元素个数(τ列の数値ベクトルになります。错(kは,Mdl。Trees(の学習器を使用したτkの累積的なout-of-bag分位点回帰誤差です。

  • “模式”,“个人”の場合,犯错元素个数(元素个数(τ列の数値行列になります。错(jkは,Mdl。Trees(j))の学習器を使用したτkのout-of-bag分位点回帰誤差です。

すべて展開する

carsmallデ,タセットを読み込みます。与えられたエンジン排気量,重量および気筒数に対して自動車の燃費の平均を予測するモデルを考えます。气缸はカテゴリカル変数であるとします。

负载carsmall圆柱=分类(圆柱);X =表(排量,重量,气缸,MPG);

デ,タセット全体を使用して,バギング回帰木のアンサンブルに学習をさせます。100 個の弱学習器を指定し、out-of-bag インデックスを格納します。

rng (1);%用于再现性Mdl = TreeBagger(100,X,“英里”“方法”“回归”“OOBPrediction”“上”);

MdlTreeBaggerアンサンブルです。

分位点回帰を実行し,予測された条件付き中央値を使用してアンサンブル全体の疯狂をout-of-bag推定します。

oobErr = oobQuantileError(Mdl)
oobErr = 1.5349

oobErrは,アンサンブル全体に対する分位点回帰誤差の不偏推定です。

carsmallデ,タセットを読み込みます。与えられたエンジン排気量,重量および気筒数に対して自動車の燃費の平均を予測するモデルを考えます。

负载carsmallX =表(排量,重量,气缸,MPG);

デ,タセット全体を使用して,バギング回帰木のアンサンブルに学習をさせます。250個の弱学習器を指定し,快递快递ンデックスを格納します。

rng (“默认”);%用于再现性Mdl = TreeBagger(250,X,“英里”“方法”“回归”...“OOBPrediction”“上”);

0.25, 0.5および0.75の累積的なout-of-bag分位点回帰誤差を推定します。

err = oobQuantileError(Mdl,分位数的,[0.25 0.5 0.75],“模式”“累积”);

犯错は,累積的な外袋分位点回帰誤差が含まれている250行3列の行列です。列は分位確率に,行はアンサンブル内の木に対応します。誤差は累積的なので,前の木から集約した予測が含まれています。

同じプロットに累積的なout-of-bag分位数誤差をプロットします。

图;情节(错);传奇(“0.25分位数误差”“0.5分位数错误”0.75分位数误差);ylabel (“包外分位数错误”);包含(“树指数”);标题(累积、袋外、分位数回归误差

图中包含一个轴对象。标题为Cumulative, out - bag, Quantile Regression Error的axis对象包含3个类型为line的对象。这些对象表示0.25分位数误差、0.5分位数误差、0.75分位数误差。

すべての分位数誤差曲線は,約50本の木に学習をさせた後で横ばい状態になっているように見えます。したがって50本の木に学習をさせれば,3つの分位確率の分位数誤差を最小化するために十分であると考えられます。

詳細

すべて展開する

ヒント

out- out- bagアンサンブル誤差推定量は,真のアンサンブル誤差に対して不偏です。したがって,ランダムフォレストのパラメーターを調整するには,交差検証を実施するのではなくout-of-bagアンサンブル誤差を推定します。

参考文献

[1]布莱曼,L。“随机森林。”机器学习45,pp. 5-32, 2001。

[2] Meinshausen, N.“分位数回归森林。”机器学习研究,Vol. 7, 2006, pp. 983-999。

バ,ジョン履歴

R2016bで導入