Modely a platformy AI
Rozbalení Yolov8: Ultralytics’ Viralní Mistrské Dílo Počítačového Vidění

Až dosud čelilo rozpoznávání objektů v obrazech pomocí modelů počítačového vidění významné překážce ve formě několika sekund zpoždění kvůli době zpracování. Tento zpoždění bránilo praktickému přijetí v případech použití, jako je autonomní řízení. Nicméně, vydání modelu YOLOv8 počítačového vidění společností Ultralytics prolomilo zpoždění zpracování. Nový model může detekovat objekty v reálném čase s bezprecedentní přesností a rychlostí, což z něj dělá populární v oblasti počítačového vidění.
Tento článek zkoumá YOLOv8, jeho schopnosti a jak můžete jemně naladit a vytvořit své vlastní modely prostřednictvím jeho otevřeného repozitáře Github.
Yolov8 Explained
YOLO (You Only Live Once) je populární model počítačového vidění, který je schopen detekovat a segmentovat objekty v obrazech. Model prošel několika aktualizacemi v minulosti, s YOLOv8, který označuje 8. verzi.
Jak stojí, YOLOv8 staví na schopnostech předchozích verzí tím, že zavádí nové silné funkce a vylepšení. To umožňuje detekci objektů v reálném čase v obrazových a video datech s vylepšenou přesností a přesností.
Od v1 do v8: Stručné Dějiny
Yolov1: Vydaný v roce 2015, první verze YOLO byla představena jako jednostupňový model detekce objektů. Funkce zahrnovaly model, který čte celý obraz, aby předpověděl každý ohraničující box v jednom hodnocení.
Yolov2: Následující verze, vydaná v roce 2016, předvedla nejlepší výkon na benchmarcích, jako je PASCAL VOC a COCO, a pracovala na vysokých rychlostech (67-40 FPS). Měla také schopnost přesně detekovat více než 9000 kategorií objektů, i s omezenými specifickými detekčními daty.
Yolov3: Spuštěný v roce 2018, Yolov3 představil nové funkce, jako je účinnější síťová architektura, více kotví a prostorová pyramidová selekce pro vícesměrovou extrakci funkcí.
Yolov4: S vydáním Yolov4 v roce 2020, byla zavedena nová technika augmentace dat Mosaic, která nabízela vylepšené trénovací schopnosti.
Yolov5: Vydaný v roce 2021, Yolov5 přidal silné nové funkce, včetně optimalizace hyperparametrů a integrovaného sledování experimentů.
Yolov6: S vydáním Yolov6 v roce 2022, byl model otevřen komunitě pro komunitně řízený vývoj. Byly zavedeny nové funkce, jako je nová strategie sebe-destilace a strategie Anchor-Aided Training (AAT).
Yolov7: Vydaný ve stejném roce, 2022, Yolov7 vylepšil stávající model v rychlosti a přesnosti a byl nejrychlejším modelem detekce objektů v době vydání.
Co dělá YOLOv8 výjimečným?

