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.

FeatureSelectionNCARegression clase

Superclases:

Selección de características para la regresión utilizando el análisis de componentes de vecindad (NCA)

Descripción

contiene los datos, la información de ajuste, los pesos de entidades y otros parámetros de modelo de un modelo de análisis de componentes de vecindad (NCA). Aprende los pesos de las entidades utilizando una adaptación diagonal de NCA y devuelve una instancia del objeto.FeatureSelectionNCARegressionfsrncaFeatureSelectionNCARegression La función logra la selección de características regularizando los pesos de las entidades.

Construcción

Cree un objeto utilizando.FeatureSelectionNCAClassificationfsrnca

Propiedades

expandir todo

Número de observaciones en los datos de entrenamiento (y) después de la eliminación o los valores, almacenados como un escalar.XYNaNInf

Tipos de datos: double

Parámetros de modelo utilizados para entrenar el modelo, almacenados como una estructura.

Puede acceder a los campos de uso de notación de puntos.ModelParameters

Por ejemplo, para un objeto denominado, puede tener acceso al valor mediante.FeatureSelectionNCARegressionmdlLossFunctionmdl.ModelParameters.LossFunction

Tipos de datos: struct

Parámetro de regularización utilizado para entrenar este modelo, almacenado como un escalar. Para las observaciones, se espera que el mejor valor que minimiza el error de generalización del modelo NCA sea un múltiplo de 1/.nLambdan

Tipos de datos: double

Nombre del método de ajuste utilizado para ajustar este modelo, almacenado como uno de los siguientes:

  • — Realice el ajuste utilizando todos los datos.'exact'

  • — Sin ajuste.'none' Utilice esta opción para evaluar el error de generalización del modelo NCA utilizando los pesos de entidades iniciales suministrados en la llamada a.fsrnca

  • — El software divide los datos en particiones (subconjuntos), se ajusta a cada partición utilizando el método y devuelve el promedio de los pesos de las entidades.'average'exact Puede especificar el número de particiones mediante el argumento de par nombre-valor.NumPartitions

Nombre del solucionador utilizado para ajustarse a este modelo, almacenado como uno de los siguientes:

  • — Algoritmo de memoria limitada de Broyden-Fletcher-Goldfarb-Shanno (LBFGS)'lbfgs'

  • — Algoritmo de descenso de degradado estocástico (SGD)'sgd'

  • — descenso del gradiente estocástico con el algoritmo LBFGS aplicado a los mini-lotes'minibatch-lbfgs'

Tolerancia de convergencia relativa en la norma de degradado para los y solucionadores, almacenados como un valor escalar positivo.'lbfgs''minibatch-lbfgs'

Tipos de datos: double

Número máximo de iteraciones para la optimización, almacenada como un valor entero positivo.

Tipos de datos: double

Número máximo de pases y Solvers.'sgd''minibatch-lbfgs' Cada paso procesa todas las observaciones de los datos.

Tipos de datos: double

Tasa de aprendizaje inicial para y solucionadores.'sgd''minibatch-lbfgs' La tasa de aprendizaje decae sobre las iteraciones comenzando por el valor especificado para.InitialLearningRate

Utilice la y para controlar el ajuste automático de la tasa de aprendizaje inicial en la llamada a.NumTuningIterationsTuningSubsetSizefsrnca

Tipos de datos: double

Indicador de nivel de verbosidad, almacenado como un entero no negativo. Los valores posibles son:

  • 0 — ningún Resumen de convergencia

  • 1 — Resumen de convergencia, incluyendo norma de gradiente y valor de función objetiva

  • > 1 — más información de convergencia, dependiendo del algoritmo de adaptación. Cuando se utiliza el solucionador y el nivel de detalle > 1, la información de convergencia incluye el registro de iteración de minilote intermedio lbfgs encaja.'minibatch-lbfgs'

Tipos de datos: double

Pesos de las características iniciales, almacenados como un vector de-por-1 de escalares reales positivos, donde es el número de predictores en.ppX

Tipos de datos: double

Ponderaciones de entidades, almacenadas como un vector de-por-1 de valores escalares reales, donde es el número de predictores en.ppX

Por igual a, es a-por-matriz, donde es el número de particiones especificadas a través del argumento de par nombre-valor en la llamada a.'FitMethod''average'FeatureWeightspmm'NumPartitions'fsrnca

El valor absoluto de es una medida de la importancia del predictor.FeatureWeights(k)k Si está cerca de 0, entonces esto indica que el predictor no influye en la respuesta en.FeatureWeights(k)kY

Tipos de datos: double

Ajustar la información, almacenada como una estructura con los siguientes campos.

