ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

ΠžΡ‚Π½ΠΎΠ²ΠΎ имаш Π·Π°Π΄Π°Ρ‡Π° Π·Π° дСтСкция Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ. ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ β€” скорост Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ»ΠΈΠ²Π° точност. Π’Π·Π΅ΠΌΠ°Ρˆ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° YOLOv3 ΠΈ Π΄ΠΎΠΎΠ±ΡƒΡ‡Π°Π²Π°Ρˆ. Вочността (mAp75) Π΅ Π½Π°Π΄ 0.95. Но скоростта Π½Π° изпълнСниС всС ΠΎΡ‰Π΅ Π΅ ниска. Π§Π΅Ρ€Ρ‚.

ДнСс Ρ‰Π΅ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈΠΌ квантизацията. А ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚ Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Model Pruning β€” отрязванС Π½Π° излишни части ΠΎΡ‚ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, Π·Π° Π΄Π° сС ускори Inference Π±Π΅Π· Π·Π°Π³ΡƒΠ±Π° Π½Π° точност. НаглСдно β€” ΠΎΡ‚ΠΊΡŠΠ΄Π΅, ΠΊΠΎΠ»ΠΊΠΎ ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Ρ€Π΅ΠΆΠ΅. Π©Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ Ρ€ΡŠΡ‡Π½ΠΎ ΠΈ къдС ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅. Π’ края β€” Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° keras.

Π’ΡŠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅

На ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π°Ρ‚Π° ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π° Π² пСрмския Macroscop, ΠΏΡ€ΠΈΠ΄ΠΎΠ±ΠΈΡ… Π½Π°Π²ΠΈΠΊΠ° β€” Π²ΠΈΠ½Π°Π³ΠΈ Π΄Π° слСдя Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΡ‚Π΅. А Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° ΠΌΡ€Π΅ΠΆΠΈΡ‚Π΅ Π²ΠΈΠ½Π°Π³ΠΈ провСрявам Ρ‡Ρ€Π΅Π· Ρ„ΠΈΠ»Ρ‚ΡŠΡ€ Π·Π° адСкватност. ОбикновСно state-of-the-art Π² продукцията Π½Π΅ ΠΌΠΈΠ½Π°Π²Π°Ρ‚ Ρ‚ΠΎΠ·ΠΈ Ρ„ΠΈΠ»Ρ‚ΡŠΡ€, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠ΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Pruning.

Pruning β€” стара Ρ‚Π΅ΠΌΠ°, Π·Π° която Π³ΠΎΠ²ΠΎΡ€ΠΈΡ…Π° Π² стСнфордскитС Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π· 2017 Π³ΠΎΠ΄ΠΈΠ½Π°. ΠžΡΠ½ΠΎΠ²Π½Π°Ρ‚Π° идСя β€” намаляванС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΎΠ±ΡƒΡ‡Π΅Π½Π°Ρ‚Π° ΠΌΡ€Π΅ΠΆΠ° Π±Π΅Π· Π·Π°Π³ΡƒΠ±Π° Π½Π° точност Ρ‡Ρ€Π΅Π· ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ възли. Π—Π²ΡƒΡ‡ΠΈ страхотно, Π½ΠΎ рядко Ρ‡ΡƒΠ²Π°ΠΌ Π·Π° Π½Π΅ΠΉΠ½ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ВСроятно Π½Π΅ достигат ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, няма статии Π½Π° Π±ΡŠΠ»Π³Π°Ρ€ΡΠΊΠΈ ΠΈΠ»ΠΈ просто всички считат pruning Π·Π° Π½ΠΎΡƒ-Ρ…Π°Ρƒ ΠΈ ΠΌΡŠΠ»Ρ‡Π°Ρ‚.
Но Ρ…Π°ΠΉΠ΄Π΅ Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅

ПоглСд Π² биологията

