ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืœืคื ื™ืš ืฉื•ื‘ ื”ืžืฉื™ืžื” ืฉืœ ื–ื™ื”ื•ื™ ื—ืคืฆื™ื. ื”ืขื“ื™ืคื•ืช ื”ื™ื ืžื”ื™ืจื•ืช ื”ืคืขื•ืœื” ืขื ื“ื™ื•ืง ืžืงื•ื‘ืœ. ืืชื” ืœื•ืงื— ืืช ืืจื›ื™ื˜ืงื˜ื•ืจืช YOLOv3 ื•ืžืืžื ืช ืื•ืชื”. ื”ื“ื™ื•ืง (mAp75) ื’ื“ื•ืœ ืž-0.95. ืื‘ืœ ืงืฆื‘ ื”ืจื™ืฆื” ืขื“ื™ื™ืŸ ื ืžื•ืš. ืฉืึฐื˜ื•ึผื™ื•ึนืช.

ื”ื™ื•ื ื ืขืงื•ืฃ ืืช ื”ืงื•ื•ื ื˜ื™ื–ืฆื™ื”. ื•ืžืชื—ืช ืœื’ื–ืจื” ื ืกืชื›ืœ ื“ื’ื ื’ื™ื–ื•ื - ื—ื™ืชื•ืš ื—ืœืงื™ื ืžื™ื•ืชืจื™ื ืฉืœ ื”ืจืฉืช ื›ื“ื™ ืœื”ืื™ืฅ ืืช ื”ื”ืกืงื” ืœืœื ืื•ื‘ื“ืŸ ื“ื™ื•ืง. ื‘ืจื•ืจ ืื™ืคื”, ื›ืžื” ื•ืื™ืš ืœื—ืชื•ืš. ื‘ื•ืื• ืœื”ื‘ื™ืŸ ืื™ืš ืœืขืฉื•ืช ืืช ื–ื” ื‘ืื•ืคืŸ ื™ื“ื ื™ ื•ื”ื™ื›ืŸ ืืชื” ื™ื›ื•ืœ ืœื”ืคื•ืš ืืช ื–ื” ืœืื•ื˜ื•ืžื˜ื™. ื‘ืกื•ืฃ ื™ืฉ ืžืื’ืจ ืขืœ ืงืจืก.

ืžื‘ื•ื

ื‘ืžืงื•ื ืขื‘ื•ื“ืชื™ ื”ืงื•ื“ื, ืžืงืจื•ืกืงื•ืค ื‘ืคืจื, ืจื›ืฉืชื™ ื”ืจื’ืœ ืื—ื“ - ืœื ื˜ืจ ืชืžื™ื“ ืืช ื–ืžืŸ ื”ื‘ื™ืฆื•ืข ืฉืœ ืืœื’ื•ืจื™ืชืžื™ื. ื•ืชืžื™ื“ ื‘ื“ื•ืง ืืช ื–ืžืŸ ื”ืจื™ืฆื” ืฉืœ ื”ืจืฉืช ื‘ืืžืฆืขื•ืช ืžืกื ืŸ ื”ืชืืžื”. ื‘ื“ืจืš ื›ืœืœ ืžืชืงื“ื ื‘ื™ื™ืฆื•ืจ ืœื ืขื•ื‘ืจ ืืช ื”ืคื™ืœื˜ืจ ื”ื–ื”, ืžื” ืฉื”ื•ื‘ื™ืœ ืื•ืชื™ ืœื’ื™ื–ื•ื.

ื’ื™ื–ื•ื ื”ื•ื ื ื•ืฉื ื™ืฉืŸ ืฉื ื“ื•ืŸ ื‘ื• ื”ืจืฆืื•ืช ื‘ืกื˜ื ืคื•ืจื“ ื‘ืฉื ืช 2017. ื”ืจืขื™ื•ืŸ ื”ืžืจื›ื–ื™ ื”ื•ื ืœื”ืงื˜ื™ืŸ ืืช ื’ื•ื“ืœ ื”ืจืฉืช ื”ืžืื•ืžื ืช ืžื‘ืœื™ ืœืื‘ื“ ืืช ื”ื“ื™ื•ืง ืขืœ ื™ื“ื™ ื”ืกืจืช ืฆืžืชื™ื ืฉื•ื ื™ื. ื–ื” ื ืฉืžืข ืžื’ื ื™ื‘, ืื‘ืœ ืื ื™ ื›ืžืขื˜ ื•ืœื ืฉื•ืžืข ืขืœ ื”ืฉื™ืžื•ืฉ ื‘ื•. ื›ื ืจืื”, ืื™ืŸ ืžืกืคื™ืง ื™ื™ืฉื•ืžื™ื, ืื™ืŸ ืžืืžืจื™ื ื‘ืฉืคื” ื”ืจื•ืกื™ืช, ืื• ืฉืคืฉื•ื˜ ื›ื•ืœื ืจื•ืื™ื ื‘ื–ื” ื™ื“ืข ื’ื™ื–ื•ื ื•ืฉื•ืชืงื™ื.
ืื‘ืœ ื‘ื•ืื• ื ืคืจืง ืืช ื–ื”

