margin
Classification margins
Description
returns the classification margins for the table of predictors m
= margin(tree
,TBL
,ResponseVarName
)TBL
and
class labels TBL.ResponseVarName
. For the definition, see Margin.
Examples
Compute Classification Margin
Compute the classification margin for the Fisher iris data, trained on its first two columns of data, and view the last 10 entries.
load fisheriris
X = meas(:,1:2);
tree = fitctree(X,species);
M = margin(tree,X,species);
M(end-10:end)
ans = 0.1111 0.1111 0.1111 -0.2857 0.6364 0.6364 0.1111 0.7500 1.0000 0.6364 0.2000
The classification tree trained on all the data is better.
tree = fitctree(meas,species); M = margin(tree,meas,species); M(end-10:end)
ans = 0.9565 0.9565 0.9565 0.9565 0.9565 0.9565 0.9565 0.9565 0.9565 0.9565 0.9565
Input Arguments
tree
— Trained classification tree
ClassificationTree
model object | CompactClassificationTree
model object
Trained classification tree, specified as a ClassificationTree
or CompactClassificationTree
model
object. That is, tree
is a trained classification
model returned by fitctree
or compact
.
TBL
— Sample data
table
Sample data, specified as a table. Each row of TBL
corresponds
to one observation, and each column corresponds to one predictor variable.
Optionally, TBL
can contain additional columns
for the response variable and observation weights. TBL
must
contain all the predictors used to train tree
.
Multicolumn variables and cell arrays other than cell arrays of character
vectors are not allowed.
If TBL
contains the response variable
used to train tree
, then you do not need to specify ResponseVarName
or Y
.
If you train tree
using sample data contained
in a table
, then the input data for this method
must also be in a table.
Data Types: table
X
— Data to classify
numeric matrix
ResponseVarName
— Response variable name
name of a variable in TBL
Response variable name, specified as the name of a variable
in TBL
. If TBL
contains
the response variable used to train tree
, then
you do not need to specify ResponseVarName
.
If you specify ResponseVarName
, then you must do so as a character vector
or string scalar. For example, if the response variable is stored as
TBL.Response
, then specify it as 'Response'
.
Otherwise, the software treats all columns of TBL
, including
TBL.ResponseVarName
, as predictors.
The response variable must be a categorical, character, or string array, logical or numeric vector, or cell array of character vectors. If the response variable is a character array, then each element must correspond to one row of the array.
Data Types: char
| string
Y
— Class labels
categorical array | character array | string array | logical vector | numeric vector | cell array of character vectors
Class labels, specified as a categorical, character, or string array, a logical or numeric
vector, or a cell array of character vectors. Y
must be of the same
type as the classification used to train tree
, and its number of
elements must equal the number of rows of X
.
Data Types: categorical
| char
| string
| logical
| single
| double
| cell
Output Arguments
More About
Margin
The classification margin is the difference between the
classification score for the true class and maximal classification
score for the false classes. Margin is a column vector with the same number of rows as in
the matrix X
.
Score (tree)
For trees, the score of a classification of a leaf node is the posterior probability of the classification at that node. The posterior probability of the classification at a node is the number of training sequences that lead to that node with the classification, divided by the number of training sequences that lead to that node.
For an example, see Posterior Probability Definition for Classification Tree.
Extended Capabilities
Tall Arrays
Calculate with arrays that have more rows than fit in memory.
This function fully supports tall arrays. For more information, see Tall Arrays.
GPU Arrays
Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.
Usage notes and limitations:
The
margin
function does not support decision tree models trained with surrogate splits.
For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Version History
Introduced in R2011a
Comando MATLAB
Hai fatto clic su un collegamento che corrisponde a questo comando MATLAB:
Esegui il comando inserendolo nella finestra di comando MATLAB. I browser web non supportano i comandi MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)