MutualInformationFeatureSelectingEstimator Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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. |