ื”ืฆืฆื” ืœื‘ื™ื•ืœื•ื’ื™ื”

ืื ื™ ืื•ื”ื‘ ืืช ื–ื” ื›ืฉืœืžื™ื“ื” ืขืžื•ืงื” ืžืกืชื›ืœืช ืขืœ ืจืขื™ื•ื ื•ืช ืฉืžื’ื™ืขื™ื ืžื”ื‘ื™ื•ืœื•ื’ื™ื”. ืืคืฉืจ ืœืกืžื•ืš ืขืœื™ื”ื, ื›ืžื• ื”ืื‘ื•ืœื•ืฆื™ื”, (ื”ืื ื™ื“ืขืช ืฉ-ReLU ื“ื•ืžื” ืžืื•ื“ ืœ ืคื•ื ืงืฆื™ื” ืฉืœ ื”ืคืขืœืช ื ื•ื™ืจื•ื ื™ื ื‘ืžื•ื—?)

ืชื”ืœื™ืš ื’ื™ื–ื•ื ื”ื“ื’ื ืงืจื•ื‘ ื’ื ืœื‘ื™ื•ืœื•ื’ื™ื”. ื ื™ืชืŸ ืœื”ืฉื•ื•ืช ืืช ืชื’ื•ื‘ืช ื”ืจืฉืช ื›ืืŸ ืœืคืœืกื™ื•ืช ืฉืœ ื”ืžื•ื—. ื™ืฉ ื›ืžื” ื“ื•ื’ืžืื•ืช ืžืขื ื™ื™ื ื•ืช ื‘ืกืคืจ. ื ื•ืจืžืŸ ื“ื•ื“ื’':

  1. ื”ืžื•ื— ืฉืœ ืื™ืฉื” ืฉื ื•ืœื“ื” ืขื ื—ืฆื™ ืื—ื“ ื‘ืœื‘ื“ ืชื›ื ืช ืืช ืขืฆืžื• ืžื—ื“ืฉ ืœื‘ืฆืข ืืช ื”ืคื•ื ืงืฆื™ื•ืช ืฉืœ ื”ื—ืฆื™ ื”ื—ืกืจ.
  2. ื”ื‘ื—ื•ืจ ื™ืจื” ืืช ื”ื—ืœืง ื‘ืžื•ื—ื• ื”ืื—ืจืื™ ืขืœ ื”ืจืื™ื™ื”. ืขื ื”ื–ืžืŸ, ื—ืœืงื™ื ืื—ืจื™ื ื‘ืžื•ื— ื”ืฉืชืœื˜ื• ืขืœ ื”ืคื•ื ืงืฆื™ื•ืช ื”ืœืœื•. (ืื ื—ื ื• ืœื ืžื ืกื™ื ืœื—ื–ื•ืจ)

ื›ืžื• ื›ืŸ, ืืชื” ื™ื›ื•ืœ ืœื—ืชื•ืš ื›ืžื” ืžื”ืคื™ืชื•ืœื™ื ื”ื—ืœืฉื™ื ืžื”ื“ื’ื ืฉืœืš. ื›ืžื•ืฆื ืื—ืจื•ืŸ, ื”ื—ื‘ื™ืœื•ืช ื”ื ื•ืชืจื•ืช ื™ืขื–ืจื• ืœื”ื—ืœื™ืฃ ืืช ื”ื—ืชื•ื›ื™ื.

ื”ืื ืืชื” ืื•ื”ื‘ Transfer Learning ืื• ืฉืืชื” ืœื•ืžื“ ืžืืคืก?

