Partilhar via


MutualInformationFeatureSelectingEstimator Classe

Definição

Seleciona os principais slots k em todas as colunas especificadas ordenadas por suas informações mútuas com a coluna label (o que você pode aprender sobre o rótulo observando o valor da coluna 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)
Herança
MutualInformationFeatureSelectingEstimator
Implementações

Comentários

Características do avaliador

Esse avaliador precisa examinar os dados para treinar seus parâmetros? Yes
Tipo de dados de coluna de entrada Vetor ou escalar de tipos de dados numéricos, de texto ou de chave
Tipo de dados de coluna de saída O mesmo que a coluna de entrada
Exportável para ONNX Yes

Formalmente, as informações mútuas podem ser escritas como:

$\text{MI}(X,Y) = E_{x,y}[\log(P(x,y)) - \log(P(x)) - \log(P(y))]$ em que $x$ e $y$ são observações de variáveis aleatórias $X$ e $Y$.

em que a expectativa E é assumida sobre a distribuição conjunta de X e Y. Aqui P(x, y) é a função de densidade de probabilidade conjunta de X e Y, P(x) e P(y) são as funções de densidade de probabilidade marginal de X e Y, respectivamente. Em geral, uma informação mútua mais alta entre a variável dependente (ou rótulo) e uma variável(ou recurso) independente significa que o rótulo tem maior dependência mútua sobre esse recurso. Ele mantém os slots superiores nos recursos de saída com as maiores informações mútuas com o rótulo.

Por exemplo, para a seguinte coluna Features e Label, se especificarmos que queremos os 2 principais slots (elementos vetoriais) que têm a correlação mais alta com a coluna label, a saída da aplicação desse Avaliador manterá apenas o primeiro e o terceiro slots, pois seus valores estão mais correlacionados com os valores na coluna Rótulo.

Rótulo Recursos
True 4,6,0
Falso 0,7,5
True 4,7,0
Falso 0,7,0

É assim que o conjunto de dados acima ficaria, depois de ajustar o avaliador e transformar os dados com o transformador resultante:

Rótulo Recursos
True 4,0
Falso 0,5
True 4,0
Falso 0,0

Verifique a seção Consulte também para obter links para exemplos de uso.

Métodos

Fit(IDataView)

Treina e retorna um ITransformer.

GetOutputSchema(SchemaShape)

Retorna o SchemaShape do esquema que será produzido pelo transformador. Usado para propagação e verificação de esquema em um pipeline.

Métodos de Extensão

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Acrescente um 'ponto de verificação de cache' à cadeia do avaliador. Isso garantirá que os avaliadores downstream sejam treinados em relação aos dados armazenados em cache. É útil ter um ponto de verificação de cache antes de treinadores que recebem várias passagens de dados.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Dado um avaliador, retorne um objeto de encapsulamento que chamará um delegado quando Fit(IDataView) for chamado. Geralmente, é importante que um avaliador retorne informações sobre o que era adequado, e é por isso que o Fit(IDataView) método retorna um objeto especificamente tipado, em vez de apenas um geral ITransformer. No entanto, ao mesmo tempo, IEstimator<TTransformer> geralmente são formados em pipelines com muitos objetos, portanto, talvez seja necessário criar uma cadeia de avaliadores por meio EstimatorChain<TLastTransformer> de onde o avaliador para o qual queremos obter o transformador está enterrado em algum lugar nessa cadeia. Para esse cenário, podemos por meio desse método anexar um delegado que será chamado assim que fit for chamado.

Aplica-se a

Confira também