Matlabでヘルプを見ましたが、「classregtree」関数でパラメーターを使用する方法を説明せずに例を提供しています。 'classregtree'とそのパラメータの使用法を説明する助けがあれば幸いです。
関数のドキュメントページ classregtree は一目瞭然です...
分類木モデルの最も一般的なパラメータのいくつかを見てみましょう。
プロセスを説明するための完全な例:
%# load data
load carsmall
%# construct predicting attributes and target class
vars = {'MPG' 'Cylinders' 'Horsepower' 'Model_Year'};
x = [MPG Cylinders Horsepower Model_Year]; %# mixed continous/discrete data
y = cellstr(Origin); %# class labels
%# train classification decision tree
t = classregtree(x, y, 'method','classification', 'names',vars, ...
'categorical',[2 4], 'Prune','off');
view(t)
%# test
yPredicted = eval(t, x);
cm = confusionmat(y,yPredicted); %# confusion matrix
N = sum(cm(:));
err = ( N-sum(diag(cm)) ) / N; %# testing error
%# Prune tree to avoid overfitting
tt = Prune(t, 'level',3);
view(tt)
%# predict a new unseen instance
inst = [33 4 78 NaN];
prediction = eval(tt, inst) %# pred = 'Japan'
上記の classregtree
クラスは廃止され、 ClassificationTree
および RegressionTree
に置き換えられました。 = R2011aのクラス( fitctree
および fitrtree
関数、R2014aの新機能を参照)。
新しい関数/クラスを使用した、更新された例を次に示します。
t = fitctree(x, y, 'PredictorNames',vars, ...
'CategoricalPredictors',{'Cylinders', 'Model_Year'}, 'Prune','off');
view(t, 'mode','graph')
y_hat = predict(t, x);
cm = confusionmat(y,y_hat);
tt = Prune(t, 'Level',3);
view(tt)
predict(tt, [33 4 78 NaN])