Udostępnij za pośrednictwem


Microsoft.ML.Runtime Przestrzeń nazw

Przestrzeń nazw zawierająca typy wymagane przez środowisko uruchomieniowe ML.NET.

Klasy

ComponentCatalog

Ten wykaz umożliwia tworzenie wystąpień składników (aka, klasy ładowalne). Składniki są rejestrowane za pośrednictwem elementu podrzędnego Microsoft.ML.LoadableClassAttributeBase, identyfikując nazwy i typy podpisów, w których należy zarejestrować typ składnika. Podpisy to typy delegatów, które zwracają pustkę i określają typy parametrów dla wystąpienia składnika. Każdy składnik może również określić "obiekt argumentów", który powinien zostać podany w czasie wystąpienia.

ProgressHeader

Jest to "nagłówek" raportu postępu.

Struktury

ChannelMessage

Komunikat kanału.

Interfejsy

IChannel

Standardowy kanał komunikacyjny.

IChannelProvider

Dostawca kanału może tworzyć nowe kanały i ogólne potoki informacyjne.

IComponentFactory

Jest to interfejs tokenu, który musi implementować wszystkie fabryki składników.

IComponentFactory<TComponent>

Interfejs do tworzenia składnika bez dodatkowych parametrów (innych niż IHostEnvironment).

IComponentFactory<TArg1,TComponent>

Interfejs do tworzenia składnika, gdy bierzemy jeden dodatkowy parametr (i ).IHostEnvironment

IComponentFactory<TArg1,TArg2,TComponent>

Interfejs do tworzenia składnika, gdy bierzemy dwa dodatkowe parametry (i ).IHostEnvironment

IComponentFactory<TArg1,TArg2,TArg3,TComponent>

Interfejs do tworzenia składnika, gdy bierzemy trzy dodatkowe parametry (i ).IHostEnvironment

IExceptionContext

Interfejs dla wyjątków "przetwarzania" przed ich zgłoszeniem. Może to służyć do dodawania kontekstu do wyjątku, zawijania wyjątku w innym, całkowitego zastąpienia wyjątku itp. Nie jest to legalne zwracanie wartości null z procesu (chyba że wartość null została przekazana, co naprawdę nie powinno się zdarzyć).

IHost

Host jest połączony ze składnikiem i zapewnia losowe generowanie liczb i wskazówki dotyczące współbieżności. Należy pamiętać, że do generowania liczb losowych, takich jak metody środowiska hosta, należy uzyskać dostęp tylko z głównego wątku składnika.

IHostEnvironment

Interfejs środowiska hosta tworzy hosty dla składników. Należy pamiętać, że metody tego interfejsu powinny być wywoływane z głównego wątku dla środowiska. Aby uzyskać środowisko do obsługi innego wątku, wywołaj rozwidlenie i przekaż wynik powrotu do tego wątku.

IPipe<TMessage>

Ogólny potok informacyjny. Należy pamiętać, że potoki są jednorazowe. Ogólnie rzecz biorąc, Należy wywołać polecenie Gotowe przed odsygnalizowaniem normalnego zamknięcia rury, w przeciwieństwie do przerwanego zakończenia.

IProgressChannel

Wspólny interfejs raportowania postępu. Oczekuje się, że interfejs kanału postępu jest używany tylko z jednego wątku.

Obsługiwany przepływ pracy:

  1. Utwórz kanał za pomocą polecenia StartProgressChannel(String).
  2. Wywołaj SetHeader(ProgressHeader, Action<IProgressEntry>) dowolną liczbę razy (w tym 0). Każde wywołanie SetHeader(ProgressHeader, Action<IProgressEntry>) zastępuje poprzednie.
  3. Punkty kontrolne raportu (co najmniej 0) wywołując polecenie Checkpoint(Nullable<Double>[]).
  4. Powtórz kroki 2–3 tak często, jak to konieczne.
  5. Usuwanie kanału.
IProgressChannelProvider

Jest to interfejs fabryczny dla programu IProgressChannel. Zarówno IHostEnvironment i IProgressChannel zaimplementuj ten interfejs, aby umożliwić zagnieżdżonym reporterom postępu.

RECENZJA: czy zaimplementować IChannelProvider to, zamiast środowiska?

IProgressEntry

Element posiadacza metryki/postępu.

Wyliczenia

ChannelMessageKind

Rodzaje standardowych komunikatów kanału. Uwaga: te wartości nigdy nie powinny być zmieniane. Możemy dodać nowe rodzaje, ale nie zmieniamy tych wartości. Inne bazy kodu, w tym kod natywny dla innych projektów, zależą od tych wartości.

MessageSensitivity

Flaga, która może być dołączona do komunikatu lub wyjątku wskazująca, że ma pewną klasę poufnych danych. Domyślnie komunikaty powinny być określane jako nieznanej poufności, co oznacza, że każda flaga poufności jest włączona, odpowiadająca Unknown. Komunikaty, które są całkowicie bezpieczne, powinny być oznaczone jako None. Jeśli jednak, powiedzmy, jeden drukuje dane z pliku (na przykład można to zrobić podczas wyrażania błędów analizy), powinien zostać oflagowany w tym przypadku za pomocą UserDatapolecenia .