Sobes.tech
Junior — Senior

Ինչպե՞ս է MobileNet v2-ը տարբերվում v1-ից (invert residuals)։

sobes.tech AI

Պատասխան AI-ից

MobileNet v2 հիմնականում տարբեր է v1-ից՝ հիմնականում ներդնելով "invert residuals" և "linear bottlenecks" հասկացությունները:

MobileNet v1-ում օգտագործվում էին սովորական մնացորդային կապեր և խորապես բաժանվող կոնվոլյուցիաներ, ինչը արդեն նվազեցնում էր հաշվարկային բարդությունը: MobileNet v2-ում ճարտարապետությունը կառուցված է այնպես, որ՝

  • հիմնական բլոկը "invert residual block" է՝ սկզբում լայնացնում է ալիքների քանակը 1x1 կոնվոլյուցիայի միջոցով (pointwise convolution), ապա խոր կոնվոլյուցիա, և վերջում վերականգնում է փոքր թվով ալիքներ:
  • մնացորդային կապերը կիրառվում են ոչ ընդլայնված հատկությունների տարածության վրա, այլ սեղմված (քնքշ) տարածության վրա, ինչը նվազեցնում է պարամետրերի քանակը և բարձրացնում արդյունավետությունը:
  • օգտագործվում է գծային նեղություն (վերջին շերտը չունի ReLU ակտիվացում), որպեսզի խուսափել տեղեկատվության կորուստից հատկությունների սեղմման ժամանակ:

Այս ամենը թույլ է տալիս MobileNet v2-ին լինել ավելի արդյունավետ և ճշգրիտ նույն կամ ավելի քիչ հաշվարկային ռեսուրսներով՝ համեմատած v1-ի հետ:

Սպառման կառուցվածքի պարզեցված օրինակ՝

# Պսևդո կոդ
մուտք -> 1x1 կոնվոլյուցիա (լայնացում, ReLU6) -> խոր կոնվոլյուցիա (ReLU6) -> 1x1 կոնվոլյուցիա (պրոյեկցիա, գծային) -> մնացորդային գումարում (եթե չափերը համընկնում են)