Microsoft.ML.Runtime Spazio dei nomi

Spazio dei nomi contenente i tipi necessari per il runtime di ML.NET.

Classi

Nome Descrizione
ComponentCatalog

Questo catalogo crea un'istanza di componenti (ovvero classi caricabili). I componenti vengono registrati tramite un discendente di , identificando i nomi e i tipi di Microsoft.ML.LoadableClassAttributeBasefirma in cui deve essere registrato il tipo di componente. Le firme sono tipi delegati che restituiscono void e specificano che i tipi di parametro per la creazione di istanze del componente. Ogni componente può anche specificare un "oggetto argomenti" che deve essere fornito in fase di creazione di istanze.

ProgressHeader

Si tratta dell'intestazione del report di stato.

Struct

Nome Descrizione
ChannelMessage

Messaggio del canale.

Interfacce

Nome Descrizione
IChannel

Canale di comunicazione standard.

IChannelProvider

Un provider di canali può creare nuovi canali e pipe di informazioni generiche.

IComponentFactory

Si tratta di un'interfaccia token che tutte le factory dei componenti devono implementare.

IComponentFactory<TComponent>

Interfaccia per la creazione di un componente senza parametri aggiuntivi (diverso da ).IHostEnvironment

IComponentFactory<TArg1,TComponent>

Interfaccia per la creazione di un componente quando si accetta un parametro aggiuntivo (e un ).IHostEnvironment

IComponentFactory<TArg1,TArg2,TComponent>

Interfaccia per la creazione di un componente quando si accettano due parametri aggiuntivi (e un ).IHostEnvironment

IComponentFactory<TArg1,TArg2,TArg3,TComponent>

Interfaccia per la creazione di un componente quando si accettano tre parametri aggiuntivi (e un ).IHostEnvironment

IExceptionContext

Interfaccia per le eccezioni di "elaborazione" prima che vengano generate. Può essere usato per aggiungere contesto all'eccezione, eseguire il wrapping dell'eccezione in un altro, sostituire completamente l'eccezione e così via. Non è legale restituire null dal processo (a meno che non sia stato passato null, che in realtà non dovrebbe accadere).

IHost

Un host è associato a un componente e fornisce indicazioni per la generazione di numeri casuali e la concorrenza. Si noti che la generazione di numeri casuali, come i metodi dell'ambiente host, deve essere accessibile solo dal thread principale per il componente.

IHostEnvironment

L'interfaccia dell'ambiente host crea host per i componenti. Si noti che i metodi di questa interfaccia devono essere chiamati dal thread principale per l'ambiente. Per ottenere un ambiente per gestire un altro thread, chiamare Fork e passare il risultato restituito a tale thread.

IPipe<TMessage>

Pipe di informazioni generica. Si noti che le pipe sono eliminabili. In genere, Done deve essere chiamato prima di eliminare per segnalare una normale chiusura del tubo, anziché un completamento interrotto.

IProgressChannel

Interfaccia comune per la creazione di report sullo stato di avanzamento. È previsto che l'interfaccia del canale di stato venga usata da un solo thread.

Flusso di lavoro supportato:

  1. Creare il canale tramite StartProgressChannel(String).
  2. Chiamare SetHeader(ProgressHeader, Action<IProgressEntry>) il numero di volte desiderato (incluso 0). Ogni chiamata a SetHeader(ProgressHeader, Action<IProgressEntry>) sostituisce quella precedente.
  3. Creare report checkpoint (0 o più) chiamando Checkpoint(Nullable<Double>[]).
  4. Ripetere i passaggi da 2 a 3 se necessario.
  5. Eliminare il canale.
IProgressChannelProvider

Si tratta di un'interfaccia factory per IProgressChannel. Sia IHostEnvironment che IProgressChannel implementano questa interfaccia, per consentire i reporter di stato annidati.

REVISIONE: eseguire IChannelProvider l'implementazione, anziché l'ambiente?

IProgressEntry

Elemento del titolare della metrica o dello stato.

Enumerazioni

Nome Descrizione
ChannelMessageKind

Tipi di messaggi di canale standard. Nota: questi valori non devono mai essere modificati. È possibile aggiungere nuovi tipi, ma non modificare questi valori. Altre codebase, incluso il codice nativo per altri progetti, dipendono da questi valori.

MessageSensitivity

Flag che può essere associato a un messaggio o a un'eccezione per indicare che ha una determinata classe di dati sensibili. Per impostazione predefinita, i messaggi devono essere specificati come di riservatezza sconosciuta, ad esempio ogni flag di riservatezza è attivato, corrispondente a Unknown. I messaggi completamente sicuri devono essere contrassegnati come None. Tuttavia, se, ad esempio, si stampano i dati da un file (ad esempio, questa operazione può essere eseguita durante l'espressione degli errori di analisi), deve essere contrassegnata in questo caso con UserData.