Upravit

Sdílet prostřednictvím


Nejčastější dotazy (nejčastější dotazy)

Tato stránka obsahuje odpovědi na nejoblíbenější otázky z komunity o Windows ML.

Jak zjistím, jestli se model ONNX, který mám, spustí s Windows ML?

Nejjednodušší způsob, jak zkontrolovat, jestli se váš model spustí s Windows ML, je použití nástroje WinML Model Runner. Případně můžete zkontrolovat verze ONNX a buildy Windows další informace o všech podporovaných verzích ONNX pro danou verzi Windows.

Jak převést model jiného formátu na ONNX?

Pomocí WinMLTools můžete převést modely několika různých formátů, jako je Apple CoreML a scikit-learn, na ONNX.

Při pokusu o export nebo převod modelu na ONNX dochází k chybám, které říkají, že můj model má nepodporované operátory. Co mám dělat?

Některé operátory v nativní trénovací platformě nemusí být v současné době podporovány verzí ONNX. Nejprve doporučujeme zkontrolovat podporované verze ONNX pro cílový build Windowsa pokusit se převést model na maximální podporovanou verzi. Novější verze ONNX zahrnují podporu větší sady operátorů v porovnání s předchozími verzemi.

Pokud narazíte na problémy, doporučujeme ve spolupráci s týmem datových věd vyzkoušet nepodporované operátory a vyhnout se jim. Jedním z doporučených přístupů je změna architektury modelu ve zdrojové architektuře a pokus o převod/export modelu na cílovou verzi ONNX. Všimněte si, že model ještě nemusíte přetrénovat – můžete se pokusit převést architekturu a v případě úspěchu přejít k úplnému opětovnému trénování modelu.

Proč nemůžu načíst model?

Existuje několik důvodů, proč můžete mít potíže s načtením modelu, ale jednou z nejběžnějších příčin při vývoji na UPW je omezení přístupu k souborům. Ve výchozím nastavení můžou aplikace UPW přistupovat jenom k určitým částem systému souborů a vyžadovat oprávnění uživatele nebo další funkce, aby bylo možné získat přístup k jiným umístěním. Další informace najdete v tématu Oprávnění k přístupu k souborům.

Jakou verzi WinMLTools mám použít?

Vždy doporučujeme stáhnout a nainstalovat nejnovější verzi balíčku winmltools. Tím zajistíte, že můžete vytvářet modely ONNX, které cílí na nejnovější verze Windows.

Můžu místo winmltools používat onnxmltools?

Ano, můžete, ale budete muset zajistit, abyste nainstalovali správnou verzi onnxmltools, abyste mohli cílit na ONNX verze 1.2.2, což je minimální verze ONNX podporovaná systémem Windows ML. Pokud si nejste jisti, kterou verzi nainstalovat, doporučujeme místo toho nainstalovat nejnovější verzi nástroje winmltools. Tím zajistíte, že budete moct cílit na verzi ONNX podporovanou systémem Windows.

Kterou verzi sady Visual Studio mám použít k získání automatického generování kódu (mlgen)?

Minimální doporučená verze sady Visual Studio s podporou mlgen je 15.8.7. Ve Windows 10 verze 1903 a novějších mlgen už není součástí sady SDK, takže budete muset stáhnout a nainstalovat rozšíření. Existuje jeden pro Visual Studio 2017 a jeden pro Visual Studio 2019.

Při pokusu o spuštění mlgen se zobrazí chybová zpráva a negeneruje se žádný kód. Co by se mohlo stát?

Mezi dvě nejčastější chyby při pokusu o spuštění mlgen patří:

  • Chybí požadovaný atribut consumed_inputs: Pokud narazíte na tuto chybovou zprávu, pravděpodobně se pokoušíte spustit model ONNX verze 1.2 s verzí sady Windows 10 SDK starší než 17763; Doporučujeme zkontrolovat verzi sady SDK a aktualizovat ji na verzi 17763 nebo novější.
  • Chyba typu: Typ (map(řetězec,tensor(float)) výstupního arg (ztráta) uzlu (ZipMap) neodpovídá očekávanému typu...: Pokud narazíte na tuto chybu, je nejpravděpodobnější, že váš model ONNX je starší verzí, než která byla přijata službou WinML počínaje buildem 17763. Doporučujeme aktualizovat balíček převaděče na nejnovější dostupnou verzi a převést model na verzi 1.2 ONNX.

Na čem běží WinML ve výchozím nastavení?

Pokud nezadáte zařízení, na kterém se má spustit LearningModelDeviceKind, nebo pokud použijete LearningModelDeviceKind.Default, systém rozhodne, které zařízení model vyhodnotí. Obvykle se jedná o procesor. Chcete-li spustit WinML na GPU, zadejte jednu z následujících hodnot při vytváření LearningModelDevice:

  • LearningModelDeviceKind.DirectX
  • LearningModelDeviceKind.DirectXHighPerformance
  • LearningModelDeviceKind.DirectXMinPower

Poznámka

Nápovědu k Windows ML vám pomůžou následující zdroje informací:

  • Pokud chcete pokládat nebo odpovídat na 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 .