FeatureContributionCalculatingEstimator Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Estimador de FeatureContributionCalculatingTransformer. Calcula las contribuciones específicas del modelo por característica a la puntuación de cada vector de entrada.
public sealed class FeatureContributionCalculatingEstimator : Microsoft.ML.Data.TrivialEstimator<Microsoft.ML.Transforms.FeatureContributionCalculatingTransformer>
type FeatureContributionCalculatingEstimator = class
inherit TrivialEstimator<FeatureContributionCalculatingTransformer>
Public NotInheritable Class FeatureContributionCalculatingEstimator
Inherits TrivialEstimator(Of FeatureContributionCalculatingTransformer)
- Herencia
-
FeatureContributionCalculatingEstimator
Comentarios
Características del estimador
| ¿Necesita este estimador examinar los datos para entrenar sus parámetros? | No |
| Tipo de datos de columna de entrada | Vector de tamaño conocido de Single |
| Tipo de datos de columna de salida | Vector de tamaño conocido de Single |
| Exportable a ONNX | No |
La puntuación de un conjunto de datos con un modelo entrenado genera una puntuación o una predicción para cada ejemplo. Para comprender y explicar estas predicciones, puede ser útil inspeccionar qué características las influyeron de forma más significativa. Este transformador calcula una lista específica del modelo de contribuciones por característica a la puntuación de cada ejemplo. Estas contribuciones pueden ser positivas (hacen que la puntuación sea más alta) o negativa (hacen que la puntuación sea inferior).
El cálculo de contribución de características se admite actualmente para los siguientes modelos:
- Regresión:
- Clasificación binaria:
- AveragedPerceptronTrainer
- LinearSvmTrainer
- LbfgsLogisticRegressionBinaryTrainer
- SdcaNonCalibratedBinaryTrainer
- SdcaLogisticRegressionBinaryTrainer
- SgdCalibratedTrainer
- SgdNonCalibratedTrainer
- SymbolicSgdLogisticRegressionBinaryTrainer
- GamBinaryTrainer
- FastForestBinaryTrainer
- FastTreeBinaryTrainer
- LightGbmBinaryTrainer
- Clasificación:
En el caso de los modelos lineales, la contribución de una característica determinada es igual al producto del valor de la característica por el peso correspondiente. De forma similar, para los modelos de aditivos generalizados (GAM), la contribución de una característica es igual a la función de forma de la característica especificada evaluada en el valor de la característica.
En el caso de los modelos basados en árboles, el cálculo de la contribución de características consiste esencialmente en determinar qué divisiones del árbol tienen el mayor impacto en la puntuación final y asignar el valor del impacto a las características que determinan la división. Más precisamente, la contribución de una característica es igual al cambio en la puntuación generada mediante la exploración del subárbol opuesto cada vez que se encuentra un nodo de decisión para la característica especificada. Considere un caso sencillo con un único árbol de decisión que tenga un nodo de decisión para la característica binaria F1. Dado un ejemplo que tiene la característica F1 igual a true, podemos calcular la puntuación que habría obtenido si elegimos el subárbol correspondiente a la característica F1 siendo igual a false mientras mantiene constantes las otras características. La contribución de la característica F1 para el ejemplo dado es la diferencia entre la puntuación original y la puntuación obtenida tomando la decisión opuesta en el nodo correspondiente a la característica F1. Este algoritmo se extiende naturalmente a los modelos con muchos árboles de decisión.
Consulte la sección Ver también para obtener vínculos a ejemplos de uso.
Métodos
| Nombre | Description |
|---|---|
| Fit(IDataView) |
Estimador de FeatureContributionCalculatingTransformer. Calcula las contribuciones específicas del modelo por característica a la puntuación de cada vector de entrada. (Heredado de TrivialEstimator<TTransformer>) |
| GetOutputSchema(SchemaShape) |
Devuelve el SchemaShape del esquema que generará el transformador. Se usa para la propagación y comprobación del esquema en una canalización. |
Métodos de extensión
| Nombre | Description |
|---|---|
| AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Anexe un "punto de control de almacenamiento en caché" a la cadena del estimador. Esto garantizará que los estimadores de nivel inferior se entrenarán con los datos almacenados en caché. Resulta útil tener un punto de control de almacenamiento en caché antes de que los instructores tomen varios pases de datos. |
| WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Dado un estimador, devuelva un objeto de ajuste que llamará a un delegado una vez Fit(IDataView) que se llame. A menudo, es importante que un estimador devuelva información sobre lo que se ha ajustado, por lo que el Fit(IDataView) método devuelve un objeto específicamente tipado, en lugar de simplemente un general ITransformer. Sin embargo, al mismo tiempo, IEstimator<TTransformer> a menudo se forman en canalizaciones con muchos objetos, por lo que es posible que tengamos que crear una cadena de estimadores a través EstimatorChain<TLastTransformer> de donde el estimador para el que queremos obtener el transformador está enterrado en algún lugar de esta cadena. En ese escenario, podemos a través de este método adjuntar un delegado al que se llamará una vez que se llame a fit. |
Se aplica a
Consulte también
- CalculateFeatureContribution(TransformsCatalog, ISingleFeaturePredictionTransformer<ICalculateFeatureContribution>, Int32, Int32, Boolean)
- CalculateFeatureContribution<TModelParameters,TCalibrator>(TransformsCatalog, ISingleFeaturePredictionTransformer<CalibratedModelParametersBase<TModelParameters, TCalibrator>>, Int32, Int32, Boolean)