Condividi tramite


LearningModelDeviceKind Enumerazione

Definizione

Definisce l'elenco di tipi di dispositivo che possono valutare un modello di Machine Learning.

public enum class LearningModelDeviceKind
/// [Windows.Foundation.Metadata.ContractVersion(Windows.AI.MachineLearning.MachineLearningContract, 65536)]
enum class LearningModelDeviceKind
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.AI.MachineLearning.MachineLearningContract), 65536)]
public enum LearningModelDeviceKind
var value = Windows.AI.MachineLearning.LearningModelDeviceKind.default
Public Enum LearningModelDeviceKind
Ereditarietà
LearningModelDeviceKind
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10, version 1809 (è stato introdotto in 10.0.17763.0)
API contract
Windows.AI.MachineLearning.MachineLearningContract (è stato introdotto in v1.0)

Campi

Cpu 1

Usare la CPU per valutare il modello.

Default 0

Consente al sistema di decidere quale dispositivo usare.

DirectX 2

Usare una GPU o un altro dispositivo DirectX per valutare il modello.

DirectXHighPerformance 3

Usare il dispositivo definito dai criteri di sistema per prestazioni elevate.

DirectXMinPower 4

Usare il dispositivo definito dai criteri di sistema per la potenza minima.

Esempio

Nell'esempio seguente viene caricato un modello, viene selezionato il dispositivo in cui valutare il modello e viene creata una sessione di valutazione.

private async Task LoadModelAsync(string _modelFileName, bool _useGPU)
{
    LearningModel _model;
    LearningModelSession _session;

    try
    {
        // Load and create the model
        var modelFile = 
            await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///Assets/{_modelFileName}"));
        _model = await LearningModel.LoadFromStorageFileAsync(modelFile);

        // Select the device to evaluate on
        LearningModelDevice device = null;
        if (_useGPU)
        {
            // Use a GPU or other DirectX device to evaluate the model.
            device = new LearningModelDevice(LearningModelDeviceKind.DirectX);
        }
        else
        {
            // Use the CPU to evaluate the model.
            device = new LearningModelDevice(LearningModelDeviceKind.Cpu);
        }

        // Create the evaluation session with the model and device.
        _session = new LearningModelSession(_model, device);

    }
    catch (Exception ex)
    {
        StatusBlock.Text = $"error: {ex.Message}";
        _model = null;
    }
}

Commenti

Se non specificato, il sistema deciderà quale dispositivo usare.

Windows Server

Per usare questa API in Windows Server, è necessario usare Windows Server 2019 con Esperienza desktop.

Thread safety

Questa API è thread-safe.

Si applica a

Vedi anche