ืืคืฉืจื•ืช ืžืกืคืจ ืื—ืช. ืืชื” ืžืฉืชืžืฉ ื‘-Transfer Learning ื‘-Yolov3. ืจืฉืชื™ืช, ืžืกื›ืช-RCNN ืื• U-Net. ืื‘ืœ ืจื•ื‘ ื”ื–ืžืŸ ืื ื—ื ื• ืœื ืฆืจื™ื›ื™ื ืœื–ื”ื•ืช 80 ืžื—ืœืงื•ืช ืื•ื‘ื™ื™ืงื˜ ื›ืžื• ื‘-COCO. ื‘ืชืจื’ื•ืœ ืฉืœื™ ื”ื›ืœ ืžื•ื’ื‘ืœ ืœื›ื™ืชื•ืช ื'-ื‘'. ืืคืฉืจ ืœื”ื ื™ื— ืฉื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ืฉืœ 1 ืžื—ืœืงื•ืช ืžื™ื•ืชืจืช ื›ืืŸ. ื–ื” ืžืฆื‘ื™ืข ืขืœ ื›ืš ืฉืฆืจื™ืš ืœื”ืงื˜ื™ืŸ ืืช ื”ืืจื›ื™ื˜ืงื˜ื•ืจื”. ื™ืชืจ ืขืœ ื›ืŸ, ืื ื™ ืจื•ืฆื” ืœืขืฉื•ืช ื–ืืช ืžื‘ืœื™ ืœืื‘ื“ ืืช ื”ืžืฉืงื•ืœื•ืช ื”ืงื™ื™ืžื•ืช ื”ืžืชืืžื ื•ืช ืžืจืืฉ.

ืืคืฉืจื•ืช ืžืกืคืจ ืฉืชื™ื™ื. ืื•ืœื™ ื™ืฉ ืœืš ื”ืจื‘ื” ื ืชื•ื ื™ื ื•ืžืฉืื‘ื™ ืžื—ืฉื•ื‘, ืื• ืฉืืชื” ืคืฉื•ื˜ ืฆืจื™ืš ืืจื›ื™ื˜ืงื˜ื•ืจื” ืกื•ืคืจ ืžื•ืชืืžืช ืื™ืฉื™ืช. ืœื ืžืฉื ื”. ืื‘ืœ ืืชื” ืœื•ืžื“ ืืช ื”ืจืฉืช ืžืืคืก. ื”ื ื•ื”ืœ ื”ืžืงื•ื‘ืœ ื”ื•ื ืœื”ืกืชื›ืœ ืขืœ ืžื‘ื ื” ื”ื ืชื•ื ื™ื, ืœื‘ื—ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจื” ื‘ืขืœืช ืขื•ืฆืžื” ืžื•ื’ื–ืžืช ื•ืœื“ื—ื•ืฃ ื ื•ืฉืจื™ื ืžื”ื”ื›ืฉืจื” ืžื—ื“ืฉ. ืจืื™ืชื™ 0.6 ื ื•ืฉืจื™ื, ืงืืจืœ.

ื‘ืฉื ื™ ื”ืžืงืจื™ื ื ื™ืชืŸ ืœืฆืžืฆื ืืช ื”ืจืฉืช. ืžืœื ืžื•ื˜ื™ื‘ืฆื™ื”. ืขื›ืฉื™ื• ื‘ื•ื ื ืœืš ืœื”ื‘ื™ืŸ ืื™ื–ื” ืกื•ื’ ืฉืœ ื’ื™ื–ื•ื ื‘ืจื™ืช ืžื™ืœื”

ืืœื’ื•ืจื™ืชื ื›ืœืœื™

