0

私はチュートリアルに従っており、TreeBagger メソッドを実装しようとしています。コードの一部が理解できないので質問があります。

b = TreeBagger(nTrees,X,Y,'oobpred','on','cat',6,'minleaf',leaf(ii));

'cat' と 6 の数字を教えてください。

4

2 に答える 2

1

TreeBagger のコンストラクター:

%   In addition to the optional arguments above, this method accepts all
%   optional CLASSREGTREE arguments with the exception of 'minparent'.
%   Refer to the documentation for CLASSREGTREE for more detail.

'cat' は TreeBagger の有効な入力ペアの 1 つではないため、CLASSREGTREE の入力でなければなりません。classregtree の入力ペアを見ると、「cat」に近い唯一の入力ペアは「categorical」であり、次のように述べています。

%      'categorical' Vector of indices of the columns of X that are to be
%                   treated as unordered categorical variables

statgetargs.m を見ると、具体的には次の行です。

i = strmatch(lower(pname),pnames);

最初の部分のスペルが正しい限り、任意の引数を使用できます。pnames には有効な文字列のセル配列 (そのうちの 1 つが 'categorical' になります) が含まれ、pname には pnames と比較する文字列が含まれます (最終的に、これには 'cat' が含まれます)。入力文字列の最初の部分だけを入力しても機能します。つまり、私にとってこれは機能します:

EDU>> a = TreeBagger(nTrees,X,Y,'oobpr','on','cat',6,'minle',leaf(ii));
EDU>> b = TreeBagger(nTrees,X,Y,'oobpred','on','cat',6,'minleaf',leaf(ii));
EDU>> isequal(a,b)

ans =

     1

TreeArgs の下に綴られているように「cat」を明示的に格納するため、「cat」が変更された場合は機能しません。とにかく、「cat」はclassregtreeの「カテゴリ」として扱われています。

于 2013-03-16T18:36:58.000 に答える
0

catは のcategorical入力パラメーターの省略形として扱われclassregtree、 の 6 番目の変数Xをカテゴリとして扱う必要があることを指定します。

于 2013-03-17T23:31:38.870 に答える