Bezprecedentní přesnost a vysoká rychlost YOLOv8 dělají tento model počítačového vidění výjimečným oproti předchozím verzím. Je to významné достиžení, protože objekty mohou být nyní detekovány v reálném čase bez zpoždění, na rozdíl od předchozích verzí.
Ale kromě toho, YOLOv8 přichází s mnoha silnými funkcemi, které zahrnují:
- Customizovatelná architektura: YOLOv8 nabízí flexibilní architekturu, kterou vývojáři mohou přizpůsobit svým specifickým požadavkům.
- Adaptivní trénování: YOLOv8 nabízí nové adaptivní trénovací schopnosti, jako je vyvážení ztrátové funkce během trénování a techniky, které zlepšují rychlost učení. Například Adam, který přispívá k lepší přesnosti, rychlejší konvergenci a celkově lepšímu výkonu modelu.
- Pokročilá analýza obrazu: Díky novým schopnostem semantické segmentace a předpovědi tříd, může model detekovat aktivity, barvu, texturu a dokonce i vztahy mezi objekty kromě své základní funkce detekce objektů.
- Augmentace dat: Nové techniky augmentace dat pomáhají řešit aspekty variací obrazu, jako je nízké rozlišení, zakrytí atd., v reálných situacích detekce objektů, kde podmínky nejsou ideální.
- Podpora zadní části: YOLOv8 nabízí podporu pro více zadních částí, včetně CSPDarknet (výchozí zadní část), EfficientNet (lehká zadní část) a ResNet (klasická zadní část), které uživatelé mohou vybrat.
Uživatelé mohou dokonce přizpůsobit zadní část nahrazením CSPDarknet53 jakoukoli jinou architekturou CNN kompatibilní s vstupními a výstupními rozměry YOLOv8.
Trénování a jemné naladění YOLOv8
Model YOLOv8 lze buď jemně naladit, aby se přizpůsobil určitým případům použití, nebo být trénován zcela od začátku, aby se vytvořil specializovaný model. Více informací o trénovacích postupech lze nalézt v oficiálních dokumentech.
Podívejme se, jak můžete provést obě tyto operace.
Jemné naladění YOLOV8 s vlastním datasetem
Operace jemného naladění načte existující model a použije jeho výchozí váhy jako výchozí bod pro trénování. Intuitivně řečeno, model si pamatuje všechny své předchozí znalosti a operace jemného naladění přidává nové informace tím, že upravuje váhy.
Model YOLOv8 lze jemně naladit pomocí Pythonu nebo prostřednictvím rozhraní příkazového řádku (CLI).
1. Jemné naladění modelu YOLOv8 pomocí Pythonu
Začněte importem balíčku Ultralytics do svého kódu. Pak načtěte vlastní model, který chcete trénovat, pomocí následujícího kódu:
Nejprve nainstalujte knihovnu Ultralytics z oficiálního rozdělení.
| # Nainstalujte balíček ultralytics z PyPI pip install ultralytics |
Pak spusťte následující kód v souboru Pythonu:
| from ultralytics import YOLO
# Načtěte model # Trénujte model na datasetu MS COCO |
Výchozím nastavením bude model trénován pomocí datasetu COCO po dobu 100 epoch. Nicméně, můžete také nakonfigurovat tato nastavení, aby nastavily velikost, epoch, atd., v souboru YAML.
Jakmile trénujete model se svými nastaveními a cestou k datu, sledujte průběh, testujte a laděte model a opakujte trénování, dokud nedosáhnete požadovaných výsledků.
2. Jemné naladění modelu YOLOv8 pomocí CLI
Chcete-li trénovat model pomocí CLI, spusťte následující skript v příkazovém řádku:
| yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640 |
Příkaz CLI načte předtrénovaný model `yolov8n.pt` a trénuje ho dále na datasetu definovaném v souboru `coco8.yaml`.
Vytvoření vlastního modelu s YOLOv8
Existují dvě základní způsoby, jak vytvořit vlastní model s rámcem YOLO:
- Trénování od začátku: Tento přístup umožňuje použít předdefinovanou architekturu YOLOv8, ale nebude používat žádné předtrénované váhy. Trénování bude probíhat od začátku.
- Customizovaná architektura: Přizpůsobíte výchozí architekturu YOLO a trénujete novou strukturu od začátku.
Implementace obou těchto metod zůstává stejná. Chcete-li trénovat model YOLO od začátku, spusťte následující kód Pythonu:
| from ultralytics import YOLO
# Načtěte model # Trénujte model |
Všimněte si, že tentokrát jsme načetli soubor `.yaml` místo `.pt`. Soubor YAML obsahuje informace o architektuře modelu a žádná váha není načtena. Příkaz k trénování spustí trénování tohoto modelu od začátku.
Chcete-li trénovat customizovanou architekturu, musíte definovat customní strukturu v souboru `.yaml` podobném `yolov8n.yaml` výše. Pak načtěte tento soubor a trénujte model pomocí stejného kódu jako výše.
Chcete-li se dozvědět více o detekci objektů pomocí AI a zůstat informováni o nejnovějších trendech AI, navštivte unite.ai.