ื”ื—ืœื˜ื ื• ืฉื ื•ื›ืœ ืœื”ืกื™ืจ ืืช ื”ื—ื‘ื™ืœื•ืช. ื–ื” ื ืจืื” ื“ื™ ืคืฉื•ื˜:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ื”ืกืจืช ื›ืœ ืคื™ืชื•ืœ ืžืœื—ื™ืฆื” ืืช ื”ืจืฉืช, ืžื” ืฉืžื•ื‘ื™ืœ ื‘ื“ืจืš ื›ืœืœ ืœืขืœื™ื™ื” ืžืกื•ื™ืžืช ื‘ืฉื’ื™ืื•ืช. ืžืฆื“ ืื—ื“, ืขืœื™ื™ื” ื–ื• ื‘ืฉื’ื™ืื” ื”ื™ื ืื™ื ื“ื™ืงื˜ื•ืจ ืœืื•ืคืŸ ืฉื‘ื• ืื ื• ืžืกื™ืจื™ื ืคื™ืชื•ืœื™ื ื‘ืฆื•ืจื” ื ื›ื•ื ื” (ืœื“ื•ื’ืžื”, ืขืœื™ื™ื” ื’ื“ื•ืœื” ืžืขื™ื“ื” ืขืœ ื›ืš ืฉืื ื• ืขื•ืฉื™ื ืžืฉื”ื• ืœื ื‘ืกื“ืจ). ืื‘ืœ ืขืœื™ื™ื” ืงื˜ื ื” ื”ื™ื ื“ื™ ืžืงื•ื‘ืœืช ื•ืœืขืชื™ื ืงืจื•ื‘ื•ืช ื”ื™ื ื‘ื•ื˜ืœื” ืขืœ ื™ื“ื™ ืื™ืžื•ืŸ ื ื•ืกืฃ ืงืœ ืœืื—ืจ ืžื›ืŸ ืขื LR ืงื˜ืŸ. ื”ื•ืกืฃ ืฉืœื‘ ืื™ืžื•ืŸ ื ื•ืกืฃ:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืขื›ืฉื™ื• ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื”ื‘ื™ืŸ ืžืชื™ ืื ื—ื ื• ืจื•ืฆื™ื ืœื”ืคืกื™ืง ืืช ืœื•ืœืืช ื”ืœืžื™ื“ื”<->ื’ื™ื–ื•ื ืฉืœื ื•. ืขืฉื•ื™ื•ืช ืœื”ื™ื•ืช ื›ืืŸ ืืคืฉืจื•ื™ื•ืช ืืงื–ื•ื˜ื™ื•ืช ื›ืืฉืจ ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื”ืงื˜ื™ืŸ ืืช ื”ืจืฉืช ืœื’ื•ื“ืœ ื•ืžื”ื™ืจื•ืช ืžืกื•ื™ืžื™ื (ืœืžืฉืœ, ืขื‘ื•ืจ ืžื›ืฉื™ืจื™ื ื ื™ื™ื“ื™ื). ืขื ื–ืืช, ื”ืืคืฉืจื•ืช ื”ื ืคื•ืฆื” ื‘ื™ื•ืชืจ ื”ื™ื ืœื”ืžืฉื™ืš ื‘ืžื—ื–ื•ืจ ืขื“ ืฉื”ืฉื’ื™ืื” ืชื”ื™ื” ื’ื‘ื•ื”ื” ืžื”ืžืงื•ื‘ืœ. ื”ื•ืกืฃ ืชื ืื™:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืื– ื”ืืœื’ื•ืจื™ืชื ืžืชื‘ืจืจ. ื ื•ืชืจ ืœื”ื‘ื™ืŸ ื›ื™ืฆื“ ืœืงื‘ื•ืข ืืช ื”ืคื™ืชื•ืœื™ื ืฉื ืžื—ืงื•.

ื—ืคืฉ ื—ื‘ื™ืœื•ืช ืฉื ืžื—ืงื•

ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื”ืกื™ืจ ื›ืžื” ืคื™ืชื•ืœื™ื. ืœืžื”ืจ ืงื“ื™ืžื” ื•"ืœื™ืจื•ืช" ื‘ื›ืœ ืื—ื“ ื–ื” ืจืขื™ื•ืŸ ืจืข, ืœืžืจื•ืช ืฉื–ื” ื™ืขื‘ื•ื“. ืื‘ืœ ืžื›ื™ื•ื•ืŸ ืฉื™ืฉ ืœืš ืจืืฉ, ืืชื” ื™ื›ื•ืœ ืœื—ืฉื•ื‘ ื•ืœื ืกื•ืช ืœื‘ื—ื•ืจ ืคื™ืชื•ืœื™ื "ื—ืœืฉื™ื" ืœื”ืกืจื”. ื™ืฉื ืŸ ืžืกืคืจ ืืคืฉืจื•ื™ื•ืช:

  1. ื”ืงื˜ื ื” ื‘ื™ื•ืชืจ ืฉืœ ืžื™ื“ื” L1 ืื• ื’ื™ื–ื•ื_ืžื’ื•ื“ืœ ื ืžื•ืš. ื”ืจืขื™ื•ืŸ ืฉืคื™ืชื•ืœื™ื ืขื ืžืฉืงืœื™ื ืงื˜ื ื™ื ืชื•ืจืžื™ื ืžืขื˜ ืœื”ื—ืœื˜ื” ื”ืกื•ืคื™ืช
  2. ืžื“ื“ L1 ื”ืงื˜ืŸ ื‘ื™ื•ืชืจ ืชื•ืš ื”ืชื—ืฉื‘ื•ืช ื‘ืžืžื•ืฆืข ื•ืกื˜ื™ื™ืช ืชืงืŸ. ืื ื• ืžืฉืœื™ืžื™ื ืขื ื”ืขืจื›ื” ืฉืœ ืื•ืคื™ ื”ื—ืœื•ืงื”.
  3. ืžื™ืกื•ืš ืคื™ืชื•ืœื™ื ื•ืื™ ื”ื›ืœืœื” ืฉืœ ืืœื• ื”ืคื—ื•ืช ืžืฉืคื™ืขื™ื ืขืœ ื”ื“ื™ื•ืง ื”ืกื•ืคื™. ืงื‘ื™ืขื” ืžื“ื•ื™ืงืช ื™ื•ืชืจ ืฉืœ ืคื™ืชื•ืœื™ื ืœื ืžืฉืžืขื•ืชื™ื™ื, ืื‘ืœ ืžืื•ื“ ื’ื•ื–ืœืช ื–ืžืŸ ื•ืžืฉืื‘ื™ื.
  4. ืื—ืจื™ื