ΠžΠ±ΠΈΡ‡Π°ΠΌ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π² Π΄ΡŠΠ»Π±ΠΎΠΊΠΎΡ‚ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π°Π²Π»ΠΈΠ·Π°Ρ‚ ΠΈΠ΄Π΅ΠΈ, ΠΈΠ΄Π²Π°Ρ‰ΠΈ ΠΎΡ‚ биологията. Им, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π½Π° Π΅Π²ΠΎΠ»ΡŽΡ†ΠΈΡΡ‚Π°, ΠΌΠΎΠΆΠ΅ Π΄Π° сС вярва (Π° знаСшС Π»ΠΈ, Ρ‡Π΅ ReLU Π΅ доста ΠΏΠΎΠ΄ΠΎΠ±Π½Π° Π½Π° функцията Π·Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π½Π΅Π²Ρ€ΠΎΠ½ΠΈΡ‚Π΅ Π² мозъка??)

ΠŸΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° Model Pruning ΡΡŠΡ‰ΠΎ Π΅ близък Π΄ΠΎ биологията. РСакцията Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Ρ‚ΡƒΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° сС сравни с пластичността Π½Π° мозъка. Има няколко интСрСсни ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π² ΠΊΠ½ΠΈΠ³Π°Ρ‚Π° Норман Π”ΠΎΠΉΠ΄ΠΆΠ°:

  1. ΠœΠΎΠ·ΡŠΠΊΡŠΡ‚ Π½Π° ΠΆΠ΅Π½Π°, която Π΅ ΠΈΠΌΠ°Π»Π° ΠΎΡ‚ Ρ€Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ си само Π΅Π΄Π½Π° ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°, Π΅ ΠΏΡ€Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π» сам сСбС си Π΄Π° изпълнява Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π½Π° липсващата ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°.
  2. ΠœΠΎΠΌΡ‡Π΅Ρ‚ΠΎ Π΅ отстранило част ΠΎΡ‚ мозъка си, отговаряща Π·Π° Π·Ρ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ. Π‘ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ части Π½Π° мозъка ΠΏΠΎΠ΅Π»ΠΈ Ρ‚Π΅Π·ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. (Π½Π΅ сС ΠΎΠΏΠΈΡ‚Π²Π°ΠΌΠ΅ Π΄Π° Π³ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΠΌ)

Π’Π°ΠΊΠ° ΠΈ ΠΎΡ‚ Π²Π°ΡˆΠ°Ρ‚Π° ΠΌΠΎΠ΄Π΅Π» ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Ρ€Π΅ΠΆΠ΅ част ΠΎΡ‚ слабитС ΡΠ²ΡŠΡ€Π·Π²Π°Π½ΠΈΡ. Π’ ΠΊΡ€Π°Π΅Π½ случай, останалитС ΡΠ²ΡŠΡ€Π·Π²Π°Π½ΠΈΡ Ρ‰Π΅ ΠΏΠΎΠΌΠΎΠ³Π½Π°Ρ‚ Π΄Π° замСнят изрязанитС.

