Vytvořte relaci

Po načtení LearningModel vytvoříte LearningModelSession, která propojí model se zařízením, na němž se model spustí a vyhodnotí.

Volba zařízení

Při vytváření relace můžete vybrat zařízení. Zvolíte zařízení typu LearningModelDeviceKind:

  • výchozí
    • Nechte systém rozhodnout, které zařízení se má použít. V současné době je výchozím zařízením procesor.
  • Procesor
    • Využití procesoru i v případě, že jsou k dispozici jiná zařízení.
  • DirectX
  • DirectXHighPerformance
  • DirectXMinPower

Pokud zařízení nezadáte, systém použije výchozí. Doporučujeme použít Výchozí pro získání flexibility, která umožní systému vybrat za vás v budoucnu.

Následující video obsahuje podrobnější informace o jednotlivých typech zařízení.


Pokročilé vytváření zařízení

AI systému Windows podporuje použití zařízení, které už volající vytvořil. Existuje několik možností a aspektů, které je potřeba vzít v úvahu:

  • Vytvořit z přímého 3D11Zařízení. Tuto možnost použijte, pokud již máte existující IDirect3DDevice. AI systému Windows použije stejný adaptér k vytvoření zařízení d3d12 pro úlohy ML. To je užitečné, když máte fotoaparát, který používá zařízení d3d11 pro videoframe a chcete použít stejné zařízení pro Vaše LearningModelSession. V mnoha případech se může vyhnout kopírování paměti. Poznámka: Tensorizace videoframe je jedinou úlohou d3d11, kterou má AI windows. Pokud tuto funkci nepoužíváte, není sdílení ani vytvoření zařízení d3d11 výhodné.
  • CreateFromD3D12CommandQueue (nativní) Tuto možnost použijte, když máte zařízení d3d12, které chcete znovu použít. Windows AI použije tuto frontu příkazů pro své úlohy ML. Vytvoří také zařízení d3d11 pomocí D3D11On12CreateDevice. To se provádí pouze v případě potřeby a bude použita pro všechny úlohy d3d11, jako je tensorizace videoframe. K tomuto novému zařízení můžete přistupovat prostřednictvím vlastnosti LearningModelDevice.Direct3D11Device.

Příklad

Následující příklad ukazuje, jak vytvořit relaci z modelu a zařízení:

private void CreateSession(LearningModel model, LearningModelDeviceKind kind)
{
    // Create the evaluation session with the model and device
    LearningModelSession session =
        new LearningModelSession(model, new LearningModelDevice(kind));
}

Viz také

Poznámka:

Pomoc s Windows ML vám poskytnou následující zdroje:

  • Pokud chcete položit nebo zodpovědět technické otázky týkající se Windows ML, použijte značku windows-machine-learning na Stack Overflow.
  • Pokud chcete nahlásit chybu, zapište prosím problém na našem GitHubu .