ืœื›ืœ ืื—ืช ืžื”ืืคืฉืจื•ื™ื•ืช ื™ืฉ ื–ื›ื•ืช ืœื—ื™ื™ื ื•ืชื›ื•ื ื•ืช ื™ื™ืฉื•ื ืžืฉืœื”. ื›ืืŸ ืื ื• ืจื•ืื™ื ืืช ื”ืืคืฉืจื•ืช ืขื ืžื“ื“ L1 ื”ืงื˜ืŸ ื‘ื™ื•ืชืจ

ืชื”ืœื™ืš ื™ื“ื ื™ ืขื‘ื•ืจ YOLOv3

ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ื”ืžืงื•ืจื™ืช ืžื›ื™ืœื” ื‘ืœื•ืงื™ื ืฉื™ื•ืจื™ื™ื. ืื‘ืœ ืœื ืžืฉื ื” ื›ืžื” ื”ื ืžื’ื ื™ื‘ื™ื ืขื‘ื•ืจ ืจืฉืชื•ืช ืขืžื•ืงื•ืช, ื”ื ื™ืคืจื™ืขื• ืœื ื• ื‘ืžืงืฆืช. ื”ืงื•ืฉื™ ื”ื•ื ืฉืœื ื ื™ืชืŸ ืœืžื—ื•ืง ื”ืชืืžื•ืช ืขื ืื™ื ื“ืงืกื™ื ืฉื•ื ื™ื ื‘ืฉื›ื‘ื•ืช ืืœื•:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืœื›ืŸ, ื‘ื•ืื• ื ื‘ื—ืจ ืฉื›ื‘ื•ืช ืฉืžื”ืŸ ื ื•ื›ืœ ืœืžื—ื•ืง ื”ืชืืžื” ื—ื•ืคืฉื™ืช:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืขื›ืฉื™ื• ื‘ื•ืื• ื ื‘ื ื” ืžื—ื–ื•ืจ ืขื‘ื•ื“ื”:

  1. ื”ืขืœืืช ื”ืคืขืœื•ืช
  2. ืœื”ื‘ื™ืŸ ื›ืžื” ืœื—ืชื•ืš
  3. ืชืคืกื™ืง
  4. ืœื™ืžื•ื“ 10 ืขื™ื“ื ื™ื ืขื LR=1e-4
  5. ื‘ื“ื™ืงื”

ืคืจื™ืงืช ืคื™ืชื•ืœื™ื ืฉื™ืžื•ืฉื™ืช ื›ื“ื™ ืœื”ืขืจื™ืš ื›ืžื” ื—ืœืง ื ื•ื›ืœ ืœื”ืกื™ืจ ื‘ืฉืœื‘ ืžืกื•ื™ื. ื“ื•ื’ืžืื•ืช ืœืคืจื™ืงื”:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืื ื• ืจื•ืื™ื ืฉื›ืžืขื˜ ื‘ื›ืœ ืžืงื•ื ืœ-5% ืžื”ืคื™ืชื•ืœื™ื ื™ืฉ ื ื•ืจืžื” L1 ื ืžื•ื›ื” ืžืื•ื“ ื•ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื”ืกื™ืจ ืื•ืชื. ื‘ื›ืœ ืฉืœื‘ ื—ื–ืจื” ืขืœ ื”ืคืจื™ืงื” ื”ื–ื• ื•ื ืขืฉืชื” ื”ืขืจื›ื” ืื™ืœื• ืฉื›ื‘ื•ืช ื•ื›ืžื” ื ื™ืชืŸ ืœื—ืชื•ืš.

