Partager via


MutualInformationFeatureSelectingEstimator Classe

Définition

Sélectionne les k premiers emplacements sur toutes les colonnes spécifiées, classées par leurs informations mutuelles avec la colonne d’étiquette (ce que vous pouvez apprendre sur l’étiquette en observant la valeur de la colonne spécifiée).

public sealed class MutualInformationFeatureSelectingEstimator : Microsoft.ML.IEstimator<Microsoft.ML.ITransformer>
type MutualInformationFeatureSelectingEstimator = class
    interface IEstimator<ITransformer>
Public NotInheritable Class MutualInformationFeatureSelectingEstimator
Implements IEstimator(Of ITransformer)
Héritage
MutualInformationFeatureSelectingEstimator
Implémente

Remarques

Caractéristiques de l’estimateur

Cet estimateur doit-il examiner les données pour effectuer l’apprentissage de ses paramètres ? Yes
Type de données de colonne d’entrée Vecteur ou scalaire de types de données numériques, texte ou clé
Type de données de colonne de sortie Identique à la colonne d’entrée
Exportable vers ONNX Yes

Formellement, l'information mutuelle peut s'écrire de la façon suivante :

$\text{MI}(X,Y) = E_{x,y}[\log(P(x,y)) - \log(P(x)) - \log(P(y))]$ où $x$ et $y$ sont des observations de variables aléatoires $X$ et $Y$.

où l’attente E est prise en charge de la distribution conjointe de X et Y. Ici P(x, y) est la fonction de densité de probabilité commune de X et Y, P(x) et P(y) sont les fonctions de densité de probabilité marginale de X et Y respectivement. En général, une information mutuelle plus élevée entre la variable dépendante(ou l’étiquette) et une variable(ou fonctionnalité) indépendante signifie que l’étiquette a une dépendance mutuelle plus élevée par rapport à cette fonctionnalité. Il conserve les meilleurs emplacements dans les fonctionnalités de sortie avec les informations mutuelles les plus volumineuses avec l’étiquette.

Par exemple, pour la colonne Caractéristiques et Étiquette suivante, si nous spécifions que nous voulons les 2 premiers emplacements (éléments vectoriels) qui ont la corrélation la plus élevée avec la colonne d’étiquette, la sortie de l’application de cet estimateur conservera les premier et troisième emplacements uniquement, car leurs valeurs sont plus corrélées avec les valeurs de la colonne Label.

Étiquette Fonctionnalités
True 4,6,0
False 0,7,5
True 4,7,0
Faux 0,7,0

Voici à quoi ressemblerait le jeu de données ci-dessus, après avoir ajusté l’estimateur et transformé les données avec le transformateur résultant :

Étiquette Fonctionnalités
True 4,0
Faux 0,5
True 4,0
Faux 0,0

Consultez la section Voir aussi pour obtenir des liens vers des exemples d’utilisation.

Méthodes

Fit(IDataView)

Entraîne et retourne un ITransformer.

GetOutputSchema(SchemaShape)

Retourne le SchemaShape du schéma qui sera produit par le transformateur. Utilisé pour la propagation et la vérification du schéma dans un pipeline.

Méthodes d’extension

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

Ajoutez un « point de contrôle de mise en cache » à la chaîne de l’estimateur. Cela garantit que les estimateurs en aval seront entraînés sur les données mises en cache. Il est utile d’avoir un point de contrôle de mise en cache avant les formateurs qui effectuent plusieurs passes de données.

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

Avec un estimateur, retournez un objet d’habillage qui appellera un délégué une fois Fit(IDataView) appelé. Il est souvent important pour un estimateur de retourner des informations sur ce qui était adapté, c’est pourquoi la Fit(IDataView) méthode retourne un objet spécifiquement typé, plutôt qu’un simple général ITransformer. Toutefois, dans le même temps, IEstimator<TTransformer> sont souvent formés dans des pipelines avec de nombreux objets, nous devrons donc créer une chaîne d’estimateurs par le biais EstimatorChain<TLastTransformer> de l’emplacement où l’estimateur pour lequel nous voulons obtenir le transformateur est enterré quelque part dans cette chaîne. Pour ce scénario, nous pouvons, par le biais de cette méthode, attacher un délégué qui sera appelé une fois que fit est appelé.

S’applique à

Voir aussi