ΠžΠ±ΠΈΡ‡Π°Ρˆ Transfer Learning ΠΈΠ»ΠΈ ΡƒΡ‡ΠΈΡˆ ΠΎΡ‚ Π½ΡƒΠ»Π°?

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ Π΅Π΄Π½ΠΎ. Използваш Transfer Learning с Yolov3, Retina, Mask-RCNN ΠΈΠ»ΠΈ U-Net. Но ΠΏΠΎ-чСсто Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° Ρ€Π°Π·ΠΏΠΎΠ·Π½Π°Π²Π°ΠΌΠ΅ 80 класа ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ ΠΏΡ€ΠΈ COCO. Π’ моята ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° всичко Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ Π΄ΠΎ 1-2 класа. МоТС Π΄Π° сС ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈ, Ρ‡Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Π·Π° 80 класа Ρ‚ΡƒΠΊ Π΅ излишна. Π˜Π·ΠΏΠ»ΡƒΠ²Π° ΠΌΠΈΡΡŠΠ»Ρ‚Π°, Ρ‡Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° трябва Π΄Π° бъдС Π½Π°ΠΌΠ°Π»Π΅Π½Π°. ОсвСн Ρ‚ΠΎΠ²Π°, искам Π΄Π° Π³ΠΎ направя Π±Π΅Π· Π·Π°Π³ΡƒΠ±Π° Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈ Ρ‚Π΅Π³Π»Π°.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ Π΄Π²Π΅. МоТС Π±ΠΈ имаш ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π½Π½ΠΈ ΠΈ изчислитСлни рСсурси ΠΈΠ»ΠΈ просто Ρ‚ΠΈ Π΅ Π½ΡƒΠΆΠ½Π° ΡΠ²Ρ€ΡŠΡ…ΠΊΠ°ΡΡ‚ΠΎΠΌΠΈΠ·ΠΈΡ€Π°Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°. НС Π΅ Π²Π°ΠΆΠ½ΠΎ. Но ΠΎΠ±ΡƒΡ‡Π°Π²Π°Ρˆ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΎΡ‚ Π½ΡƒΠ»Π°Ρ‚Π°. ΠžΠ±ΠΈΡ‡Π°ΠΉΠ½ΠΈΡΡ‚ Ρ€Π΅Π΄ Π΅ β€” Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ структурата Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅, ΠΏΠΎΠ΄Π±ΠΈΡ€Π°ΠΌΠ΅ Π˜Π—Π›Π˜Π¨ΠΠ ΠΏΠΎ мощност Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΈ натискамС Π΄Ρ€ΠΎΠΏΠ°ΡƒΡ‚ΠΈ, Π·Π° Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΠΌ ΠΏΡ€Π΅ΠΎΠ±ΡƒΡ‡Π°Π²Π°Π½Π΅. Видял съм Π΄Ρ€ΠΎΠΏΠ°ΡƒΡ‚ΠΈ 0.6, ΠšΠ°Ρ€Π».

Π’ Π΄Π²Π°Ρ‚Π° случая ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π½Π°ΠΌΠ°Π»Π΅Π½Π°. ΠžΠ±ΠΎΡΠ½ΠΎΠ²Π°Ρ…ΠΌΠ΅ сС. Π‘Π΅Π³Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ обрязванСто (pruning).

ΠžΠ±Ρ‰ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ

Π Π΅ΡˆΠΈΡ…ΠΌΠ΅, Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅ΠΌ свивкитС. ИзглСТда Ρ‚ΠΎΠ²Π° Π΅ доста просто:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

ΠŸΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° всяка свивка Π΅ стрСс Π·Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ извСстСн Ρ€ΡŠΡΡ‚ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠ°Ρ‚Π°. ΠžΡ‚ Π΅Π΄Π½Π° страна, Ρ‚ΠΎΠ·ΠΈ Ρ€ΡŠΡΡ‚ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠ°Ρ‚Π° Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠΎΠ»ΠΊΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°ΠΌΠ΅ свивкитС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, голям Ρ€ΡŠΡΡ‚ ΠΏΠΎΠΊΠ°Π·Π²Π°, Ρ‡Π΅ ΠΏΡ€Π°Π²ΠΈΠΌ Π½Π΅Ρ‰ΠΎ Π½Π΅Ρ€Π΅Π΄Π½ΠΎ). Но малък Ρ€ΡŠΡΡ‚ Π΅ съвсСм ΠΏΡ€ΠΈΠ΅ΠΌΠ»ΠΈΠ² ΠΈ чСсто сС ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° с послСдващо Π»Π΅ΠΊΠΎ Π΄ΠΎΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ с ΠΌΠ°Π»ΠΊΠ° LR. ДобавямС ΡΡ‚ΡŠΠΏΠΊΠ° Π·Π° Π΄ΠΎΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

