Référence pour ultralytics/engine/model.py
Note
Ce fichier est disponible à l'adresse https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/engine/model .py. Si tu repères un problème, aide à le corriger en contribuant à une Pull Request 🛠️. Merci 🙏 !
ultralytics.engine.model.Model
Bases : Module
Une classe de base pour la mise en œuvre des modèles YOLO , unifiant les API entre les différents types de modèles.
Cette classe fournit une interface commune pour diverses opérations liées aux modèles YOLO , telles que la formation, la validation, la prédiction, l'exportation et l'analyse comparative. Elle gère différents types de modèles, y compris ceux chargés à partir de fichiers locaux, de Ultralytics HUB ou de Triton Server. La classe est conçue pour être flexible et flexible et extensible pour différentes tâches et configurations de modèles.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
model |
Union[str, Path]
|
Chemin d'accès ou nom du modèle à charger ou à créer. Il peut s'agir d'un chemin local, un nom de modèle provenant de Ultralytics HUB, ou un modèle de serveur Triton . La valeur par défaut est 'yolov8n.pt'. |
'yolov8n.pt'
|
task |
Any
|
Le type de tâche associé au modèle YOLO . Il peut être utilisé pour spécifier le domaine d'application du modèle, tel que la détection d'objets, la segmentation, etc. domaine d'application du modèle, comme la détection d'objets, la segmentation, etc. La valeur par défaut est Aucun. |
None
|
verbose |
bool
|
Si True, active la sortie verbeuse pendant les opérations du modèle. La valeur par défaut est False. |
False
|
Attributs :
Nom | Type | Description |
---|---|---|
callbacks |
dict
|
Un dictionnaire de fonctions de rappel pour divers événements pendant les opérations du modèle. |
predictor |
BasePredictor
|
L'objet prédicteur utilisé pour faire des prédictions. |
model |
Module
|
Le modèle sous-jacent PyTorch . |
trainer |
BaseTrainer
|
L'objet formateur utilisé pour la formation du modèle. |
ckpt |
dict
|
Les données du point de contrôle si le modèle est chargé à partir d'un fichier *.pt. |
cfg |
str
|
La configuration du modèle si elle est chargée à partir d'un fichier *.yaml. |
ckpt_path |
str
|
Le chemin d'accès au fichier du point de contrôle. |
overrides |
dict
|
Un dictionnaire de dérogations pour la configuration du modèle. |
metrics |
dict
|
Les dernières mesures de formation/validation. |
session |
HUBTrainingSession
|
La session Ultralytics HUB, le cas échéant. |
task |
str
|
Le type de tâche auquel le modèle est destiné. |
model_name |
str
|
Le nom du modèle. |
MĂ©thodes :
Nom | Description |
---|---|
__call__ |
Alias de la méthode predict, permettant d'appeler l'instance de modèle. |
_new |
Initialise un nouveau modèle sur la base d'un fichier de configuration. |
_load |
Charge un modèle à partir d'un fichier de points de contrôle. |
_check_is_pytorch_model |
Assure-toi que le modèle est un modèle PyTorch . |
reset_weights |
Réinitialise les poids du modèle à leur état initial. |
load |
Charge les poids du modèle à partir d'un fichier spécifié. |
save |
Enregistre l'état actuel du modèle dans un fichier. |
info |
Enregistre ou renvoie des informations sur le modèle. |
fuse |
Fusionne les couches Conv2d et BatchNorm2d pour une inférence optimisée. |
predict |
Effectue des prédictions de détection d'objets. |
track |
Effectue le suivi des objets. |
val |
Valide le modèle sur un ensemble de données. |
benchmark |
Effectue une analyse comparative du modèle sur différents formats d'exportation. |
export |
Exporte le modèle dans différents formats. |
train |
Entraîne le modèle sur un ensemble de données. |
tune |
Effectue l'ajustement des hyperparamètres. |
_apply |
Applique une fonction aux tenseurs du modèle. |
add_callback |
Ajoute une fonction de rappel pour un événement. |
clear_callback |
Efface tous les rappels pour un événement. |
reset_callbacks |
Réinitialise tous les rappels à leurs fonctions par défaut. |
_get_hub_session |
Récupère ou crée une session Ultralytics HUB. |
is_triton_model |
Vérifie si un modèle est un modèle de serveur Triton . |
is_hub_model |
Vérifie si un modèle est un modèle Ultralytics HUB. |
_reset_ckpt_args |
Réinitialise les arguments des points de contrôle lors du chargement d'un modèle PyTorch . |
_smart_load |
Charge le module approprié en fonction de la tâche du modèle. |
task_map |
Fournit une correspondance entre les tâches du modèle et les classes correspondantes. |
Augmente :
Type | Description |
---|---|
FileNotFoundError
|
Si le fichier de modèle spécifié n'existe pas ou est inaccessible. |
ValueError
|
Si le fichier de modèle ou la configuration n'est pas valide ou n'est pas pris en charge. |
ImportError
|
Si les dépendances requises pour des types de modèles spécifiques (comme HUB SDK) ne sont pas installées. |
TypeError
|
Si le modèle n'est pas un modèle PyTorch lorsque c'est nécessaire. |
AttributeError
|
Si les attributs ou les méthodes requis ne sont pas mis en œuvre ou disponibles. |
NotImplementedError
|
Si une tâche ou un mode de modèle spécifique n'est pas pris en charge. |
Code source dans ultralytics/engine/model.py
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 |
|
device: torch.device
property
Retrouve l'appareil sur lequel les paramètres du modèle sont attribués.
Cette propriété permet de déterminer si les paramètres du modèle sont sur le processeur ou le GPU. Elle ne s'applique qu'aux modèles qui sont des instances de nn.Module.
Retourne :
Type | Description |
---|---|
device | None
|
Le périphérique (CPU/GPU) du modèle s'il s'agit d'un modèle PyTorch , sinon Aucun. |
names: list
property
Récupère les noms de classe associés au modèle chargé.
Cette propriété renvoie les noms de classe s'ils sont définis dans le modèle. Elle vérifie la validité des noms de classe en utilisant la fonction 'check_class_names' du module ultralytics.nn.autobackend.
Retourne :
Type | Description |
---|---|
list | None
|
Les noms de classe du modèle s'ils sont disponibles, sinon Aucun. |
task_map: dict
property
Mapper la tête aux classes de modèles, de formateurs, de validateurs et de prédicteurs.
Retourne :
Nom | Type | Description |
---|---|---|
task_map |
dict
|
La carte des tâches du modèle aux classes de mode. |
transforms
property
Récupère les transformations appliquées aux données d'entrée du modèle chargé.
Cette propriété renvoie les transformations si elles sont définies dans le modèle.
Retourne :
Type | Description |
---|---|
object | None
|
L'objet de transformation du modèle s'il est disponible, sinon Aucun. |
__call__(source=None, stream=False, **kwargs)
Un alias pour la méthode predict, permettant d'appeler l'instance de modèle.
Cette méthode simplifie le processus de prédiction en permettant d'appeler directement l'instance du modèle avec les arguments nécessaires à la prédiction. avec les arguments nécessaires à la prédiction.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
source |
str | Path | int | Image | ndarray
|
La source de l'image pour faire des prédictions. Accepte différents types, y compris les chemins d'accès aux fichiers, les URL, les images PIL et les tableaux numpy. La valeur par défaut est None. |
None
|
stream |
bool
|
Si True, traite la source d'entrée comme un flux continu pour les prédictions. La valeur par défaut est False. |
False
|
**kwargs |
any
|
Arguments de mots-clés supplémentaires pour configurer le processus de prédiction. |
{}
|
Retourne :
Type | Description |
---|---|
List[Results]
|
Une liste de résultats de prédiction, encapsulée dans la classe Résultats. |
Code source dans ultralytics/engine/model.py
__init__(model='yolov8n.pt', task=None, verbose=False)
Initialise une nouvelle instance de la classe de modèle YOLO .
Ce constructeur met en place le modèle en fonction du chemin ou du nom du modèle fourni. Il gère différents types de sources y compris les fichiers locaux, les modèles Ultralytics HUB et les modèles Triton Server. La méthode initialise plusieurs La méthode initialise plusieurs attributs importants du modèle et le prépare pour des opérations telles que l'entraînement, la prédiction ou l'exportation.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
model |
Union[str, Path]
|
Le chemin ou le fichier de modèle à charger ou à créer. Il peut s'agir d'un chemin local, un nom de modèle provenant de Ultralytics HUB, ou un modèle de serveur Triton . La valeur par défaut est 'yolov8n.pt'. |
'yolov8n.pt'
|
task |
Any
|
Le type de tâche associé au modèle YOLO , spécifiant son domaine d'application. La valeur par défaut est Aucun. |
None
|
verbose |
bool
|
Si True, active la sortie verbale pendant l'initialisation du modèle et les opérations suivantes. ultérieures. La valeur par défaut est False. |
False
|
Augmente :
Type | Description |
---|---|
FileNotFoundError
|
Si le fichier de modèle spécifié n'existe pas ou est inaccessible. |
ValueError
|
Si le fichier de modèle ou la configuration n'est pas valide ou n'est pas pris en charge. |
ImportError
|
Si les dépendances requises pour des types de modèles spécifiques (comme HUB SDK) ne sont pas installées. |
Code source dans ultralytics/engine/model.py
add_callback(event, func)
Ajoute une fonction de rappel pour un événement spécifié.
Cette méthode permet à l'utilisateur d'enregistrer une fonction de rappel personnalisée qui est déclenchée lors d'un événement spécifique pendant la formation ou l'inférence du modèle. l'apprentissage ou l'inférence du modèle.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
event |
str
|
Le nom de l'événement auquel attacher le rappel. |
requis |
func |
callable
|
La fonction de rappel Ă enregistrer. |
requis |
Augmente :
Type | Description |
---|---|
ValueError
|
Si le nom de l'événement n'est pas reconnu. |
Code source dans ultralytics/engine/model.py
benchmark(**kwargs)
Compare le modèle à divers formats d'exportation pour en évaluer les performances.
Cette méthode permet d'évaluer les performances du modèle dans différents formats d'exportation, tels que ONNX, TorchScript, etc. Elle utilise la fonction 'benchmark' du module ultralytics.utils.benchmarks. L'analyse comparative est configurée à l'aide d'une combinaison de valeurs de configuration par défaut, d'arguments spécifiques au modèle, de valeurs par défaut spécifiques à la méthode et de mots-clés supplémentaires fournis par l'utilisateur. tout argument supplémentaire fourni par l'utilisateur.
La méthode prend en charge divers arguments qui permettent de personnaliser le processus d'analyse comparative, tels que le choix de l'ensemble de données, la taille de l'image, les modes de précision et la verbosité. le choix du jeu de données, la taille de l'image, les modes de précision, la sélection du périphérique et la verbosité. Pour obtenir une liste complète de toutes les options configurables, les utilisateurs doivent se référer à la section 'configuration' de la documentation.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
**kwargs |
any
|
Arguments de mots-clés arbitraires pour personnaliser le processus d'analyse comparative. Ces arguments sont combinés avec les configurations par défaut, les arguments spécifiques au modèle et les méthodes par défaut. des configurations par défaut, des arguments spécifiques au modèle et des méthodes par défaut. |
{}
|
Retourne :
Type | Description |
---|---|
dict
|
Un dictionnaire contenant les résultats du processus d'analyse comparative. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
clear_callback(event)
Efface toutes les fonctions de rappel enregistrées pour un événement spécifié.
Cette méthode supprime toutes les fonctions de rappel personnalisées et par défaut associées à l'événement donné.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
event |
str
|
Le nom de l'événement pour lequel il faut effacer les rappels. |
requis |
Augmente :
Type | Description |
---|---|
ValueError
|
Si le nom de l'événement n'est pas reconnu. |
Code source dans ultralytics/engine/model.py
embed(source=None, stream=False, **kwargs)
Génère des incrustations d'images en fonction de la source fournie.
Cette méthode est une enveloppe autour de la méthode 'predict()', qui se concentre sur la génération d'encastrements à partir d'une source d'image. Elle permet de personnaliser le processus d'intégration à l'aide de divers arguments de type mot-clé.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
source |
str | int | Image | ndarray
|
La source de l'image pour la génération d'incrustations. La source peut être un chemin de fichier, une URL, une image PIL, un tableau numpy, etc. La valeur par défaut est None. |
None
|
stream |
bool
|
Si True, les prédictions sont diffusées. La valeur par défaut est False. |
False
|
**kwargs |
any
|
Arguments de mots-clés supplémentaires pour configurer le processus d'incorporation. |
{}
|
Retourne :
Type | Description |
---|---|
List[Tensor]
|
Une liste contenant les incrustations de l'image. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
export(**kwargs)
Exporte le modèle dans un format différent adapté au déploiement.
Cette méthode facilite l'exportation du modèle vers différents formats (par exemple, ONNX, TorchScript) à des fins de déploiement. déploiement. Elle utilise la classe "Exporter" pour le processus d'exportation, en combinant les dérogations spécifiques au modèle, les valeurs par défaut des méthodes et tout autre argument supplémentaire fourni. et tous les arguments supplémentaires fournis. Les arguments combinés sont utilisés pour configurer les paramètres d'exportation.
La méthode prend en charge un large éventail d'arguments pour personnaliser le processus d'exportation. Pour une liste complète de tous les arguments possibles, reporte-toi à la section 'configuration' de la documentation.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
**kwargs |
any
|
Arguments de mots-clés arbitraires pour personnaliser le processus d'exportation. Ceux-ci sont combinés avec les et les valeurs par défaut des méthodes. |
{}
|
Retourne :
Type | Description |
---|---|
str
|
Le nom de fichier du modèle exporté dans le format spécifié, ou un objet lié au processus d'exportation. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
fuse()
Fusionne les couches Conv2d et BatchNorm2d dans le modèle.
Cette méthode optimise le modèle en fusionnant les couches Conv2d et BatchNorm2d, ce qui peut améliorer la vitesse d'inférence.
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
info(detailed=False, verbose=True)
Enregistre ou renvoie les informations sur le modèle.
Cette méthode fournit une vue d'ensemble ou des informations détaillées sur le modèle, en fonction des arguments passés. Elle peut contrôler la verbosité de la sortie.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
detailed |
bool
|
Si True, affiche des informations détaillées sur le modèle. La valeur par défaut est False. |
False
|
verbose |
bool
|
Si True, imprime les informations. Si False, renvoie les informations. La valeur par défaut est True. |
True
|
Retourne :
Type | Description |
---|---|
list
|
Différents types d'informations sur le modèle, en fonction des paramètres 'détaillé' et 'verbeux'. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
is_hub_model(model)
staticmethod
Vérifie si le modèle fourni est un modèle HUB.
Code source dans ultralytics/engine/model.py
is_triton_model(model)
staticmethod
Le modèle est une chaîne d'URL du serveur Triton , c'est-à -dire
Code source dans ultralytics/engine/model.py
load(weights='yolov8n.pt')
Charge les paramètres du fichier de poids spécifié dans le modèle.
Cette méthode permet de charger des poids à partir d'un fichier ou directement à partir d'un objet de poids. Elle fait correspondre les paramètres par nom et forme et les transfère au modèle.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
weights |
str | Path
|
Chemin d'accès au fichier de poids ou à un objet de poids. La valeur par défaut est 'yolov8n.pt'. |
'yolov8n.pt'
|
Retourne :
Nom | Type | Description |
---|---|---|
self |
Model
|
L'instance de la classe avec les poids chargés. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
predict(source=None, stream=False, predictor=None, **kwargs)
Effectue des prédictions sur la source d'image donnée en utilisant le modèle YOLO .
Cette méthode facilite le processus de prédiction, en permettant diverses configurations grâce à des arguments de type mot-clé. Elle prend en charge les prédictions avec des prédicteurs personnalisés ou la méthode de prédiction par défaut. La méthode gère différents types de sources d'images et peut fonctionner en mode continu. Elle prend également en charge les modèles de type SAM par le biais de "prompts".
La méthode met en place un nouveau prédicteur s'il n'est pas déjà présent et met à jour ses arguments à chaque appel. Elle émet également un avertissement et utilise les actifs par défaut si la "source" n'est pas fournie. La méthode détermine si elle est est appelée à partir de l'interface de ligne de commande et ajuste son comportement en conséquence, notamment en fixant des valeurs par défaut pour le seuil de confiance et le comportement de sauvegarde. pour le seuil de confiance et le comportement de sauvegarde.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
source |
str | int | Image | ndarray
|
La source de l'image pour faire des prédictions. Accepte différents types, y compris les chemins d'accès aux fichiers, les URL, les images PIL et les tableaux numpy. La valeur par défaut est ASSETS. |
None
|
stream |
bool
|
Traite la source d'entrée comme un flux continu pour les prédictions. La valeur par défaut est False. |
False
|
predictor |
BasePredictor
|
Une instance d'une classe de prédicteur personnalisée pour faire des prédictions. Si elle est nulle, la méthode utilise un prédicteur par défaut. La valeur par défaut est None. |
None
|
**kwargs |
any
|
Arguments de mots-clés supplémentaires pour configurer le processus de prédiction. Ces arguments permettent de personnaliser davantage le comportement de la prédiction. |
{}
|
Retourne :
Type | Description |
---|---|
List[Results]
|
Une liste de résultats de prédiction, encapsulée dans la classe Résultats. |
Augmente :
Type | Description |
---|---|
AttributeError
|
Si le prédicteur n'est pas correctement installé. |
Code source dans ultralytics/engine/model.py
reset_callbacks()
Réinitialise tous les rappels à leurs fonctions par défaut.
Cette méthode rétablit les fonctions de rappel par défaut pour tous les événements, en supprimant tous les rappels personnalisés qui ont été ajoutés précédemment.
Code source dans ultralytics/engine/model.py
reset_weights()
Réinitialise les paramètres du modèle à des valeurs initialisées de façon aléatoire, ce qui a pour effet d'écarter toutes les informations relatives à la formation.
Cette méthode parcourt tous les modules du modèle et réinitialise leurs paramètres s'ils ont une méthode 'reset_parameters'. Elle s'assure également que tous les paramètres ont la valeur True pour 'requires_grad', ce qui leur permet d'être mis à jour pendant la formation. d'être mis à jour pendant la formation.
Retourne :
Nom | Type | Description |
---|---|---|
self |
Model
|
L'instance de la classe dont les poids ont été réinitialisés. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
save(filename='saved_model.pt', use_dill=True)
Enregistre l'état actuel du modèle dans un fichier.
Cette méthode exporte le point de contrôle du modèle (ckpt) vers le nom de fichier spécifié.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
filename |
str | Path
|
Le nom du fichier dans lequel enregistrer le modèle. La valeur par défaut est "modèle_sauvé.pt". |
'saved_model.pt'
|
use_dill |
bool
|
S'il faut essayer d'utiliser dill pour la sérialisation si elle est disponible. La valeur par défaut est True. |
True
|
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
track(source=None, stream=False, persist=False, **kwargs)
Effectue un suivi d'objet sur la source d'entrée spécifiée à l'aide des traqueurs enregistrés.
Cette méthode effectue le suivi des objets en utilisant les prédicteurs du modèle et, en option, les traqueurs enregistrés. Elle est capable de gérer différents types de sources d'entrée telles que les chemins d'accès aux fichiers ou les flux vidéo. La méthode prend en charge la personnalisation du processus de suivi grâce à divers arguments de type mot-clé. Elle enregistre les traqueurs s'ils ne sont pas déjà présents et les persiste éventuellement en fonction de l'indicateur 'persist'.
La méthode définit un seuil de confiance par défaut spécifiquement pour le suivi basé sur ByteTrack, qui nécessite des prédictions de faible confiance en entrée. de confiance en tant que données d'entrée. Le mode de suivi est explicitement défini dans les arguments des mots-clés.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
source |
str
|
La source d'entrée pour le suivi des objets. Il peut s'agir d'un chemin de fichier, d'une URL ou d'un flux vidéo. |
None
|
stream |
bool
|
Traite la source d'entrée comme un flux vidéo continu. La valeur par défaut est False. |
False
|
persist |
bool
|
Persiste les traceurs entre les différents appels à cette méthode. La valeur par défaut est False. |
False
|
**kwargs |
any
|
Arguments de mots-clés supplémentaires pour configurer le processus de suivi. Ces arguments permettent de personnaliser davantage le comportement du suivi. |
{}
|
Retourne :
Type | Description |
---|---|
List[Results]
|
Une liste de résultats de suivi, encapsulée dans la classe Résultats. |
Augmente :
Type | Description |
---|---|
AttributeError
|
Si le prédicteur n'a pas de traqueurs enregistrés. |
Code source dans ultralytics/engine/model.py
train(trainer=None, **kwargs)
Entraîne le modèle à l'aide de l'ensemble de données et de la configuration d'entraînement spécifiés.
Cette méthode facilite la formation des modèles grâce à un éventail de paramètres et de configurations personnalisables. Elle prend en charge la formation avec un formateur personnalisé ou l'approche de formation par défaut définie dans la méthode. La méthode gère différents scénarios, tels que la reprise de la formation à partir d'un point de contrôle, l'intégration avec Ultralytics HUB et la mise à jour du modèle et de la configuration après la formation. la mise à jour du modèle et de la configuration après la formation.
Lors de l'utilisation de Ultralytics HUB, si la session a déjà un modèle chargé, la méthode donne la priorité aux arguments de formation HUB et émet un avertissement si des arguments locaux sont fournis. Elle vérifie les mises à jour de pip et combine les configurations par défaut, les valeurs par défaut spécifiques à la méthode et les arguments fournis par l'utilisateur. les valeurs par défaut spécifiques à la méthode et les arguments fournis par l'utilisateur pour configurer le processus de formation. Après l'entraînement, elle met à jour le modèle et ses configurations, et attache éventuellement des métriques.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
trainer |
BaseTrainer
|
Une instance d'une classe de formateur personnalisée pour former le modèle. Si elle est nulle, la méthode utilise un formateur par défaut. La valeur par défaut est None. |
None
|
**kwargs |
any
|
Arguments arbitraires de type mot-clé représentant la configuration de l'entraînement. Ces arguments sont utilisés pour personnaliser divers aspects du processus de formation. |
{}
|
Retourne :
Type | Description |
---|---|
dict | None
|
Mesures de formation si elles sont disponibles et si la formation est réussie ; sinon, aucune. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
PermissionError
|
S'il y a un problème de permission avec la session HUB. |
ModuleNotFoundError
|
Si le HUB SDK n'est pas installé. |
Code source dans ultralytics/engine/model.py
604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 |
|
tune(use_ray=False, iterations=10, *args, **kwargs)
Effectue le réglage des hyperparamètres pour le modèle, avec une option permettant d'utiliser Ray Tune.
Cette méthode prend en charge deux modes de réglage des hyperparamètres : l'utilisation de Ray Tune ou d'une méthode de réglage personnalisée. Lorsque la fonction Ray Tune est activée, elle utilise la fonction 'run_ray_tune' du module ultralytics.utils.tuner. Sinon, il utilise la classe interne 'Tuner' pour l'accord. La méthode combine des arguments par défaut, surchargés et personnalisés pour configurer l'accord. pour configurer le processus de réglage.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
use_ray |
bool
|
Si True, utilise Ray Tune pour l'ajustement des hyperparamètres. La valeur par défaut est False. |
False
|
iterations |
int
|
Le nombre d'itérations de réglage à effectuer. La valeur par défaut est 10. |
10
|
*args |
list
|
Liste d'arguments de longueur variable pour les arguments supplémentaires. |
()
|
**kwargs |
any
|
Arguments de mots-clés arbitraires. Ceux-ci sont combinés avec les dérogations et les valeurs par défaut du modèle. |
{}
|
Retourne :
Type | Description |
---|---|
dict
|
Un dictionnaire contenant les résultats de la recherche d'hyperparamètres. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |
Code source dans ultralytics/engine/model.py
val(validator=None, **kwargs)
Valide le modèle à l'aide d'un ensemble de données et d'une configuration de validation spécifiés.
Cette méthode facilite le processus de validation du modèle, en permettant une gamme de personnalisation par le biais de divers paramètres et configurations. Elle prend en charge la validation avec un validateur personnalisé ou l'approche de validation par défaut. La méthode combine des configurations par défaut, des valeurs par défaut spécifiques à la méthode et des arguments fournis par l'utilisateur pour configurer le processus de validation. le processus de validation. Après la validation, elle met à jour les métriques du modèle avec les résultats obtenus par le validateur. validateur.
La méthode prend en charge divers arguments qui permettent de personnaliser le processus de validation. Pour une liste de toutes les options configurables, les utilisateurs doivent se référer à la section 'configuration' de la documentation.
Paramètres :
Nom | Type | Description | DĂ©faut |
---|---|---|---|
validator |
BaseValidator
|
Une instance d'une classe de validateur personnalisée pour valider le modèle. Si Aucun, la méthode utilise un validateur par défaut. La valeur par défaut est None. |
None
|
**kwargs |
any
|
Arguments arbitraires de type mot-clé représentant la configuration de la validation. Ces arguments sont utilisés pour personnaliser divers aspects du processus de validation. |
{}
|
Retourne :
Type | Description |
---|---|
dict
|
MĂ©triques de validation obtenues Ă l'issue du processus de validation. |
Augmente :
Type | Description |
---|---|
AssertionError
|
Si le modèle n'est pas un modèle PyTorch . |