المعلمات الفائقة لمهام رؤية الكمبيوتر باستخدام التعلم الآلي التلقائي
ينطبق على:ملحق التعلم الآلي من Azure CLI v2 (الحالي)Python SDK azure-ai-ml v2 (الحالي)
تعرّف على المعلمات الفائقة المتوفرة خصيصًا لمهام رؤية الكمبيوتر في تجارب التعلم الآلي التلقائي.
مع دعم مهام رؤية الكمبيوتر، يمكنك التحكم في بنية النموذج ومسح المعلمات الفائقة. يتم تمرير بنيات النموذج هذه والمعلمات الفائقة كمساحة معلمة للمسح. في حين أن العديد من المعلمات الفائقة المكشوفة غير محددة للنموذج، ثمة مثيلات تكون فيها المعلمات الفائقة خاصة بالمهمة أو خاصة بالنموذج.
المعلمات الفائقة الخاصة بالنموذج
يلخص هذا الجدول المعلمات الفائقة الخاصة بالبنية yolov5
.
اسم المعلمة | الوصف | افتراضي |
---|---|---|
validation_metric_type |
أسلوب حساب القياس لاستخدامه مع قياسات التحقق من الصحة. يجب أن يكون none أو coco أو voc أو coco_voc . |
voc |
validation_iou_threshold |
حد IOU لمطابقة المربع عند قياسات التحقق من صحة الحوسبة. يجب أن يكون عددًا عشريًا في النطاق [0.1، 1]. |
0.5 |
image_size |
حجم الصورةِ للتدريب والتحقق من الصحة. يجب أن تكون عدداً صحيحاً موجباً. ملاحظة: قد يدخل تشغيل التدريب في CUDA OOM إذا كان الحجم كبيرًا للغاية. |
640 |
model_size |
حجم النموذج. ينبغي أن يكون small أو medium أو large أو extra_large . ملاحظة: قد يدخل تشغيل التدريب في CUDA OOM إذا كان حجم النموذج كبيرًا للغاية. |
medium |
multi_scale |
تمكين صورة متعددة المقاييس من خلال تغيير حجم الصورة بنسبة +/- 50% لابد أن يكون 0 أو 1. ملاحظة: قد يدخل تشغيل التدريب في CUDA OOM في حال لم تكن ذاكرة GPU كافية. |
0 |
box_score_threshold |
خلال الاستدلال، تُرجع المقترحات فقط مع درجة أكبر من box_score_threshold . والنتيجة هي ضرب درجة العنصر واحتمال التصنيف. لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.1 |
nms_iou_threshold |
حد IOU المستخدم خلال الاستدلال في معالجة ما بعد المنع غير الأقصى. لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.5 |
tile_grid_size |
حجم الشبكة المراد استخدامه لتجانب كل صورة. ملاحظة: يجب ألا يكون tile_grid_size خاليًا لتمكين منطق الكشف عن العناصر الصغيرة يجب تمريرها كسلسلة بتنسيق "3x2". مثال: --tile_grid_size '3x2' |
لا افتراضي |
tile_overlap_ratio |
نسبة التداخل بين التجانبات المتجاورة في كل بعد. لابد أن يكون عددًا عشريًا في النطاق [0، 1) |
0.25 |
tile_predictions_nms_threshold |
حد IOU لاستخدامه لأداء المنع غير الأقصى في أثناء دمج التنبؤات من التجانبات والصورة. يستخدم في التحقق من الصحة/ الاستدلال. يجب أن يكون عددًا عشريًا في النطاق [0، 1] |
0.25 |
يُلخص هذا الجدول المعلمات الفائقة الخاصة بـ maskrcnn_*
لتجزئة المثيل خلال الاستدلال.
اسم المعلمة | الوصف | افتراضي |
---|---|---|
mask_pixel_score_threshold |
قطع النقاط لاعتبار بكسل جزءًا من قناع عنصر. | 0.5 |
max_number_of_polygon_points |
الحد الأقصى لعدد أزواج الإحداثيات (س، ص) في المضلع بعد التحويل من قناع. | 100 |
export_as_image |
تصدير الأقنعة كصور. | خطأ |
image_type |
نوع الصورة لتصدير قناع كـ (الخيارات هي jpg، png، bmp). | JPG |
المعلمات الفائقة غير المحددة للنموذج
يصف الجدول التالي المعلمات الفائقة غير المحددة للنموذج.
اسم المعلمة | الوصف | افتراضي |
---|---|---|
number_of_epochs |
عدد فترات التدريب. يجب أن تكون عدداً صحيحاً موجباً. |
15 (باستثناء yolov5 : 30) |
training_batch_size |
حجم دفعة التدريب. يجب أن تكون عدداً صحيحاً موجباً. |
متعدد الفئات/متعدد التسميات: 78 (باستثناء متغيرات vit: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)الكشف عن العناصر: 2 (باستثناء yolov5 : 16) تجزئة المثيل: 2 ملاحظة: الإعدادات الافتراضية هي أكبر حجم دُفعة يمكن استخدامه على ذاكرة GPU 12 غيغابايت. |
validation_batch_size |
حجم دُفعة التحقق من الصحة. يجب أن تكون عدداً صحيحاً موجباً. |
متعدد الفئات/متعدد التسميات: 78 (باستثناء متغيرات vit: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)الكشف عن العناصر: 1 (باستثناء yolov5 : 16) تجزئة المثيل: 1 ملاحظة: الإعدادات الافتراضية هي أكبر حجم دُفعة يمكن استخدامه على ذاكرة GPU 12 غيغابايت. |
gradient_accumulation_step |
يعني تراكم التدرج تشغيل عدد مكون من gradient_accumulation_step دون تحديث أوزان النموذج في أثناء تجميع تدرجات هذه الخطوات، ثم استخدام التدرجات المجمعة لحساب تحديثات الوزن. يجب أن تكون عدداً صحيحاً موجباً. |
1 |
early_stopping |
قم بتمكين منطق الإيقاف المبكر في أثناء التدريب. لابد أن يكون 0 أو 1. |
1 |
early_stopping_patience |
الحد الأدنى لعدد الفترات أو تقييمات التحقق من الصحة مع عدم وجود تحسين قياسي أساسي قبل إيقاف التشغيل. يجب أن تكون عدداً صحيحاً موجباً. |
5 |
early_stopping_delay |
الحد الأدنى لعدد الفترات أو تقييمات التحقق من الصحة التي يجب انتظارها قبل تتبع تحسين القياس الأساسي للإيقاف المبكر. يجب أن تكون عدداً صحيحاً موجباً. |
5 |
learning_rate |
معدل التعلم الأولي. لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
متعدد الفئات: 0.01 (باستثناء متغيرات vit: vits16r224 : 0.0125vitb16r224 : 0.0125vitl16r224 : 0.001) متعدد التسميات: 0.035 (باستثناء متغيرات vit: vits16r224 : 0.025vitb16r224 : 0.025 vitl16r224 : 0.002) الكشف عن العناصر: 0.005 (باستثناء yolov5 : 0.01) تجزئة المثيل: 0.005 |
learning_rate_scheduler |
نوع مُجدول معدل التعلم. لابد أن يكون warmup_cosine أو step . |
warmup_cosine |
step_lr_gamma |
قيمة غاما عندما يكون مُجدول معدل التعلم هو step .لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.5 |
step_lr_step_size |
قيمة حجم الخطوة عندما يكون مُجدول معدل التعلم هو step .يجب أن تكون عدداً صحيحاً موجباً. |
5 |
warmup_cosine_lr_cycles |
قيمة دورة جيب التمام عندما يكون مُجدول معدل التعلم هو warmup_cosine . لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.45 |
warmup_cosine_lr_warmup_epochs |
قيمة فترات التجهيز عندما يكون مُجدول معدل التعلم هو warmup_cosine . يجب أن تكون عدداً صحيحاً موجباً. |
2 |
optimizer |
نوع المُحسِن. لابد أن يكون إما sgd ، أو adam ، أو adamw . |
sgd |
momentum |
قيمة الزخم عندما يكون المُحسِن هو sgd . لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.9 |
weight_decay |
قيمة تدهور الوزن عندما يكون المُحسِن هو sgd أو adam أو adamw . لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
1e-4 |
nesterov |
مكّن nesterov عندما يكون المُحسِن هو sgd . لابد أن يكون 0 أو 1. |
1 |
beta1 |
قيمة beta1 عندما يكون المُحسِن هو adam أو adamw . لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.9 |
beta2 |
قيمة beta2 عندما يكون المُحسِن هو adam أو adamw .لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.999 |
ams_gradient |
مكّن ams_gradient عندما يكون المُحسِن هو adam أو adamw .لابد أن يكون 0 أو 1. |
0 |
evaluation_frequency |
قم بالتكرار لتقييم مجموعة بيانات التحقق من الصحة للحصول على درجات القياس. يجب أن تكون عدداً صحيحاً موجباً. |
1 |
checkpoint_frequency |
قم بالتكرار لتخزين نقاط فحص النموذج. يجب أن تكون عدداً صحيحاً موجباً. |
نقطة تحقق في فترة باستخدام أفضل مقياس أساسي للتحقق من الصحة. |
checkpoint_run_id |
معرّف التشغيل للتجربة التي تحتوي على نقطة تحقق مُدربة مسبقاً للتدريب التزايدي. | لا افتراضي |
layers_to_freeze |
كم عدد الطبقات التي يجب تجميدها للنموذج الخاص بك. على سبيل المثال، تمرير 2 كقيمة لـ seresnext يعني تجميد الطبقة 0 والطبقة 1 بالإشارة إلى معلومات طبقة النموذج المدعومة أدناه. يجب أن تكون عدداً صحيحاً موجباً. - 'resnet' : [('conv1.', 'bn1.'), 'layer1.', 'layer2.', 'layer3.', 'layer4.'] - 'mobilenetv2' : ['features.0.', 'features.1.', 'features.2.', 'features.3.', 'features.4.', 'features.5.', 'features.6.', 'features.7.', 'features.8.', 'features.9.', 'features.10.', 'features.11.', 'features.12.', 'features.13.', 'features.14.', 'features.15.', 'features.16.', 'features.17.', 'features.18.'] - 'seresnext' : ['layer0.', 'layer1.', 'layer2.', 'layer3.', 'layer4.'] * 'vit' : ['patch_embed', 'blocks.0.', 'blocks.1.', 'blocks.2.', 'blocks.3.', 'blocks.4.', 'blocks.5.', 'blocks.6.','blocks.7.', 'blocks.8.', 'blocks.9.', 'blocks.10.', 'blocks.11.'] * 'yolov5_backbone' : ['model.0.', 'model.1.', 'model.2.', 'model.3.', 'model.4.','model.5.', 'model.6.', 'model.7.', 'model.8.', 'model.9.'] - 'resnet_backbone' : ['backbone.body.conv1.', 'backbone.body.layer1.', 'backbone.body.layer2.','backbone.body.layer3.', 'backbone.body.layer4.'] |
لا افتراضي |
معلمات فائقة خاصة بتصنيف الصور (متعددة الفئات ومتعددة التسميات)
يُلخص الجدول التالي المعلمات الفائقة لمهام تصنيف الصور (متعددة الفئات ومتعددة التسميات).
اسم المعلمة | الوصف | افتراضي |
---|---|---|
model_name |
اسم النموذج الذي سيتم استخدامه لمهمة تصنيف الصور في متناول اليد. يجب أن يكون واحدا من mobilenetv2 ، ، resnet18 ، resnet34 resnet50 ، resnet101 ، resnet152 ، resnest50 ، resnest101 ، seresnext ، vits16r224 ، ، . vitl16r224 vitb16r224 |
seresnext |
weighted_loss |
- 0 بدون خسارة مرجحة. - 1 للخسارة المرجحة مع sqrt. (class_weights) - 2 للخسارة المرجحة مع class_weights. - يجب أن يكون 0 أو 1 أو 2. |
0 |
validation_resize_size |
- حجم الصورة الذي يجب تغيير حجمه قبل الاقتصاص لمجموعة بيانات التحقق من الصحة. - يجب أن يكون عددا صحيحا موجبا. ملاحظات: - seresnext لا يأخذ حجم عشوائي. - قد يدخل تشغيل التدريب في CUDA OOM إذا كان الحجم كبيرا جدا. |
256 |
validation_crop_size |
- حجم اقتصاص الصورة الذي يتم إدخاله إلى شبكتك العصبية لمجموعة بيانات التحقق من الصحة. - يجب أن يكون عددا صحيحا موجبا. ملاحظات: - seresnext لا يأخذ حجم عشوائي. - يجب أن يكون لمتغيرات ViT نفس validation_crop_size وtraining_crop_size . - قد يدخل تشغيل التدريب في CUDA OOM إذا كان الحجم كبيرا جدا. |
224 |
training_crop_size |
- حجم اقتصاص الصور الذي يتم إدخاله إلى شبكتك العصبية لتدريب مجموعة البيانات. - يجب أن يكون عددا صحيحا موجبا. ملاحظات: - seresnext لا يأخذ حجم عشوائي. - يجب أن يكون لمتغيرات ViT نفس validation_crop_size وtraining_crop_size . - قد يدخل تشغيل التدريب في CUDA OOM إذا كان الحجم كبيرا جدا. |
224 |
المعلمات الفائقة الخاصة بمهمة الكشف عن العناصر وتجزئة المثيل
المعلمات الفائقة التالية مخصصة لمهام الكشف عن العناصر وتجزئة المثيل.
تحذير
هذه المعلمات غير مدعومة yolov5
مع البنية. راجع قسم المعلمات الفائقة المحددة للنموذج للمعلمات الفائقة المدعومة yolov5
.
اسم المعلمة | الوصف | افتراضي |
---|---|---|
model_name |
اسم النموذج الذي سيتم استخدامه لمهمة تصنيف الصور في متناول اليد. - بالنسبة لمهمة الكشف عن الكائنات، يجب أن تكون واحدة من yolov5 ، ، fasterrcnn_resnet18_fpn ، fasterrcnn_resnet34_fpn ، fasterrcnn_resnet50_fpn ، fasterrcnn_resnet101_fpn ، fasterrcnn_resnet152_fpn . retinanet_resnet50_fpn - بالنسبة لمهمة تجزئة المثيل، يجب أن تكون واحدة من maskrcnn_resnet18_fpn ، ، maskrcnn_resnet34_fpn ، maskrcnn_resnet50_fpn ، maskrcnn_resnet101_fpn maskrcnn_resnet152_fpn |
- لمهمة الكشف عن الكائنات، fasterrcnn_resnet50_fpn - لمهمة تجزئة المثيل، maskrcnn_resnet50_fpn |
validation_metric_type |
أسلوب حساب القياس لاستخدامه مع قياسات التحقق من الصحة. يجب أن يكون none أو coco أو voc أو coco_voc . |
voc |
validation_iou_threshold |
حد IOU لمطابقة المربع عند قياسات التحقق من صحة الحوسبة. يجب أن يكون عددًا عشريًا في النطاق [0.1، 1]. |
0.5 |
min_size |
الحد الأدنى لحجم الصورة التي سيتم تغيير حجمها قبل إضافتها إلى العمود الفقري. يجب أن تكون عدداً صحيحاً موجباً. ملاحظة: قد يدخل تشغيل التدريب في CUDA OOM إذا كان الحجم كبيرًا للغاية. |
600 |
max_size |
الحد الأقصى لحجم الصورة التي سيتم تغيير حجمها قبل إضافتها إلى العمود الفقري. يجب أن تكون عدداً صحيحاً موجباً. ملاحظة: قد يدخل تشغيل التدريب في CUDA OOM إذا كان الحجم كبيرًا للغاية. |
1333 |
box_score_threshold |
خلال الاستدلال، تُرجع المقترحات فقط مع درجة تصنيف أكبر من box_score_threshold . لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.3 |
nms_iou_threshold |
حد IOU (التقاطع فوق الاتحاد) المستخدم في المنع غير الأقصى (NMS) لرأس التنبؤ. يستخدم خلال الاستدلال. لابد أن يكون عددًا عشريًا في النطاق [0، 1]. |
0.5 |
box_detections_per_image |
الحد الأقصى لعدد عمليات الكشف لكل صورة، لجميع الفئات. يجب أن تكون عدداً صحيحاً موجباً. |
100 |
tile_grid_size |
حجم الشبكة المراد استخدامه لتجانب كل صورة. - tile_grid_size يجب ألا يكون None لتمكين منطق الكشف عن الكائنات الصغيرة .- tile_grid_size غير مدعوم لمهام تجزئة المثيل.يجب تمريرها كسلسلة بتنسيق "3x2". مثال: --tile_grid_size '3x2' |
لا افتراضي |
tile_overlap_ratio |
نسبة التداخل بين التجانبات المتجاورة في كل بعد. لابد أن يكون عددًا عشريًا في النطاق [0، 1) |
0.25 |
tile_predictions_nms_threshold |
حد IOU لاستخدامه لأداء المنع غير الأقصى في أثناء دمج التنبؤات من التجانبات والصورة. يستخدم في التحقق من الصحة/ الاستدلال. يجب أن يكون عددًا عشريًا في النطاق [0، 1] |
0.25 |