ื›ืœ ื”ืชื”ืœื™ืš ื”ื•ืฉืœื ื‘-4 ืฉืœื‘ื™ื (ืžืกืคืจื™ื ื›ืืŸ ื•ื‘ื›ืœ ืžืงื•ื ืขื‘ื•ืจ RTX 2060 Super):

ืฉืœื‘ mAp75 ืžืกืคืจ ืคืจืžื˜ืจื™ื, ืžื™ืœื™ื•ืŸ ื’ื•ื“ืœ ืจืฉืช, mb ืžื”ื”ืชื—ืœื”, % ื–ืžืŸ ืจื™ืฆื”, ื’ื‘ืจืช ืžืฆื‘ ื‘ืจื™ืช ืžื™ืœื”
0 0.9656 60 241 100 180 -
1 0.9622 55 218 91 175 5% ืžื›ื•ืœื
2 0.9625 50 197 83 168 5% ืžื›ื•ืœื
3 0.9633 39 155 64 155 15% ืขื‘ื•ืจ ืฉื›ื‘ื•ืช ืขื 400+ ืคื™ืชื•ืœื™ื
4 0.9555 31 124 51 146 10% ืขื‘ื•ืจ ืฉื›ื‘ื•ืช ืขื 100+ ืคื™ืชื•ืœื™ื

ื”ืฉืคืขื” ื—ื™ื•ื‘ื™ืช ืื—ืช ื ื•ืกืคื” ืœืฉืœื‘ 2 - ื”ืชืืžื” ืฉืœ ื’ื•ื“ืœ ืืฆื•ื•ื” 4 ืœื–ื™ื›ืจื•ืŸ, ืžื” ืฉื”ืื™ืฅ ืžืื•ื“ ืืช ืชื”ืœื™ืš ื”ื”ื›ืฉืจื” ื”ื ื•ืกืคืช.
ื‘ืฉืœื‘ 4, ื”ืชื”ืœื™ืš ื”ื•ืคืกืง ื‘ื’ืœืœ ืืคื™ืœื• ื”ื›ืฉืจื” ื ื•ืกืคืช ืืจื•ื›ืช ื˜ื•ื•ื— ืœื ื”ืขืœืชื” ืืช mAp75 ืœืขืจื›ื™ื ื™ืฉื ื™ื.
ื›ืชื•ืฆืื” ืžื›ืš, ื”ืฆืœื—ื ื• ืœื”ืื™ืฅ ืืช ื”ื”ืกืงื” ืขืœ ื™ื“ื™ 15%, ื”ืงื˜ื™ื ื• ืืช ื”ื’ื•ื“ืœ ื‘ 35% ื•ืœื ืœื”ืคืกื™ื“ ื‘ื“ื™ื•ืง.

ืื•ื˜ื•ืžืฆื™ื” ืœืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ืคืฉื•ื˜ื•ืช ื™ื•ืชืจ

ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ืจืฉืช ืคืฉื•ื˜ื•ืช ื™ื•ืชืจ (ืœืœื ื”ื•ืกืคื” ืžื•ืชื ื™ืช, ืฉืจืฉืจืช ื‘ืœื•ืงื™ื), ื ื™ืชืŸ ื‘ื”ื—ืœื˜ ืœื”ืชืžืงื“ ื‘ืขื™ื‘ื•ื“ ื›ืœ ื”ืฉื›ื‘ื•ืช ื”ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช ื•ืœื”ืคื•ืš ืืช ืชื”ืœื™ืš ื—ื™ืชื•ืš ื”ืคื™ืชื•ืœื™ื ืœืื•ื˜ื•ืžื˜ื™.

ื™ื™ืฉืžืชื™ ืืช ื”ืืคืฉืจื•ืช ื”ื–ื• ื›ืืŸ.
ื–ื” ืคืฉื•ื˜: ืืชื” ืฆืจื™ืš ืจืง ืคื•ื ืงืฆื™ื™ืช ืื•ื‘ื“ืŸ, ืžื™ื™ืขืœ ื•ืžื—ื•ืœืœื™ ืืฆื•ื•ื”:

