MutualInformationFeatureSelectingEstimator Clase

Definición

Selecciona las k ranuras superiores en todas las columnas especificadas ordenadas por su información mutua con la columna de etiqueta (lo que puede obtener información sobre la etiqueta observando el valor de la columna especificada).

public sealed class MutualInformationFeatureSelectingEstimator : Microsoft.ML.IEstimator<Microsoft.ML.ITransformer>
type MutualInformationFeatureSelectingEstimator = class
    interface IEstimator<ITransformer>
Public NotInheritable Class MutualInformationFeatureSelectingEstimator
Implements IEstimator(Of ITransformer)
Herencia
MutualInformationFeatureSelectingEstimator
Implementaciones

Comentarios

Características del estimador

¿Necesita este estimador examinar los datos para entrenar sus parámetros? Yes
Tipo de datos de columna de entrada Vector o escalar de tipos de datos numéricos, de texto o clave
Tipo de datos de columna de salida Igual que la columna de entrada
Exportable a ONNX Yes

Formalmente, la información mutua se puede escribir como:

$\text{MI}(X,Y) = E_{x,y}[\log(P(x,y)) - \log(P(x)) - \log(P(y))]$ donde $x$ y $y$ son observaciones de variables aleatorias $X$ y $Y$.

donde la expectativa E se toma sobre la distribución conjunta de X e Y. Aquí P(x, y) es la función de densidad de probabilidad conjunta de X e Y, P(x) y P(y) son las funciones de densidad de probabilidad marginal de X e Y respectivamente. En general, una mayor información mutua entre las variables dependientes (o etiqueta) y una variable independiente (o característica) significa que la etiqueta tiene una mayor dependencia mutua sobre esa característica. Mantiene las ranuras principales en las características de salida con la información mutua más grande con la etiqueta.

Por ejemplo, para la siguiente columna Características y etiqueta, si especificamos que queremos las 2 ranuras principales (elementos vectoriales) que tienen la correlación más alta con la columna de etiqueta, la salida de aplicar este estimador mantendrá solo la primera y la tercera ranura, ya que sus valores están más correlacionados con los valores de la columna Etiqueta.

Label Características
True 4,6,0
Falso 0,7,5
True 4,7,0
Falso 0,7,0

Este es el aspecto del conjunto de datos anterior, después de ajustar el estimador y transformar los datos con el transformador resultante:

Label Características
True 4,0
Falso 0,5
True 4,0
Falso 0,0

Consulte la sección Ver también para obtener vínculos a ejemplos de uso.

Métodos

Nombre Description
Fit(IDataView)

Entrena y devuelve un ITransformer.

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