Kis objektumészlelési modell betanítása az AutoML-lel
ÉRVÉNYES:Azure CLI ml-bővítmény v2 (aktuális)Python SDK azure-ai-ml v2 (aktuális)
Ebből a cikkből megtudhatja, hogyan taníthat be objektumészlelési modellt a kis méretű objektumok nagy felbontású képeken való észlelésére automatizált gépi tanulással az Azure Machine Learningben.
Az objektumészlelés számítógépes látásmodelljei általában jól működnek a viszonylag nagy objektumokkal rendelkező adathalmazok esetében. A memória és a számítási korlátok miatt azonban ezek a modellek általában nem teljesítenek, ha nagy felbontású képeken lévő kis objektumok észlelésére van feladatuk. Mivel a nagy felbontású képek általában nagy méretűek, a rendszer átméretezi őket a modellbe való bevitel előtt, ami korlátozza a kisebb objektumok észlelésének képességét a kezdeti képmérethez képest.
A probléma megoldásához az automatizált gépi tanulás támogatja a burkolást a számítógépes látási képességek részeként. Az automatizált gépi tanulás burkolóképessége a Kis objektumészlelés burkolásának teljesítményével kapcsolatos fogalmakon alapul.
A burkoláskor minden kép csempékből álló rácsra van osztva. A szomszédos csempék szélességi és magassági méretekben átfedésben vannak egymással. A csempék az eredetiből lesznek levágva az alábbi képen látható módon.
Előfeltételek
Egy Azure Machine Learning-munkaterület. A munkaterület létrehozásához lásd : Munkaterület-erőforrások létrehozása.
Ez a cikk feltételezi, hogy bizonyos ismeretekkel rendelkezik az automatizált gépi tanulási kísérlet számítógépes látási feladatokhoz való konfigurálásához.
Támogatott modellek
A kis méretű objektumészlelés az automatikus gépi tanulás által támogatott összes modell esetében támogatott az objektumészlelési feladathoz tartozó képekhez.
Burkolás engedélyezése a betanítás során
A burkolás engedélyezéséhez a tile_grid_size
paramétert egy olyan értékre állíthatja, mint a "3x2"; ahol 3 a szélességi dimenzió mentén lévő csempék száma, 2 pedig a magassági dimenzió mentén található csempék száma. Ha ez a paraméter "3x2" értékre van állítva; minden kép egy 3 x 2 csempéből álló rácsra van felosztva. Minden csempe átfedésben van a szomszédos csempékkel, így a csempeszegélyre eső összes objektum teljesen szerepel az egyik csempén. Ezt az átfedést a tile_overlap_ratio
paraméter szabályozza, amely alapértelmezés szerint 25%.
Ha engedélyezve van a burkolás, a rendszer a teljes képet és az abból létrehozott csempéket a modellen keresztül továbbítja. Ezeket a képeket és csempéket a rendszer átméretezi a modellbe való betáplálás előtt a paraméterek és max_size
a min_size
paraméterek szerint. A számítási idő a többletadatok feldolgozása miatt arányosan nő.
Ha például a tile_grid_size
paraméter "3x2", akkor a számítási idő körülbelül hétszer nagyobb, mint a burkolás nélkül.
A betanítási paraméterek értékét tile_grid_size
sztringként is megadhatja.
A KÖVETKEZŐRE VONATKOZIK: Azure CLI ml-bővítmény v2 (aktuális)
training_parameters:
tile_grid_size: '3x2'
A paraméter értéke tile_grid_size
a kép méretétől és a képen belüli objektumok méretétől függ. Például nagyobb számú csempe hasznos lehet, ha kisebb objektumok találhatók a képeken.
A paraméter optimális értékének kiválasztásához használja a hiperparaméteres keresést. Ehhez megadhatja a paraméter értékeit a hiperparaméter-térben.
A KÖVETKEZŐRE VONATKOZIK: Azure CLI ml-bővítmény v2 (aktuális)
search_space:
- model_name:
type: choice
values: ['fasterrcnn_resnet50_fpn']
tile_grid_size:
type: choice
values: ['2x1', '3x2', '5x3']
Burkolás a következtetés során
A burkolással betanított modell üzembe helyezésekor a burkolás a következtetés során is megtörténik. Az automatizált gépi tanulás a tile_grid_size
betanítás értékével hozza létre a csempéket a következtetés során. A teljes kép és a megfelelő csempék áthaladnak a modellen, és az objektumjavaslatok egyesítve lesznek a végső előrejelzésekhez, például az alábbi képen.
Feljegyzés
Előfordulhat, hogy ugyanazt az objektumot több csempéről észleli a rendszer, a duplikációészlelés az ilyen duplikációk eltávolításához történik.
A duplikált észlelés úgy történik, hogy nmS-t futtat a csempékről és a rendszerképről származó javaslatokon. Ha több javaslat átfedésben van, a rendszer a legmagasabb pontszámmal rendelkezőt választja ki, a többit pedig ismétlődésként elveti. Két javaslat akkor tekinthető átfedésben, ha a közöttük lévő egyesítés (iou) kereszteződése nagyobb, mint a tile_predictions_nms_thresh
paraméter.
Azt is lehetővé teheti, hogy csak a következtetés során engedélyezze a burkolást anélkül, hogy engedélyezve lenne a betanításban. Ehhez csak a következtetés során állítsa be a tile_grid_size
paramétert, a betanításhoz nem.
Ezzel javíthatja bizonyos adathalmazok teljesítményét, és nem jár azzal a többletköltséggel, amely a betanítási idő alatt történő burkolással jár.
Burkoló hiperparaméterek
Az alábbiakban azokat a paramétereket találja, amelyek segítségével szabályozhatja a burkoló funkciót.
Paraméter neve | Leírás | Alapértelmezett |
---|---|---|
tile_grid_size |
Az egyes képek burkolásához használandó rácsméret. A betanítás, az ellenőrzés és a következtetés során használható. A formátumot sztringként '3x2' kell átadni.Megjegyzés: A paraméter beállítása arányosan növeli a számítási időt, mivel a modell minden csempét és képet feldolgoz. |
nincs alapértelmezett érték |
tile_overlap_ratio |
Szabályozza az átfedés arányát a szomszédos csempék között az egyes dimenziókban. Ha a csempe határán lévő objektumok túl nagyok ahhoz, hogy teljesen elférjenek az egyik csempén, növelje ennek a paraméternek az értékét, hogy az objektumok teljesen elférjenek legalább az egyik csempén. Lebegőpontosnak kell lennie a következőben: [0, 1). |
0,25 |
tile_predictions_nms_thresh |
Az egyesítési küszöbértékek közötti metszet, amely a csempék és a rendszerképek előrejelzéseinek egyesítése során nem maximális elnyomást (nm) tesz lehetővé. Az ellenőrzés és a következtetés során elérhető. Módosítsa ezt a paramétert, ha objektumonként több mező is észlelhető a végleges előrejelzésekben. A lebegőpontosnak [0, 1] kell lennie. |
0,25 |
Példajegyzetfüzetek
Az objektumészlelési modell beállítására és betanítására vonatkozó részletes kódmintákért tekintse meg az objektumészlelési mintajegyzetfüzetet .
Feljegyzés
A cikkben szereplő összes kép az MIT licencszerződésének engedélyezett használati szakaszával összhangban érhető el. Copyright © 2020 Roboflow, Inc.
Következő lépések
- További információ a modell üzembe helyezésének módjáról és módjáról.
- Az egyes feladatokhoz megadott teljesítménydiagramokra és metrikákra vonatkozó definíciókat és példákat az automatizált gépi tanulási kísérletek eredményeinek kiértékelése című témakörben talál.
- Oktatóanyag: Objektumészlelési modell betanítása az AutoML és a Python használatával.
- Tekintse meg , milyen hiperparaméterek érhetők el a számítógépes látási feladatokhoz.
- Előrejelzések készítése az ONNX-zel számítógépes látásmodelleken az AutoML-ből