Π‘Π΅Π³Π° трябва Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, ΠΊΠΎΠ³Π° искамС Π΄Π° спрСм Ρ†ΠΈΠΊΡŠΠ»Π° Learning<->Pruning. Π’ΡƒΠΊ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π΅ΠΊΠ·ΠΎΡ‚ΠΈΡ‡Π½ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ трябва Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΠΌ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ скорост Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ устройства). Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π½Π°ΠΉ-чСстият Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” Π΅ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°Π½Π΅ Π½Π° Ρ†ΠΈΠΊΡŠΠ»Π°, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π³Ρ€Π΅ΡˆΠΊΠ°Ρ‚Π° Π½Π΅ станС ΠΏΠΎ-висока ΠΎΡ‚ допустимата. ДобавямС условиС:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

И Ρ‚Π°ΠΊΠ°, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΡŠΡ‚ става Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌ. ΠžΡΡ‚Π°Π²Π° Π΄Π° обсъдим ΠΊΠ°ΠΊ Π΄Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½ΠΈΡ‚Π΅ свивки.

Π’ΡŠΡ€ΡΠ΅Π½Π΅ Π½Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½ΠΈ свивки

Врябва Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅ΠΌ някакви свивки. Π”Π° дСйствамС Π½Π° случаСн ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΈ Π΄Π° β€žΡΡ‚Ρ€Π΅Π»ΡΠΌΠ΅β€œ всяка β€” Π΅ лоша идСя, ΠΌΠ°ΠΊΠ°Ρ€ ΠΈ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ. Но Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Π³Π»Π°Π²Π°, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° помислим ΠΈ Π΄Π° сС ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΎΠΈΠΌ Π·Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ β€žΡΠ»Π°Π±ΠΈΡ‚Π΅β€œ свивки. Има няколко Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°:

  1. Най-ΠΌΠ°Π»ΠΊΠ° L1-ΠΌΠ΅Ρ€Π° ΠΈΠ»ΠΈ low_magnitude_pruning. Π˜Π΄Π΅ΡΡ‚Π° Π΅, Ρ‡Π΅ свивкитС с ΠΌΠ°Π»ΠΊΠΈ стойности Π½Π° Ρ‚Π΅Π³Π»ΠΎ допринасят ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎ Π·Π° ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π½ΠΎΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.
  2. Най-ΠΌΠ°Π»ΠΊΠ°Ρ‚Π° L1-ΠΌΠ΅Ρ€ΠΊΠ°, Π²Π·Π΅Ρ‚Π° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ срСдното ΠΈ стандартното ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅. Π”ΠΎΠΏΡŠΠ»Π²Π° сС с ΠΎΡ†Π΅Π½ΠΊΠ° Π½Π° Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π° Π½Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ.
  3. Π—Π°ΠΊΡ€ΡŠΠ³Π»ΡΠ²Π°Π½Π΅ Π½Π° свивкитС ΠΈ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ Π½Π° Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΎ влияСщитС Π²ΡŠΡ€Ρ…Ρƒ ΠΊΡ€Π°ΠΉΠ½Π°Ρ‚Π° точност.. По-Ρ‚ΠΎΡ‡Π½ΠΎ опрСдСлянС Π½Π° ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ½ΠΈ свивки, Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ рСсурсоСмко.
  4. Π”Ρ€ΡƒΠ³ΠΈ

ВсСки ΠΎΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈΡ‚Π΅ ΠΈΠΌΠ° ΠΏΡ€Π°Π²ΠΎ Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Π½Π΅ ΠΈ свои особСности Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅. Π’ΡƒΠΊ Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° с Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠ°Ρ‚Π° L1-ΠΌΠ΅Ρ€ΠΊΠ°.

Π ΡŠΡ‡Π΅Π½ процСс Π·Π° YOLOv3

Π’ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½Π°Ρ‚Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° сС ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅. Но ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΈ Π΄Π° са Π½Π°ΠΏΡ€Π΅Π΄Π½ΠΈΡ‡Π°Π²ΠΈ Ρ‚Π΅ Π·Π° Π΄ΡŠΠ»Π±ΠΎΠΊΠΈΡ‚Π΅ ΠΌΡ€Π΅ΠΆΠΈ, Ρ‚Π΅ Π½ΠΈ ΠΏΡ€Π΅Ρ‡Π°Ρ‚. БлоТността Π΅, Ρ‡Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°ΠΌΠ΅ свивки с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ индСкси Π² Ρ‚Π΅Π·ΠΈ слоСвС:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