Nombre de campoSignificado
IterationÍndice de iteración
ObjectiveFunción objetiva regularizada para la minimización
UnregularizedObjectiveFunción objetiva no regularizada para la minimización
GradientGradiente de la función objetiva regularizada para la minimización
  • Para la clasificación, representa el negativo de la precisión Leave-One-out del clasificador NCA en los datos de entrenamiento.UnregularizedObjective

  • Para la regresión, representa la pérdida de Leave-One-out entre la respuesta verdadera y la respuesta pronosticada al usar el modelo de regresión NCA.UnregularizedObjective

  • Para el solucionador, es el degradado final.'lbfgs'Gradient Para los y solucionadores, es el gradiente de mini lote final.'sgd''minibatch-lbfgs'Gradient

  • Si es así, es una matriz de estructura-por-1, donde es el número de particiones especificadas a través del argumento de par nombre-valor.FitMethod'average'FitInfomm'NumPartitions'

Puede acceder a los campos de uso de notación de puntos.FitInfo Por ejemplo, para un objeto denominado, puede acceder al campo mediante.FeatureSelectionNCARegressionmdlObjectivemdl.FitInfo.Objective

Tipos de datos: struct

Predictor significa, almacenado como un vector-por-1 para los datos de entrenamiento estandarizados.p En este caso, el método centra la matriz predictora restando el elemento respectivo de cada columna.PredecirXMu

Si los datos no están estandarizados durante el entrenamiento, entonces está vacío.Mu

Tipos de datos: double

Desviaciones estándar predictoras, almacenadas como vector a-por-1 para datos de entrenamiento estandarizados.p En este caso, el método escala la matriz predictora dividiendo cada columna por el elemento respectivo de después de centrar los datos utilizando.PredecirXSigmaMu

Si los datos no están estandarizados durante el entrenamiento, entonces está vacío.Sigma

Tipos de datos: double

Valores predictores utilizados para entrenar este modelo, almacenados como un-por-matriz. es el número de observaciones y es el número de variables predictoras en los datos de entrenamiento.npnp

Tipos de datos: double

Valores de respuesta utilizados para entrenar este modelo, almacenado como un vector numérico de tamaño, donde n es el número de observaciones.n

Tipos de datos: double

Ponderaciones de observación utilizadas para entrenar este modelo, almacenadas como un vector numérico de tamaño.n La suma de los pesos de observación es.n

Tipos de datos: double

Métodos

loss Evalúe la precisión de los pesos de entidades aprendidas en datos de prueba
predictPredecir las respuestas mediante el modelo de regresión de análisis de componentes de vecindad (NCA)
refitRefit modelo de análisis de componentes de vecindad (NCA) para regresión

Ejemplos

contraer todo

Cargue los datos de ejemplo.

load imports-85

Las primeras 15 columnas contienen las variables predictoras continuas, mientras que la columna 16 contiene la variable de respuesta, que es el precio de un coche. Defina las variables para el modelo de análisis de componentes de vecindad.

Predictors = X(:,1:15); Y = X(:,16);

Ajuste un modelo de análisis de componentes de vecindad (NCA) para la regresión para detectar las características relevantes.

mdl = fsrnca(Predictors,Y);

El modelo de NCA devuelto, es un objeto.mdlFeatureSelectionNCARegression Este objeto almacena información sobre los datos de entrenamiento, el modelo y la optimización. Puede acceder a las propiedades del objeto, como los pesos de las entidades, utilizando la notación de puntos.

Trace los pesos de las entidades.

figure() plot(mdl.FeatureWeights,'ro') xlabel('Feature Index') ylabel('Feature Weight') grid on

Los pesos de las entidades irrelevantes son cero. La opción en la llamada para mostrar la información de optimización en la línea de comandos.'Verbose',1fsrnca También puede visualizar el proceso de optimización trazando la función objetiva frente al número de iteración.

figure() plot(mdl.FitInfo.Iteration,mdl.FitInfo.Objective,'ro-') grid on xlabel('Iteration Number') ylabel('Objective')

La propiedad es una que contiene más información sobre el modelo.ModelParametersstruct Puede acceder a los campos de esta propiedad mediante la notación de puntos. Por ejemplo, vea si los datos se han estandarizado o no.

mdl.ModelParameters.Standardize
ans = logical
   0

significa que los datos no se estandarizaron antes de ajustar el modelo NCA.0 Puede estandarizar los predictores cuando están en escalas muy diferentes utilizando el argumento de par nombre-valor en la llamada a.'Standardize',1fsrnca

Semántica de copia

Valor. Para saber cómo afectan las clases de valor a las operaciones de copia, consulte.Copiar objetos (MATLAB)

Consulte también

| | |

Introducido en R2016b