LearningModelDeviceKind Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert die Liste der Gerätetypen, die ein Machine Learning-Modell auswerten können.
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
- Vererbung
-
LearningModelDeviceKind
- Attribute
Windows-Anforderungen
Gerätefamilie |
Windows 10, version 1809 (eingeführt in 10.0.17763.0)
|
API contract |
Windows.AI.MachineLearning.MachineLearningContract (eingeführt in v1.0)
|
Felder
Cpu | 1 | Verwenden Sie die CPU, um das Modell auszuwerten. |
Default | 0 | Überlässt dem System die Entscheidung, welches Gerät verwendet werden soll. |
DirectX | 2 | Verwenden Sie eine GPU oder ein anderes DirectX-Gerät, um das Modell auszuwerten. |
DirectXHighPerformance | 3 | Verwenden Sie das systemrichtliniende Gerät für hohe Leistung. |
DirectXMinPower | 4 | Verwenden Sie das von der Systemrichtlinie definierte Gerät für minimale Leistung. |
Beispiele
Im folgenden Beispiel wird ein Modell geladen, das Gerät ausgewählt, auf dem das Modell ausgewertet werden soll, und eine Auswertungssitzung erstellt.
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;
}
}
Hinweise
Falls nicht angegeben, entscheidet das System, welches Gerät verwendet werden soll.
Windows Server
Um diese API unter Windows Server verwenden zu können, müssen Sie Windows Server 2019 mit Desktopoberfläche verwenden.
Threadsicherheit
Diese API ist threadsicher.