MutualInformationFeatureSelectingEstimator Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Seleciona os slots k superiores em todas as colunas especificadas ordenadas por suas informações mútuas com a coluna de rótulo (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 é tomada 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 Recursos e Rótulo, se especificarmos que queremos os dois primeiros slots (elementos vetoriais) que têm a correlação mais alta com a coluna de rótulo, 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.
| Label | Características |
|---|---|
| Verdade | 4,6,0 |
| Falso | 0,7,5 |
| Verdade | 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:
| Label | Características |
|---|---|
| Verdade | 4,0 |
| Falso | 0,5 |
| Verdade | 4,0 |
| Falso | 0,0 |
Verifique a seção Consulte Também para obter links para exemplos de uso.
Métodos
| Nome | Description |
|---|---|
| Fit(IDataView) |
Treina e retorna um ITransformer. |
| GetOutputSchema(SchemaShape) |
Retorna o SchemaShape esquema que será produzido pelo transformador. Usado para propagação e verificação de esquema em um pipeline. |
Métodos de Extensão
| Nome | Description |
|---|---|
| AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Acrescente um 'ponto de verificação de cache' à cadeia do avaliador. Isso garantirá que os avaliadores downstream serão treinados em relação aos dados armazenados em cache. É útil ter um ponto de verificação de cache antes dos treinadores que têm várias passagens de dados. |
| WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Dado um avaliador, retorne um objeto de encapsulamento que chamará um delegado uma vez Fit(IDataView) chamado. Geralmente, é importante que um avaliador retorne informações sobre o que estava em forma, 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> muitas vezes 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 o ajuste for chamado. |