다음을 통해 공유


LearningModelDeviceKind 열거형

정의

기계 학습 모델을 평가할 수 있는 디바이스 종류의 목록을 정의합니다.

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
상속
LearningModelDeviceKind
특성

Windows 요구 사항

디바이스 패밀리
Windows 10, version 1809 (10.0.17763.0에서 도입되었습니다.)
API contract
Windows.AI.MachineLearning.MachineLearningContract (v1.0에서 도입되었습니다.)

필드

Cpu 1

CPU를 사용하여 모델을 평가합니다.

Default 0

시스템이 사용할 디바이스를 결정하도록 합니다.

DirectX 2

GPU 또는 다른 DirectX 디바이스를 사용하여 모델을 평가합니다.

DirectXHighPerformance 3

고성능을 위해 시스템 정책 정의 디바이스를 사용합니다.

DirectXMinPower 4

시스템 정책 정의 디바이스를 최소 전원에 사용합니다.

예제

다음 예제에서는 모델을 로드하고, 모델을 평가할 디바이스를 선택하고, 평가 세션을 만듭니다.

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;
    }
}

설명

지정하지 않으면 시스템에서 사용할 디바이스를 결정합니다.

Windows Server

Windows Server에서 이 API를 사용하려면 데스크톱 환경에서 Windows Server 2019를 사용해야 합니다.

스레드로부터의 안전성

이 API는 스레드로부터 안전합니다.

적용 대상

추가 정보