Π—Π°Ρ‚ΠΎΠ²Π° Ρ‰Π΅ ΠΎΡ‚Π΄Π΅Π»ΠΈΠΌ слоСвСтС, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ свободно Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅ΠΌ свивки:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

Π‘Π΅Π³Π° Ρ‰Π΅ ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ работния Ρ†ΠΈΠΊΡŠΠ»:

  1. ИзвСТдамС Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ
  2. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ изчислявамС ΠΊΠΎΠ»ΠΊΠΎ Π΄Π° ΠΈΠ·Ρ€Π΅ΠΆΠ΅ΠΌ
  3. Π˜Π·Ρ€ΡΠ·Π²Π°ΠΌΠ΅
  4. ΠžΠ±ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ 10 Π΅ΠΏΠΎΡ…ΠΈ с LR=1e-4
  5. ВСстирамС

Π˜Π·Π²Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° свивки Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π·Π° Π΄Π° ΠΎΡ†Π΅Π½ΠΈΠΌ ΠΊΠ°ΠΊΠ²Π° част ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅ΠΌ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π΅Ρ‚Π°ΠΏ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

Π’ΠΈΠΆΠ΄Π°ΠΌΠ΅, Ρ‡Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ навсякъдС 5% ΠΎΡ‚ свивкитС ΠΈΠΌΠ°Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ниска L1-Π½ΠΎΡ€ΠΌΠ° ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅ΠΌ. На всСки Π΅Ρ‚Π°ΠΏ Ρ‚Π°ΠΊΠΎΠ²Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ сС повтаря ΠΈ сС оцСнява ΠΎΡ‚ ΠΊΠΎΠΈ слоСвС ΠΈ ΠΊΠΎΠ»ΠΊΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Ρ€Π΅ΠΆΠ΅ΠΌ.

ЦСлият процСс сС ΡΡŠΠ±Ρ€Π° Π² 4 ΡΡ‚ΡŠΠΏΠΊΠΈ (Ρ‚ΡƒΠΊ ΠΈ навсякъдС числата Π·Π° RTX 2060 Super):

Π‘Ρ‚ΡŠΠΏΠΊΠ°mAp75Π‘Ρ€ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ, ΠΌΠ»Π½.Π Π°Π·ΠΌΠ΅Ρ€ Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, ΠœΠ‘ΠžΡ‚ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½Π°Ρ‚Π°, %Π’Ρ€Π΅ΠΌΠ΅ Π·Π° изпълнСниС, мсУсловиС Π·Π° изрязванС
00.965660241100180β€”
10.962255218911755% ΠΎΡ‚ всички
20.962550197831685% ΠΎΡ‚ всички
30.9633391556415515% за слоСвС с 400+ свивки
40.9555311245114610% за слоСвС с 100+ свивки

Π”ΠΎ 2-Ρ‚Π° ΡΡ‚ΡŠΠΏΠΊΠ° сС Π΄ΠΎΠ±Π°Π²ΠΈ Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»Π΅Π½ Π΅Ρ„Π΅ΠΊΡ‚ β€” Π±Π°Ρ‚Ρ‡-сайз 4 Π²Π»Π΅Π·Π΅ Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ускори процСса Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅.
На 4-Ρ‚Π° ΡΡ‚ΡŠΠΏΠΊΠ° ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ бСшС спрян, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π΄ΠΎΡ€ΠΈ Π΄ΡŠΠ»Π³ΠΎΡ‚ΠΎ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ Π²Π΄ΠΈΠ³Π½Π° mAp75 Π΄ΠΎ старитС стойности.
Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка успяхмС Π΄Π° ускорим инфСрСнса с 15%, Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° 35% ΠΈ Π΄Π° Π½Π΅ Π·Π°Π³ΡƒΠ±ΠΈΠΌ точност.

