Język

MutualInformationFeatureSelectingEstimator Klasa

Definicja

Wybiera pierwsze miejsca k we wszystkich określonych kolumnach uporządkowanych przez ich wzajemne informacje z kolumną etykiety (co można dowiedzieć się o etykiecie, obserwując wartość określonej kolumny).

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

Uwagi

Charakterystyka narzędzia do szacowania

Czy ten narzędzie do szacowania musi przyjrzeć się danym, aby wytrenować jego parametry? Yes
Typ danych kolumny wejściowej Wektor lub skalarny typów danych liczbowych, tekstowych lub kluczowych
Typ danych kolumny wyjściowej Tak samo jak kolumna wejściowa
Możliwość eksportowania do ONNX Yes

Formalnie wzajemne informacje mogą być napisane jako:

$\text{MI}(X,Y) = E_{x,y}[\log(P(x,y)) - \log(P(x)) - \log(P(y))]$, gdzie $x$ i $y$ to obserwacje zmiennych losowych $X$ i $Y$.

w przypadku, gdy oczekuje się, że E zostanie przejęty wspólny rozkład X i Y. Tutaj P(x, y) jest wspólną funkcją gęstości prawdopodobieństwa X i Y, P(x) i P(y) to marginalne funkcje gęstości prawdopodobieństwa odpowiednio X i Y. Ogólnie rzecz biorąc, wyższa wzajemne informacje między zmienną zależną (lub etykietą) a niezależną zmienną (lub funkcją) oznacza, że etykieta ma wyższą wzajemne zależności od tej funkcji. Utrzymuje on najważniejsze miejsca w funkcjach wyjściowych z największymi wzajemnymi informacjami z etykietą.

Na przykład w przypadku następującej kolumny Funkcje i etykieta, jeśli określimy, że chcemy, aby 2 miejsca (elementy wektorowe) miały wyższą korelację z kolumną label, dane wyjściowe zastosowania tego narzędzia do szacowania zachowałyby tylko pierwsze i trzecie miejsca, ponieważ ich wartości są bardziej skorelowane z wartościami w kolumnie Etykieta.

Label Funkcje
True 4,6,0
Nieprawda 0,7,5
True 4,7,0
Nieprawda 0,7,0

W ten sposób powyższy zestaw danych będzie wyglądał, po dopasowaniu narzędzia do szacowania i przekształceniu danych za pomocą wynikowego transformatora:

Label Funkcje
True 4,0
Nieprawda 0,5
True 4,0
Nieprawda 0,0

Zapoznaj się z sekcją Zobacz również, aby uzyskać linki do przykładów użycia.

Metody

Nazwa Opis
Fit(IDataView)

Trenuje i zwraca wartość ITransformer.

GetOutputSchema(SchemaShape)

SchemaShape Zwraca schemat, który zostanie wygenerowany przez transformator. Służy do propagacji schematu i weryfikacji w potoku.

Metody rozszerzania

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

Dołącz punkt kontrolny buforowania do łańcucha narzędzia do szacowania. Zapewni to, że narzędzia do szacowania podrzędnego zostaną wytrenowane z buforowanych danych. Warto mieć punkt kontrolny buforowania, zanim trenerzy przejdą wiele danych.

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

Biorąc pod uwagę narzędzie do szacowania, zwróć obiekt opakowujący, który wywoła delegata po Fit(IDataView) wywołaniu. Często ważne jest, aby narzędzie do szacowania zwracało informacje o tym, co było odpowiednie, dlatego Fit(IDataView) metoda zwraca specjalnie wpisany obiekt, a nie tylko ogólne ITransformer. Jednak w tym samym czasie IEstimator<TTransformer> są często tworzone w potoki z wieloma obiektami, więc może być konieczne utworzenie łańcucha narzędzi do szacowania za pośrednictwem EstimatorChain<TLastTransformer> miejsca, w którym narzędzie do szacowania, dla którego chcemy uzyskać transformator jest pochowany gdzieś w tym łańcuchu. W tym scenariuszu możemy za pomocą tej metody dołączyć delegata, który będzie wywoływany po wywołaniu dopasowania.

Dotyczy

Zobacz też