import pruning
from keras.optimizers import Adam
from keras.utils import Sequence

train_batch_generator = BatchGenerator...
score_batch_generator = BatchGenerator...

opt = Adam(lr=1e-4)
pruner = pruning.Pruner("config.json", "categorical_crossentropy", opt)

pruner.prune(train_batch, valid_batch)

ื‘ืžื™ื“ืช ื”ืฆื•ืจืš, ืชื•ื›ืœ ืœืฉื ื•ืช ืืช ืคืจืžื˜ืจื™ ื”ืชืฆื•ืจื”:

{
    "input_model_path": "model.h5",
    "output_model_path": "model_pruned.h5",
    "finetuning_epochs": 10, # the number of epochs for train between pruning steps
    "stop_loss": 0.1, # loss for stopping process
    "pruning_percent_step": 0.05, # part of convs for delete on every pruning step
    "pruning_standart_deviation_part": 0.2 # shift for limit pruning part
}

ื‘ื ื•ืกืฃ, ืžื™ื•ืฉืžืช ืžื’ื‘ืœื” ื”ืžื‘ื•ืกืกืช ืขืœ ืกื˜ื™ื™ืช ื”ืชืงืŸ. ื”ืžื˜ืจื” ื”ื™ื ืœื”ื’ื‘ื™ืœ ืืช ื”ื—ืœืง ืฉื”ื•ืกืจ, ืœืžืขื˜ ืคื™ืชื•ืœื™ื ืขื ืžื“ื“ื™ L1 "ืžืกืคื™ืงื™ื" ื›ื‘ืจ:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืœืคื™ื›ืš, ืื ื• ืžืืคืฉืจื™ื ืœืš ืœื”ืกื™ืจ ืจืง ืคื™ืชื•ืœื™ื ื—ืœืฉื™ื ืžื”ืชืคืœื’ื•ืช ื”ื“ื•ืžื•ืช ืœื–ื• ื”ื™ืžื ื™ืช ื•ืœื ืœื”ืฉืคื™ืข ืขืœ ื”ื”ืกืจื” ืžื”ื”ืชืคืœื’ื•ืช ื”ื“ื•ืžื•ืช ืœืฉืžืืœื™ืช:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ื›ืืฉืจ ื”ื”ืชืคืœื’ื•ืช ืžืชืงืจื‘ืช ืœื ื•ืจืžืœื™ืช, ื ื™ืชืŸ ืœื‘ื—ื•ืจ ืืช ืžืงื“ื ื”-pruning_standart_deviation_part ืžืชื•ืš:

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื
ืื ื™ ืžืžืœื™ืฅ ืขืœ ื”ื ื—ื” ืฉืœ 2 ืกื™ื’ืžื. ืื• ืฉืืชื” ื™ื›ื•ืœ ืœื”ืชืขืœื ืžืชื›ื•ื ื” ื–ื•, ื•ืœื”ืฉืื™ืจ ืืช ื”ืขืจืš < 1.0.

ื”ืคืœื˜ ื”ื•ื ื’ืจืฃ ืฉืœ ื’ื•ื“ืœ ืจืฉืช, ืื•ื‘ื“ืŸ ื•ื–ืžืŸ ืจื™ืฆื” ืฉืœ ื”ืจืฉืช ืขื‘ื•ืจ ื›ืœ ื”ื‘ื“ื™ืงื”, ืžื ื•ืจืžืœ ืœ-1.0. ืœื“ื•ื’ืžื”, ื›ืืŸ ื’ื•ื“ืœ ื”ืจืฉืช ื”ืฆื˜ืžืฆื ื›ืžืขื˜ ืคื™ 2 ืœืœื ืื•ื‘ื“ืŸ ืื™ื›ื•ืช (ืจืฉืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ืช ืงื˜ื ื” ืขื ืžืฉืงืœื™ื ืฉืœ 100 ืืœืฃ):

ื˜ื›ื ื™ืงืช ื’'ื“ื™ ืœืฆืžืฆื•ื ืจืฉืชื•ืช ืงื•ื ื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช - ื’ื™ื–ื•ื