Автоматизация Π·Π° ΠΏΠΎ-проститС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ

Π—Π° ΠΏΠΎ-проститС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ Π½Π° ΠΌΡ€Π΅ΠΆΠΈ (Π±Π΅Π· условни add, concatenate ΠΈ residual Π±Π»ΠΎΠΊΠΎΠ²Π΅) ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°ΠΌΠ΅ към ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° всички свивкови слоСвС ΠΈ Π΄Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ процСса Π½Π° изрязванС Π½Π° свивкитС.

Π’ΠΎΠ·ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π³ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ… Ρ‚ΡƒΠΊ..
Всичко Π΅ просто: ΠΎΡ‚ вас сС изисква само функцията Π½Π° Π·Π°Π³ΡƒΠ±ΠΈΡ‚Π΅, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ΡŠΡ‚ ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π½Π° Π±Π°Ρ‚Ρ‡:

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, # броят Π½Π° Π΅ΠΏΠΎΡ…ΠΈΡ‚Π΅ Π·Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π΅Ρ‚Π°ΠΏΠΈΡ‚Π΅ Π½Π° рязанС
    "stop_loss": 0.1, # Π·Π°Π³ΡƒΠ±Π° Π·Π° спиранС Π½Π° процСса
    "pruning_percent_step": 0.05, # част ΠΎΡ‚ свивкитС, ΠΊΠΎΠΈΡ‚ΠΎ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚ΠΈ Π½Π° всСки Π΅Ρ‚Π°ΠΏ Π½Π° рязанС
    "pruning_standart_deviation_part": 0.2 # измСстванС Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° частта Π½Π° рязанС
}

Π”ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° основата Π½Π° стандартно ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅. Π¦Π΅Π»Ρ‚Π° Π΅ Π΄Π° сС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈ частта, която сС ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°, ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°ΠΉΠΊΠΈ свивки с Π²Π΅Ρ‡Π΅ "Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ" L1 ΠΌΠ΅Ρ€ΠΊΠΈ:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

Π’Π°ΠΊΠ° Π½ΠΈΠ΅ позволявамС Π΄Π° сС изтрият само слабитС свивки ΠΎΡ‚ разпрСдСлСния, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° дСсния, ΠΈ Π΄Π° Π½Π΅ влияят Π½Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ ΠΎΡ‚ разпрСдСлСния, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° лСвия:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

ΠŸΡ€ΠΈ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ°Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ към Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ pruning_standart_deviation_part ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ΄Π±ΠΈΡ€Π° ΠΎΡ‚:

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning
ΠŸΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌ ΠΎΡ‚ΡΡ‚ΡŠΠΏΠΊΠ° ΠΎΡ‚ 2 сигма. Или ΠΌΠΎΠΆΠ΅ просто Π΄Π° Π½Π΅ сС Π±Π°Π·ΠΈΡ€Π°Ρ‚Π΅ Π½Π° Ρ‚Π°Π·ΠΈ особСност, оставяйки стойност < 1.0.

На ΠΈΠ·Ρ…ΠΎΠ΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, Π·Π°Π³ΡƒΠ±ΠΈΡ‚Π΅ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΏΡ€Π΅Π· цСлия тСст, Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΄ΠΎ 1.0. НапримСр, Ρ‚ΡƒΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° бСшС Π½Π°ΠΌΠ°Π»Π΅Π½ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π°ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π±Π΅Π· Π·Π°Π³ΡƒΠ±Π° Π² качСството (ΠΌΠ°Π»ΠΊΠ° свивка Π½Π° 100ΠΊ Ρ‚Π΅Π³Π»Π°):

ДТСдаСнска Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° намаляванС Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ ΠΌΡ€Π΅ΠΆΠΈ β€” pruning

