From 93fea77db579125dd66bbaa085287912182a3866 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Sat, 18 Jun 2022 14:28:09 +0200 Subject: [PATCH 1/2] Created using Colaboratory --- tutorial.ipynb | 295 ++++++++++++++++++++++++------------------------- 1 file changed, 145 insertions(+), 150 deletions(-) diff --git a/tutorial.ipynb b/tutorial.ipynb index 1f537c516ede..571c38e5d4eb 100644 --- a/tutorial.ipynb +++ b/tutorial.ipynb @@ -16,7 +16,7 @@ "accelerator": "GPU", "widgets": { "application/vnd.jupyter.widget-state+json": { - "d90eeb56398f458086e3b2b41dbd9fec": { + "572de771c7b34c1481def33bd5ed690d": { "model_module": "@jupyter-widgets/controls", "model_name": "HBoxModel", "model_module_version": "1.5.0", @@ -31,14 +31,14 @@ "_view_name": "HBoxView", "box_style": "", "children": [ - "IPY_MODEL_d91d8347f17349a4987cea29eac0a49c", - "IPY_MODEL_8f4ffda703ac4348ab7edf1d12a188e1", - "IPY_MODEL_8c2d91f564de45f8a403386eeeccac27" + "IPY_MODEL_20c89dc0d82a4bdf8756bf5e34152292", + "IPY_MODEL_61026f684725441db2a640e531807675", + "IPY_MODEL_8d2e16d90e13449598d7b3fac75f78a3" ], - "layout": "IPY_MODEL_5dd95d3eda8b49f7910620edcdcbdcdc" + "layout": "IPY_MODEL_a09d90f1bd374ece9a29bc6cfe07c072" } }, - "d91d8347f17349a4987cea29eac0a49c": { + "20c89dc0d82a4bdf8756bf5e34152292": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", @@ -53,13 +53,13 @@ "_view_name": "HTMLView", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_520e5b7e80eb450188261cffbc574d25", + "layout": "IPY_MODEL_801e720897804703b4d32f99f84cc3b8", "placeholder": "​", - "style": "IPY_MODEL_3cef138c5f7743858bb0f87b65dd3c76", + "style": "IPY_MODEL_c9fb2e268cc94d508d909b3b72ac9df3", "value": "100%" } }, - "8f4ffda703ac4348ab7edf1d12a188e1": { + "61026f684725441db2a640e531807675": { "model_module": "@jupyter-widgets/controls", "model_name": "FloatProgressModel", "model_module_version": "1.5.0", @@ -75,15 +75,15 @@ "bar_style": "success", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_c3782c6dda80400ba7f8c5345624bf87", + "layout": "IPY_MODEL_bfbc16e88df24fae93e8c80538e78273", "max": 818322941, "min": 0, "orientation": "horizontal", - "style": "IPY_MODEL_11415bab172a4904b73e29ff60f6fce1", + "style": "IPY_MODEL_d9ffa50bddb7455ca4d67ec220c4a10c", "value": 818322941 } }, - "8c2d91f564de45f8a403386eeeccac27": { + "8d2e16d90e13449598d7b3fac75f78a3": { "model_module": "@jupyter-widgets/controls", "model_name": "HTMLModel", "model_module_version": "1.5.0", @@ -98,13 +98,13 @@ "_view_name": "HTMLView", "description": "", "description_tooltip": null, - "layout": "IPY_MODEL_eac18040908042dbae67a47d23e95b47", + "layout": "IPY_MODEL_8be83ee30f804775aa55aeb021bf515b", "placeholder": "​", - "style": "IPY_MODEL_e0fc1d6eb478469c9098aa9518d7b358", - "value": " 780M/780M [01:17<00:00, 17.7MB/s]" + "style": "IPY_MODEL_78e5b8dba72942bfacfee54ceec53784", + "value": " 780M/780M [01:28<00:00, 9.08MB/s]" } }, - "5dd95d3eda8b49f7910620edcdcbdcdc": { + "a09d90f1bd374ece9a29bc6cfe07c072": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", @@ -156,7 +156,7 @@ "width": null } }, - "520e5b7e80eb450188261cffbc574d25": { + "801e720897804703b4d32f99f84cc3b8": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", @@ -208,7 +208,7 @@ "width": null } }, - "3cef138c5f7743858bb0f87b65dd3c76": { + "c9fb2e268cc94d508d909b3b72ac9df3": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", @@ -223,7 +223,7 @@ "description_width": "" } }, - "c3782c6dda80400ba7f8c5345624bf87": { + "bfbc16e88df24fae93e8c80538e78273": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", @@ -275,7 +275,7 @@ "width": null } }, - "11415bab172a4904b73e29ff60f6fce1": { + "d9ffa50bddb7455ca4d67ec220c4a10c": { "model_module": "@jupyter-widgets/controls", "model_name": "ProgressStyleModel", "model_module_version": "1.5.0", @@ -291,7 +291,7 @@ "description_width": "" } }, - "eac18040908042dbae67a47d23e95b47": { + "8be83ee30f804775aa55aeb021bf515b": { "model_module": "@jupyter-widgets/base", "model_name": "LayoutModel", "model_module_version": "1.2.0", @@ -343,7 +343,7 @@ "width": null } }, - "e0fc1d6eb478469c9098aa9518d7b358": { + "78e5b8dba72942bfacfee54ceec53784": { "model_module": "@jupyter-widgets/controls", "model_name": "DescriptionStyleModel", "model_module_version": "1.5.0", @@ -369,7 +369,7 @@ "colab_type": "text" }, "source": [ - "\"Open" + "\"Open" ] }, { @@ -403,7 +403,7 @@ "colab": { "base_uri": "https://localhost:8080/" }, - "outputId": "ebf225bd-e109-4dbd-8561-3b15514ca47c" + "outputId": "4bf03330-c2e8-43ec-c5da-b7f5e0b2b123" }, "source": [ "!git clone https://github.com/ultralytics/yolov5 # clone\n", @@ -420,14 +420,14 @@ "output_type": "stream", "name": "stderr", "text": [ - "YOLOv5 🚀 v6.1-174-gc4cb7c6 torch 1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n" + "YOLOv5 🚀 v6.1-257-g669f707 Python-3.7.13 torch-1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n" ] }, { "output_type": "stream", "name": "stdout", "text": [ - "Setup complete ✅ (8 CPUs, 51.0 GB RAM, 38.2/166.8 GB disk)\n" + "Setup complete ✅ (8 CPUs, 51.0 GB RAM, 38.8/166.8 GB disk)\n" ] } ] @@ -460,7 +460,7 @@ "colab": { "base_uri": "https://localhost:8080/" }, - "outputId": "2f43338d-f533-4277-ef9f-b37b565e2702" + "outputId": "1d1bb361-c8f3-4ddd-8a19-864bb993e7ac" }, "source": [ "!python detect.py --weights yolov5s.pt --img 640 --conf 0.25 --source data/images\n", @@ -473,16 +473,16 @@ "name": "stdout", "text": [ "\u001b[34m\u001b[1mdetect: \u001b[0mweights=['yolov5s.pt'], source=data/images, data=data/coco128.yaml, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=False, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs/detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False\n", - "YOLOv5 🚀 v6.1-174-gc4cb7c6 torch 1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n", + "YOLOv5 🚀 v6.1-257-g669f707 Python-3.7.13 torch-1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n", "\n", "Downloading https://github.com/ultralytics/yolov5/releases/download/v6.1/yolov5s.pt to yolov5s.pt...\n", - "100% 14.1M/14.1M [00:00<00:00, 220MB/s]\n", + "100% 14.1M/14.1M [00:00<00:00, 225MB/s]\n", "\n", "Fusing layers... \n", "YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients\n", - "image 1/2 /content/yolov5/data/images/bus.jpg: 640x480 4 persons, 1 bus, Done. (0.012s)\n", - "image 2/2 /content/yolov5/data/images/zidane.jpg: 384x640 2 persons, 2 ties, Done. (0.013s)\n", - "Speed: 0.5ms pre-process, 12.5ms inference, 17.3ms NMS per image at shape (1, 3, 640, 640)\n", + "image 1/2 /content/yolov5/data/images/bus.jpg: 640x480 4 persons, 1 bus, Done. (0.013s)\n", + "image 2/2 /content/yolov5/data/images/zidane.jpg: 384x640 2 persons, 2 ties, Done. (0.015s)\n", + "Speed: 0.6ms pre-process, 14.1ms inference, 23.9ms NMS per image at shape (1, 3, 640, 640)\n", "Results saved to \u001b[1mruns/detect/exp\u001b[0m\n" ] } @@ -526,20 +526,20 @@ "base_uri": "https://localhost:8080/", "height": 49, "referenced_widgets": [ - "d90eeb56398f458086e3b2b41dbd9fec", - "d91d8347f17349a4987cea29eac0a49c", - "8f4ffda703ac4348ab7edf1d12a188e1", - "8c2d91f564de45f8a403386eeeccac27", - "5dd95d3eda8b49f7910620edcdcbdcdc", - "520e5b7e80eb450188261cffbc574d25", - "3cef138c5f7743858bb0f87b65dd3c76", - "c3782c6dda80400ba7f8c5345624bf87", - "11415bab172a4904b73e29ff60f6fce1", - "eac18040908042dbae67a47d23e95b47", - "e0fc1d6eb478469c9098aa9518d7b358" + "572de771c7b34c1481def33bd5ed690d", + "20c89dc0d82a4bdf8756bf5e34152292", + "61026f684725441db2a640e531807675", + "8d2e16d90e13449598d7b3fac75f78a3", + "a09d90f1bd374ece9a29bc6cfe07c072", + "801e720897804703b4d32f99f84cc3b8", + "c9fb2e268cc94d508d909b3b72ac9df3", + "bfbc16e88df24fae93e8c80538e78273", + "d9ffa50bddb7455ca4d67ec220c4a10c", + "8be83ee30f804775aa55aeb021bf515b", + "78e5b8dba72942bfacfee54ceec53784" ] }, - "outputId": "26f3c005-cc13-4b7c-8523-844b56a0b0e3" + "outputId": "47c358af-138d-42d9-ca89-4364283df9e3" }, "source": [ "# Download COCO val\n", @@ -557,7 +557,7 @@ "application/vnd.jupyter.widget-view+json": { "version_major": 2, "version_minor": 0, - "model_id": "d90eeb56398f458086e3b2b41dbd9fec" + "model_id": "572de771c7b34c1481def33bd5ed690d" } }, "metadata": {} @@ -571,7 +571,7 @@ "colab": { "base_uri": "https://localhost:8080/" }, - "outputId": "c73097d6-02a8-43af-9962-ba6500b793ff" + "outputId": "979fe4c2-a058-44de-b401-3cb67878a1b9" }, "source": [ "# Run YOLOv5x on COCO val\n", @@ -584,35 +584,35 @@ "name": "stdout", "text": [ "\u001b[34m\u001b[1mval: \u001b[0mdata=/content/yolov5/data/coco.yaml, weights=['yolov5x.pt'], batch_size=32, imgsz=640, conf_thres=0.001, iou_thres=0.65, task=val, device=, workers=8, single_cls=False, augment=False, verbose=False, save_txt=False, save_hybrid=False, save_conf=False, save_json=True, project=runs/val, name=exp, exist_ok=False, half=True, dnn=False\n", - "YOLOv5 🚀 v6.1-174-gc4cb7c6 torch 1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n", + "YOLOv5 🚀 v6.1-257-g669f707 Python-3.7.13 torch-1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n", "\n", "Downloading https://github.com/ultralytics/yolov5/releases/download/v6.1/yolov5x.pt to yolov5x.pt...\n", - "100% 166M/166M [00:05<00:00, 33.5MB/s]\n", + "100% 166M/166M [00:04<00:00, 39.4MB/s]\n", "\n", "Fusing layers... \n", "YOLOv5x summary: 444 layers, 86705005 parameters, 0 gradients\n", "Downloading https://ultralytics.com/assets/Arial.ttf to /root/.config/Ultralytics/Arial.ttf...\n", - "100% 755k/755k [00:00<00:00, 49.6MB/s]\n", - "\u001b[34m\u001b[1mval: \u001b[0mScanning '/content/datasets/coco/val2017' images and labels...4952 found, 48 missing, 0 empty, 0 corrupt: 100% 5000/5000 [00:00<00:00, 10667.19it/s]\n", + "100% 755k/755k [00:00<00:00, 47.9MB/s]\n", + "\u001b[34m\u001b[1mval: \u001b[0mScanning '/content/datasets/coco/val2017' images and labels...4952 found, 48 missing, 0 empty, 0 corrupt: 100% 5000/5000 [00:00<00:00, 8742.34it/s]\n", "\u001b[34m\u001b[1mval: \u001b[0mNew cache created: /content/datasets/coco/val2017.cache\n", - " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 157/157 [00:58<00:00, 2.70it/s]\n", - " all 5000 36335 0.743 0.626 0.683 0.496\n", - "Speed: 0.1ms pre-process, 4.8ms inference, 1.2ms NMS per image at shape (32, 3, 640, 640)\n", + " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 157/157 [01:11<00:00, 2.21it/s]\n", + " all 5000 36335 0.743 0.625 0.683 0.504\n", + "Speed: 0.1ms pre-process, 4.9ms inference, 1.2ms NMS per image at shape (32, 3, 640, 640)\n", "\n", "Evaluating pycocotools mAP... saving runs/val/exp/yolov5x_predictions.json...\n", "loading annotations into memory...\n", - "Done (t=0.38s)\n", + "Done (t=0.42s)\n", "creating index...\n", "index created!\n", "Loading and preparing results...\n", - "DONE (t=5.42s)\n", + "DONE (t=4.91s)\n", "creating index...\n", "index created!\n", "Running per image evaluation...\n", "Evaluate annotation type *bbox*\n", - "DONE (t=72.67s).\n", + "DONE (t=77.89s).\n", "Accumulating evaluation results...\n", - "DONE (t=13.48s).\n", + "DONE (t=15.36s).\n", " Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.506\n", " Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.688\n", " Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.549\n", @@ -731,13 +731,13 @@ "colab": { "base_uri": "https://localhost:8080/" }, - "outputId": "6735ae8b-fd75-4ecd-9d32-71d1881e2481" + "outputId": "be9424b5-34d6-4de0-e951-2c5ae334721e" }, "source": [ "# Train YOLOv5s on COCO128 for 3 epochs\n", "!python train.py --img 640 --batch 16 --epochs 3 --data coco128.yaml --weights yolov5s.pt --cache" ], - "execution_count": 5, + "execution_count": 7, "outputs": [ { "output_type": "stream", @@ -745,17 +745,12 @@ "text": [ "\u001b[34m\u001b[1mtrain: \u001b[0mweights=yolov5s.pt, cfg=, data=coco128.yaml, hyp=data/hyps/hyp.scratch-low.yaml, epochs=3, batch_size=16, imgsz=640, rect=False, resume=False, nosave=False, noval=False, noautoanchor=False, noplots=False, evolve=None, bucket=, cache=ram, image_weights=False, device=, multi_scale=False, single_cls=False, optimizer=SGD, sync_bn=False, workers=8, project=runs/train, name=exp, exist_ok=False, quad=False, cos_lr=False, label_smoothing=0.0, patience=100, freeze=[0], save_period=-1, local_rank=-1, entity=None, upload_dataset=False, bbox_interval=-1, artifact_alias=latest\n", "\u001b[34m\u001b[1mgithub: \u001b[0mup to date with https://github.com/ultralytics/yolov5 ✅\n", - "YOLOv5 🚀 v6.1-174-gc4cb7c6 torch 1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n", + "YOLOv5 🚀 v6.1-257-g669f707 Python-3.7.13 torch-1.11.0+cu113 CUDA:0 (Tesla V100-SXM2-16GB, 16160MiB)\n", "\n", "\u001b[34m\u001b[1mhyperparameters: \u001b[0mlr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=0.05, cls=0.5, cls_pw=1.0, obj=1.0, obj_pw=1.0, iou_t=0.2, anchor_t=4.0, fl_gamma=0.0, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, mosaic=1.0, mixup=0.0, copy_paste=0.0\n", "\u001b[34m\u001b[1mWeights & Biases: \u001b[0mrun 'pip install wandb' to automatically track and visualize YOLOv5 🚀 runs (RECOMMENDED)\n", "\u001b[34m\u001b[1mTensorBoard: \u001b[0mStart with 'tensorboard --logdir runs/train', view at http://localhost:6006/\n", "\n", - "Dataset not found ⚠, missing paths ['/content/datasets/coco128/images/train2017']\n", - "Downloading https://ultralytics.com/assets/coco128.zip to coco128.zip...\n", - "100% 6.66M/6.66M [00:00<00:00, 41.0MB/s]\n", - "Dataset download success ✅ (0.9s), saved to \u001b[1m/content/datasets\u001b[0m\n", - "\n", " from n params module arguments \n", " 0 -1 1 3520 models.common.Conv [3, 32, 6, 2, 2] \n", " 1 -1 1 18560 models.common.Conv [32, 64, 3, 2] \n", @@ -782,17 +777,17 @@ " 22 [-1, 10] 1 0 models.common.Concat [1] \n", " 23 -1 1 1182720 models.common.C3 [512, 512, 1, False] \n", " 24 [17, 20, 23] 1 229245 models.yolo.Detect [80, [[10, 13, 16, 30, 33, 23], [30, 61, 62, 45, 59, 119], [116, 90, 156, 198, 373, 326]], [128, 256, 512]]\n", - "Model summary: 270 layers, 7235389 parameters, 7235389 gradients, 16.5 GFLOPs\n", + "Model summary: 270 layers, 7235389 parameters, 7235389 gradients\n", "\n", "Transferred 349/349 items from yolov5s.pt\n", + "\u001b[34m\u001b[1mAMP: \u001b[0mchecks passed ✅\n", "Scaled weight_decay = 0.0005\n", "\u001b[34m\u001b[1moptimizer:\u001b[0m SGD with parameter groups 57 weight (no decay), 60 weight, 60 bias\n", "\u001b[34m\u001b[1malbumentations: \u001b[0mversion 1.0.3 required by YOLOv5, but version 0.1.12 is currently installed\n", - "\u001b[34m\u001b[1mtrain: \u001b[0mScanning '/content/datasets/coco128/labels/train2017' images and labels...128 found, 0 missing, 2 empty, 0 corrupt: 100% 128/128 [00:00<00:00, 405.04it/s]\n", - "\u001b[34m\u001b[1mtrain: \u001b[0mNew cache created: /content/datasets/coco128/labels/train2017.cache\n", - "\u001b[34m\u001b[1mtrain: \u001b[0mCaching images (0.1GB ram): 100% 128/128 [00:00<00:00, 977.19it/s]\n", + "\u001b[34m\u001b[1mtrain: \u001b[0mScanning '/content/datasets/coco128/labels/train2017.cache' images and labels... 128 found, 0 missing, 2 empty, 0 corrupt: 100% 128/128 [00:00 Date: Sat, 18 Jun 2022 12:28:56 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- tutorial.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial.ipynb b/tutorial.ipynb index 571c38e5d4eb..664cbc156082 100644 --- a/tutorial.ipynb +++ b/tutorial.ipynb @@ -1112,4 +1112,4 @@ "outputs": [] } ] -} \ No newline at end of file +}