Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
После загрузки LearningModel вы создаете LearningModelSession, который привязывает модель к устройству, используемому для выполнения и оценки модели.
Выбор устройства
При создании сеанса можно выбрать устройство. Вы выбираете устройство типа LearningModelDeviceKind:
-
По умолчанию
- Позвольте системе решить, какое устройство следует использовать. В настоящее время устройство по умолчанию — это ЦП.
-
процессор
- Используйте ЦП, даже если другие устройства доступны.
-
Технология DirectX
- Используйте устройство аппаратного ускорения DirectX, в частности первый адаптер, перечисляемый IDXGIFactory1::EnumAdapters1.
-
DirectXHighPerformance (DirectXHighPerformance)
- Аналогично DirectX, но будет использовать DXGI_GPU_PREFERENCE_HIGH_PERFORMANCE при перечислении адаптеров.
-
DirectXMinPower
- То же, что и DirectX, но будет использовать DXGI_GPU_PREFERENCE_MINIMUM_POWER при перечислении адаптеров.
Если устройство не указано, система использует default. Мы рекомендуем использовать default , чтобы получить гибкость, позволяя системе выбирать для вас в будущем.
В следующем видео подробно описаны все виды устройств.
Расширенное создание устройства
Windows AI поддерживает использование устройства, которое уже создал вызывающий объект. При этом существует несколько вариантов и рекомендаций.
- CreateFromDirect3D11Device. Используйте это, если у вас уже есть IDirect3DDevice. Windows AI будет использовать тот же адаптер для создания устройства d3d12 для задач машинного обучения. Это полезно, если у вас есть камера, которая использует устройство d3d11 для видеокадров, и вы хотите использовать это же устройство для сеанса LearningModel. Во многих случаях это может избежать копирования памяти. Примечание: Тензоризация видеофрейма — это единственная вычислительная задача Windows AI для d3d11. Если вы не используете эту функцию, нет преимуществ для совместного использования или создания устройства d3d11.
- CreateFromD3D12CommandQueue (родной). Используйте это, если у вас есть устройство d3d12, которое требуется повторно использовать. Windows AI будет использовать такую очередь команд для рабочих нагрузок машинного обучения. Он также создаст устройство d3d11 с помощью D3D11On12CreateDevice. Это делается только при необходимости и будет использоваться для всех рабочих нагрузок d3d11, таких как тензоризация видеофреймов. Вы можете получить доступ к этому новому устройству с помощью свойства LearningModelDevice.Direct3D11Device.
Пример
В следующем примере показано, как создать сеанс на основе модели и устройства:
private void CreateSession(LearningModel model, LearningModelDeviceKind kind)
{
// Create the evaluation session with the model and device
LearningModelSession session =
new LearningModelSession(model, new LearningModelDevice(kind));
}
См. также
- Предыдущий: загрузка модели
- Далее: Привязать модель
Замечание
Используйте следующие ресурсы, чтобы получить помощь по Windows ML.
- Чтобы задать технические вопросы о машинном обучении в Windows или ответить на них, используйте тег windows-machine-learning в Stack Overflow.
- Чтобы сообщить об ошибке, отправьте сообщение о проблеме на сайте GitHub.