ืžื”ื™ืจื•ืช ื”ืจื™ืฆื” ื ืชื•ื ื” ืœืชื ื•ื“ื•ืช ืจื’ื™ืœื•ืช ื•ื ืฉืืจืช ื›ืžืขื˜ ืœืœื ืฉื™ื ื•ื™. ื™ืฉ ืœื–ื” ื”ืกื‘ืจ:

  1. ืžืกืคืจ ื”ืคื™ืชื•ืœื™ื ืžืฉืชื ื” ืžื ื•ื— (32, 64, 128) ืœืœื ื”ื ื•ื— ื‘ื™ื•ืชืจ ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ ืžืกืš - 27, 51 ื•ื›ื•'. ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉืื ื™ ื˜ื•ืขื” ื›ืืŸ, ืื‘ืœ ืกื‘ื™ืจ ืœื”ื ื™ื— ืฉื™ืฉ ืœื–ื” ื”ืฉืคืขื”.
  2. ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ืื™ื ื” ืจื—ื‘ื”, ืืœื ืขืงื‘ื™ืช. ืขืœ ื™ื“ื™ ื”ืงื˜ื ืช ื”ืจื•ื—ื‘, ืื™ื ื ื• ืžืฉืคื™ืขื™ื ืขืœ ื”ืขื•ืžืง. ืœืคื™ื›ืš, ืื ื• ืžืคื—ื™ืชื™ื ืืช ื”ืขื•ืžืก, ืืš ืœื ืžืฉื ื™ื ืืช ื”ืžื”ื™ืจื•ืช.

ืœื›ืŸ, ื”ืฉื™ืคื•ืจ ื”ืชื‘ื˜ื ื‘ื”ืคื—ืชืช ืขื•ืžืก ื”-CUDA ื‘ืžื”ืœืš ื”ืจื™ืฆื” ื‘-20-30%, ืืš ืœื ื‘ื”ืคื—ืชืช ื–ืžืŸ ื”ืจื™ืฆื”.

ืชื•ืฆืื•ืช ืฉืœ

ื‘ื•ืื• ื ื”ืจื”ืจ. ืฉืงืœื ื• 2 ืืคืฉืจื•ื™ื•ืช ืœื’ื™ื–ื•ื - ืขื‘ื•ืจ YOLOv3 (ื›ืฉืฆืจื™ืš ืœืขื‘ื•ื“ ืขื ื”ื™ื“ื™ื™ื) ื•ืœืจืฉืชื•ืช ืขื ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ืคืฉื•ื˜ื•ืช ื™ื•ืชืจ. ื ื™ืชืŸ ืœืจืื•ืช ืฉื‘ืฉื ื™ ื”ืžืงืจื™ื ื ื™ืชืŸ ืœื”ืฉื™ื’ ื”ืงื˜ื ืช ื’ื•ื“ืœ ืจืฉืช ื•ื”ืืฆื” ืœืœื ืื•ื‘ื“ืŸ ื“ื™ื•ืง. ืชื•ืฆืื•ืช:

  • ื”ืงื˜ื ืช ื”ื’ื•ื“ืœ
  • ืจื™ืฆืช ื”ืืฆื”
  • ื”ืคื—ืชืช ืขื•ืžืก CUDA
  • ื›ืชื•ืฆืื” ืžื›ืš, ื™ื“ื™ื“ื•ืชื™ื•ืช ืœืกื‘ื™ื‘ื” (ืื ื—ื ื• ืžื™ื™ืขืœื™ื ืืช ื”ืฉื™ืžื•ืฉ ื”ืขืชื™ื“ื™ ื‘ืžืฉืื‘ื™ ืžื—ืฉื•ื‘. ืื™ืคืฉื”ื• ืื—ื“ ืฉืžื— ื’ืจื˜ื” ืชื•ื ื‘ืจื’)

ื ืกืคื—

  • ืœืื—ืจ ืฉืœื‘ ื”ื’ื™ื–ื•ื, ื ื™ืชืŸ ืœื”ื•ืกื™ืฃ ืงื•ื•ื ื˜ื™ื–ืฆื™ื” (ืœื“ื•ื’ืžื”, ืขื TensorRT)
  • Tensorflow ืžืกืคืง ื™ื›ื•ืœื•ืช ืขื‘ื•ืจ ื’ื™ื–ื•ื_ืžื“ืจื’ื” ื ืžื•ื›ื”. ืขื•ื‘ื“.
  • ืžืื’ืจ ืื ื™ ืจื•ืฆื” ืœื”ืชืคืชื— ื•ืืฉืžื— ืœืขื–ื•ืจ

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”