Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

loss

Error de clasificación

Sintaxis

L = loss(ens,tbl,ResponseVarName)
L = loss(ens,tbl,Y)
L = loss(ens,X,Y)
L = loss(___,Name,Value)

Descripción

L = loss(ens,tbl,ResponseVarName) Devuelve el error de clasificación para el conjunto calculado mediante la tabla de predictores y las etiquetas de clase true.enstbltbl.ResponseVarName

L = loss(ens,tbl,Y) Devuelve el error de clasificación para el conjunto calculado mediante la tabla de predictores y las etiquetas de clase true.enstblY

L = loss(ens,X,Y) Devuelve el error de clasificación para el conjunto calculado mediante la matriz de predictores y las etiquetas de clase true.ensXY

L = loss(___,Name,Value) calcula el error de clasificación con opciones adicionales especificadas por uno o más argumentos de par, utilizando cualquiera de las sintaxis anteriores.Name,Value

Al calcular la pérdida, normaliza las probabilidades de clase en o a las probabilidades de clase utilizadas para el entrenamiento, almacenadas en la propiedad de.lossResponseVarNameYPriorens

Argumentos de entrada

ens

Conjunto de clasificación creado con, o un conjunto de clasificación compacta creado confitcensemble compact.

tbl

Datos de ejemplo, especificados como una tabla. Cada fila de corresponde a una observación, y cada columna corresponde a una variable predictora. debe contener todos los predictores utilizados para entrenar el modelo.tbltbl No se permiten las variables de varias columnas ni matrices de celdas que no sean matrices de celdas de vectores de caracteres.

Si ha entrenado con datos de ejemplo contenidos en a, los datos de entrada para este método también deben estar en una tabla.enstable

ResponseVarName

Nombre de variable de respuesta, especificado como el nombre de una variable en.tbl

Debe especificar como un vector de caracteres o un escalar de cadena.ResponseVarName Por ejemplo, si la variable de respuesta se almacena como, a continuación, especifíquese como.Ytbl.Y'Y' De lo contrario, el software trata todas las columnas de, incluidos, como predictores al entrenar el modelo.tblY

X

Matriz de datos que se clasificará. Cada fila de representa una observación y cada columna representa un predictor. debe tener el mismo número de columnas que los datos utilizados para entrenar. deben tener el mismo número de filas que el número de elementos.XXensXY

Si ha entrenado con datos de ejemplo contenidos en una matriz, los datos de entrada para este método también deben estar en una matriz.ens

Y

Etiquetas de clase de observaciones en o. debe ser del mismo tipo que la clasificación utilizada para entrenar, y su número de elementos debe ser igual al número de filas de o.tblXYenstblX

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

'learners'

Índices de estudiantes débiles en el conjunto que van desde. solo usa estos alumnos para calcular la pérdida.1ens.NumTrainedloss

Predeterminado: 1:NumTrained

'Lossfun'

Función de pérdida, especificada como el par separado por comas que consta de y un identificador de función o nombre de función de pérdida integrado.'LossFun'

  • La tabla siguiente enumera las funciones de pérdida disponibles. Especifique uno utilizando su vector de caracteres correspondiente o escalar de cadena.

    ValorDescripción
    'binodeviance'Desviación binomial
    'classiferror'Error de clasificación
    'exponential'Exponencial
    'hinge'Bisagra
    'logit'Logística
    'mincost'Costo mínimo previsto de clasificación errónea (para puntuaciones de clasificación que son probabilidades posteriores)
    'quadratic'Cuadrática

    es adecuada para las puntuaciones de clasificación que son probabilidades posteriores.'mincost'

    • Los conjuntos enroscada y subespaciales devuelven probabilidades posteriores por defecto (es o).ens.Method'Bag''Subspace'

    • Si el método de conjunto es,, o, a continuación, utilizar probabilidades posteriores como puntuaciones de clasificación, debe especificar la transformación de puntuación de doble logit introduciendo'AdaBoostM1''AdaBoostM2'GentleBoost'LogitBoost'

      ens.ScoreTransform = 'doublelogit';

    • Para todos los demás métodos de conjunto, el software no admite las probabilidades posteriores como puntuaciones de clasificación.

  • Especifique su propia función utilizando la notación de identificador de función.

    Supongamos que es el número de observaciones en y ser el número de clases distintas (, es el modelo de entrada).nXKnumel(ens.ClassNames)ens La función debe tener esta firma

    lossvalue = lossfun(C,S,W,Cost)
    Dónde:

    • El argumento de salida es un escalar.lossvalue

    • Elija el nombre de la función (lossfun).

    • es una matriz lógica con filas que indican a qué clase pertenece la observación correspondiente.CnK El orden de las columnas corresponde al orden de la clase.ens.ClassNames

      Construya estableciendo si la observación está en la clase, para cada fila.CC(p,q) = 1pq Establezca todos los demás elementos de la fila en.p0

    • es una matriz numérica de puntuaciones de clasificación.SnK El orden de las columnas corresponde al orden de la clase. es una matriz de puntuaciones de clasificación, similar a la salida de.ens.ClassNamesSPredecir

    • es un vector numérico de pesos de observación de-por-1.Wn Si pasa, el software los normaliza para sumar.W1

    • es una matriz numérica de costes de clasificación errónea.CostoKK Por ejemplo, especifica un coste para la clasificación correcta y para la clasificación errónea.Cost = ones(K) - eye(K)01

    Especifique la función mediante 'LossFun',@lossfun.

Para obtener más información sobre las funciones de pérdida, consulte.Pérdida de clasificación

Predeterminado: 'classiferror'

'mode'

Significado de la salida:L

  • — es un valor escalar, la pérdida para todo el conjunto.'ensemble'L

  • : es un vector con un elemento por alumno entrenado.'individual'L

  • : es un vector en el que el elemento se obtiene mediante el uso de alumnos de la lista de entrada de alumnos.'cumulative'LJ1:J

Predeterminado: 'ensemble'

'UseObsForLearner'

Una matriz lógica de tamaño por-, donde:NT

  • es el número de filas de.NX

  • es el número de estudiantes débiles en.Tens

Cuando es, el alumno se usa para predecir la clase de fila de.UseObsForLearner(i,j)truejiX

Predeterminado: true(N,T)

'weights'

Vector de pesos de observación, con entradas no negativas. La longitud de debe ser igual al número de filas en.weightsX Cuando se especifican ponderaciones, se normalizan las ponderaciones de modo que los pesos de observación de cada clase se suman a la probabilidad anterior de esa clase.loss

Predeterminado: ones(size(X,1),1)

Argumentos de salida

L

, por defecto la fracción de datos mal clasificados. puede ser un vector, y puede significar cosas diferentes, dependiendo de la configuración del par nombre-valor.La pérdida de clasificaciónL

Ejemplos

expandir todo

Cargue el conjunto de datos de iris de Fisher.

load fisheriris

Entrenar un conjunto de clasificación de 100 árboles de decisión utilizando AdaBoostM2. Especifique los tocones de árbol como los alumnos débiles.

t = templateTree('MaxNumSplits',1); ens = fitcensemble(meas,species,'Method','AdaBoostM2','Learners',t);

Estimar el error de clasificación del modelo utilizando las observaciones de formación.

L = loss(ens,meas,species)
L = 0.0333 

Alternativamente, si no es compacta, entonces usted puede estimar el error de clasificación de la formación-muestra pasando a.ensensresubLoss

Más acerca de

expandir todo

Capacidades ampliadas

Consulte también

| | |