Бкоростта Π½Π° изпълнСниС Π΅ ΠΏΠΎΠ΄Π»ΠΎΠΆΠ΅Π½Π° Π½Π° Π½ΠΎΡ€ΠΌΠ°Π»Π½ΠΈ Ρ„Π»ΡƒΠΊΡ‚ΡƒΠ°Ρ†ΠΈΠΈ ΠΈ практичСски Π½Π΅ сС Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠ»Π°. Има обяснСниС Π·Π° Ρ‚ΠΎΠ²Π°:

  1. Броят Π½Π° свивкитС сС промСня ΠΎΡ‚ ΡƒΠ΄ΠΎΠ±Π½ΠΈΡ‚Π΅ (32, 64, 128) Π΄ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΈΡ‚Π΅ Π·Π° Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚ΠΈ β€” 27, 51 ΠΈ Ρ‚.Π½. Мога Π΄Π° ΡΠ³Ρ€Π΅ΡˆΠ° Ρ‚ΡƒΠΊ, Π½ΠΎ вСроятно Ρ‚ΠΎΠ²Π° повлиява.
  2. АрхитСктурата Π½Π΅ Π΅ ΡˆΠΈΡ€ΠΎΠΊΠ°, Π½ΠΎ Π΅ послСдоватСлна. Намалявайки ΡˆΠΈΡ€ΠΈΠ½Π°Ρ‚Π°, Π½Π΅ докосвамС Π΄ΡŠΠ»Π±ΠΎΡ‡ΠΈΠ½Π°Ρ‚Π°. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ намалявамС Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ, Π½ΠΎ Π½Π΅ промСнямС скоростта.

Π—Π°Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ сС ΠΈΠ·Ρ€Π°Π·ΠΈ Π² намаляванС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° CUDA ΠΏΡ€ΠΈ изпълнСниС с 20-30%, Π½ΠΎ Π½Π΅ ΠΈ Π² намаляванС Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС.

Π˜Ρ‚ΠΎΠ³

НСка Ρ€Π΅Ρ„Π»Π΅ΠΊΡ‚ΠΈΡ€Π°ΠΌΠ΅. Π Π°Π·Π³Π»Π΅Π΄Π°Ρ…ΠΌΠ΅ 2 Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π·Π° рязанС β€” Π·Π° YOLOv3 (ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС Π½Π°Π»Π°Π³Π° Ρ€ΡŠΡ‡Π½ΠΎ Π΄Π° сС Ρ€Π°Π±ΠΎΡ‚ΠΈ) ΠΈ Π·Π° ΠΌΡ€Π΅ΠΆΠΈ с ΠΏΠΎ-прости Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ. Ясно Π΅, Ρ‡Π΅ Π² Π΄Π²Π°Ρ‚Π° случая ΠΌΠΎΠΆΠ΅ Π΄Π° сС постигнС намаляванС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΈ ускорСниС Π±Π΅Π· Π·Π°Π³ΡƒΠ±Π° Π½Π° точност. Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ са:

  • НамаляванС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π°
  • УскорСниС Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ
  • НамаляванС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° CUDA
  • ΠšΠ°Ρ‚ΠΎ слСдствиС, Скологичност (ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ Π±ΡŠΠ΄Π΅Ρ‰ΠΎΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° изчислитСлни рСсурси. НякъдС Ρ€Π°Π΄Π²Π° Π΅Π΄Π½Π° Π“Ρ€Π΅Ρ‚Π° Π’ΡƒΠ½Π±Π΅Ρ€Π³)

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

  • Π‘Π»Π΅Π΄ ΡΡ‚ΡŠΠΏΠΊΠ°Ρ‚Π° Π½Π° рязанС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΈ квантизация (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с TensorRT)
  • Tensorflow прСдоставя Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° low_magnitude_pruning. Π Π°Π±ΠΎΡ‚ΠΈ.
  • РСпозитория искам Π΄Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π°ΠΌ ΠΈ Ρ‰Π΅ сС Ρ€Π°Π΄Π²Π°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡ‰

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster