Նյարդային ցանցեր. Ո՞ւր է գնում այս ամենը:

Հոդվածը բաղկացած է երկու մասից.

  1. Պատկերի օբյեկտների հայտնաբերման և պատկերի սեգմենտացման որոշ ցանցային ճարտարապետությունների համառոտ նկարագրություն՝ ինձ համար ռեսուրսների առավել հասկանալի հղումներով։ Ես փորձեցի ընտրել տեսանյութերի բացատրություններ և ցանկալի է՝ ռուսերենով։
  2. Երկրորդ մասը փորձ է հասկանալու նեյրոնային ցանցերի ճարտարապետությունների և դրանց վրա հիմնված տեխնոլոգիաների զարգացման ուղղությունը։

Նյարդային ցանցեր. Ո՞ւր է գնում այս ամենը:

Նկար 1 – Նեյրոնային ցանցերի ճարտարապետությունը հասկանալը հեշտ չէ

Все началось с того, что сделал два демонстрационных приложения по классификации и обнаружению объектов на телефоне Android:

  • Բեք-ենդ դեմո, երբ տվյալները մշակվում են սերվերի վրա և փոխանցվում հեռախոսին։ Երեք տեսակի արջերի պատկերի դասակարգում՝ շագանակագույն, սև և արջուկ։
  • Front-end դեմո, երբ տվյալները մշակվում են հենց հեռախոսի վրա։ Երեք տեսակի օբյեկտների հայտնաբերում՝ գետնանուշի, թզի և արմավենու։

Կա տարբերություն պատկերի դասակարգման առաջադրանքների, օբյեկտների հայտնաբերման առաջադրանքների և պատկերի սեգմենտացիաՀետևաբար, անհրաժեշտություն առաջացավ պարզել, թե որ նեյրոնային ցանցերի ճարտարապետություններն են հայտնաբերում պատկերների մեջ գտնվող օբյեկտները և որոնք կարող են սեգմենտավորել։ Ես գտա ճարտարապետությունների հետևյալ օրինակները՝ ինձ համար ռեսուրսների ամենահասկանալի հղումներով.

  • R-CNN-ի վրա հիմնված ճարտարապետությունների շարք (Rշրջաններ Cէվոլյուցիա Nեվրոլ Nցանցի առանձնահատկություններ): R-CNN, արագ R-CNN, Ավելի արագ R-CNN, Դիմակ R-CNNՊատկերում օբյեկտ հայտնաբերելու համար սահմանային վանդակները ընտրվում են Տարածաշրջանային առաջարկի ցանցի (RPN) մեխանիզմի միջոցով: Սկզբում RPN-ի փոխարեն օգտագործվում էր ավելի դանդաղ ընտրողական որոնման մեխանիզմ: Այնուհետև ընտրված սահմանային վանդակները դասակարգման համար մատակարարվում են սովորական նեյրոնային ցանցի մուտքին: R-CNN ճարտարապետությունն ունի սահմանային վանդակները թվարկելու համար հստակ «for» ցիկլեր, ընդհանուր առմամբ մինչև 2000 վազք ներքին AlexNet ցանցով: Հստակ «for» ցիկլերի պատճառով պատկերի մշակման արագությունը դանդաղում է: Ներքին նեյրոնային ցանցով անցնող հստակ ցիկլերի քանակը նվազում է ճարտարապետության յուրաքանչյուր նոր տարբերակի հետ, և տասնյակ այլ փոփոխություններ են կատարվում արագությունը մեծացնելու և Mask R-CNN-ում օբյեկտի հայտնաբերման խնդիրը օբյեկտի սեգմենտացմամբ փոխարինելու համար:
  • YOLO (You Only Lնույնպես Once) առաջին նեյրոնային ցանցն է, որը իրական ժամանակում ճանաչել է օբյեկտները բջջային սարքերում: Դրա առանձնահատկությունն այն է, որ այն տարբերակում է օբյեկտները մեկ վազքով (բավական է դրանց մեկ անգամ նայել): Այսինքն՝ YOLO ճարտարապետությունում չկան բացահայտ «համար» ցիկլեր, այդ իսկ պատճառով ցանցը արագ է աշխատում: Օրինակ՝ այսպիսի անալոգիա. NumPy-ում մատրիցներով աշխատելիս չկան նաև բացահայտ «համար» ցիկլեր, որոնք NumPy-ում իրականացվում են ճարտարապետության ստորին մակարդակներում՝ C ծրագրավորման լեզվի միջոցով: YOLO-ն օգտագործում է նախապես սահմանված պատուհանների ցանց: Նույն օբյեկտի բազմակի հայտնաբերումը կանխելու համար պատուհանների համընկնման գործակիցը (IoU, Iխաչմերուկ over Uնիոն): Այս ճարտարապետությունը գործում է լայն շրջանակում և ունի բարձր կայունությունմոդելը կարող է մարզվել լուսանկարների վրա, բայց դեռ լավ է աշխատում ձեռքով նկարված նկարների վրա։
  • SSD (Sանգլի Sտաք բազմաբնակարան Detector) - օգտագործում է YOLO ճարտարապետության ամենահաջողակ «հաքերը» (օրինակ՝ ոչ առավելագույն ճնշում) և ավելացնում է նորերը՝ նեյրոնային ցանցի աշխատանքն ավելի արագ և ճշգրիտ դարձնելու համար: Տարբերակիչ առանձնահատկություն՝ օբյեկտների տարբերակումը մեկ վազքում՝ օգտագործելով պատկերի բուրգի վրա պատուհանների տրված ցանցը (լռելյայն վանդակ): Պատկերի բուրգը կոդավորվում է կոնվոլյուցիոն թենզորներում՝ հաջորդական կոնվոլյուցիայի և միավորման գործողությունների ընթացքում (առավելագույն միավորման գործողության ընթացքում տարածական չափը նվազում է): Այսպիսով, ցանցային մեկ վազքում հայտնաբերվում են և՛ մեծ, և՛ փոքր օբյեկտներ:
  • Մոբայլ SSD (շարժականNetV2 + SSD) երկու նեյրոնային ցանցային ճարտարապետությունների համադրություն է։ Առաջին ցանցը MobileNetV2 աշխատում է արագ և բարձրացնում է ճանաչման ճշգրտությունը: MobileNetV2-ը օգտագործվում է VGG-16-ի փոխարեն, որն սկզբնապես օգտագործվել է բնօրինակ հոդվածԵրկրորդ SSD ցանցը որոշում է պատկերի վրա օբյեկտների դիրքը։
  • SqueezeNet – շատ փոքր, բայց ճշգրիտ նեյրոնային ցանց։ Այն ինքնուրույն չի լուծում օբյեկտների հայտնաբերման խնդիրը։ Այնուամենայնիվ, այն կարող է օգտագործվել տարբեր ճարտարապետությունների հետ համատեղ։ Եվ այն կարող է օգտագործվել բջջային սարքերում։ Առանձնահատկությունն այն է, որ տվյալները նախ սեղմվում են չորս 1×1 կոնվոլյուցիոն ֆիլտրերի, ապա ընդլայնվում են չորս 1×1 և չորս 3×3 կոնվոլյուցիոն ֆիլտրերի։ Տվյալների սեղմում-ընդլայնման նման իտերացիաներից մեկը կոչվում է «Կրակի մոդուլ»։
  • ԴիփԼաբ (Սեմանտիկ պատկերի սեգմենտացիա խորը կոնվոլյուցիոն ցանցերով) – պատկերի մեջ օբյեկտների սեգմենտացիա։ Ճարտարապետության առանձնահատկությունը նոսր (լայնացված կոնվոլյուցիա) կոնվոլյուցիան է, որը պահպանում է տարածական լուծաչափը։ Այնուհետև հաջորդում է արդյունքների հետմշակման փուլը՝ օգտագործելով գրաֆիկական հավանականության մոդել (պայմանական պատահական դաշտ), որը թույլ է տալիս հեռացնել սեգմենտացիայի փոքր աղմուկները և բարելավել սեգմենտացված պատկերի որակը։ «Գրաֆիկական հավանականության մոդել» հզոր անվանման հետևում թաքնված է կանոնավոր գաուսյան ֆիլտր, որը մոտավորվում է հինգ կետով։
  • Փորձեցի պարզել սարքը ՎերամշակելDet (Միակ կրակոց Զտելօբյեկտի համար նախատեսված նեյրոնային ցանց Դետհատված), բայց քիչ բան էր հասկանում։
  • Ես նաև նայեցի, թե ինչպես է աշխատում «ուշադրության» տեխնոլոգիան. տեսանյութ 1, տեսանյութ 2, տեսանյութ 3«Ուշադրության» ճարտարապետության առանձնահատկությունը պատկերում ուշադրության մեծացման շրջանների ավտոմատ ընտրությունն է (RoI, Rշրջաններ of Iհետաքրքրություն)՝ օգտագործելով Ուշադրության միավոր կոչվող նեյրոնային ցանց: Ուշադրության շրջանները նման են սահմանային շրջանակներին, բայց ի տարբերություն դրանց, դրանք ֆիքսված չեն պատկերի վրա և կարող են ունենալ մշուշոտ սահմաններ: Այնուհետև, առանձնահատկությունները արդյունահանվում են ուշադրության շրջաններից և «մատակարարվում» են կրկնվող նեյրոնային ցանցերին՝ ճարտարապետություններով: LSDM, GRU կամ Vanilla RNNԿրկնվող նեյրոնային ցանցերը կարող են վերլուծել հաջորդականության մեջ հատկանիշների փոխհարաբերությունը։ Կրկնվող նեյրոնային ցանցերը սկզբում օգտագործվել են տեքստը այլ լեզուներով թարգմանելու համար, իսկ այժմ՝ թարգմանության համար։ պատկերներ տեքստի վերածելու համար и տեքստից պատկեր.

Երբ մենք ուսումնասիրում ենք այս ճարտարապետությունները, Հասկացա, որ ոչինչ չեմ հասկանումԵվ բանը նրանում չէ, որ իմ նեյրոնային ցանցը խնդիրներ ունի ուշադրության մեխանիզմի հետ։ Այս բոլոր ճարտարապետությունների ստեղծումը նման է մի տեսակ հսկայական հաքաթոնի, որտեղ հեղինակները մրցում են հաքերային խաղերում։ Հաքը բարդ ծրագրային խնդրի արագ լուծում է։ Այսինքն՝ այս բոլոր ճարտարապետությունների միջև տեսանելի և հասկանալի տրամաբանական կապ չկա։ Նրանց միավորում է միայն միմյանցից փոխառված ամենահաջող հաքերային խաղերի ամբողջությունը, գումարած բոլորի համար ընդհանուրը։ հետադարձ կապի կոնվոլյուցիայի գործողություն (սխալի ետ տարածում): Ոչ համակարգային մտածողությունՀստակ չէ, թե ինչ փոխել և ինչպես օպտիմալացնել առկա նվաճումները։

Հաքերի միջև տրամաբանական կապի բացակայության հետևանքով դրանք չափազանց դժվար է հիշել և գործնականում կիրառել։ Սա մասնատված գիտելիքներ են։ Լավագույն դեպքում հիշվում են մի քանի հետաքրքիր և անսպասելի պահեր, բայց հասկացվածի և անհասկանալիի մեծ մասը մի քանի օր անց անհետանում է հիշողությունից։ Լավ կլինի, եթե մեկ շաբաթ անց հիշեք գոնե ճարտարապետության անունը։ Բայց մի քանի ժամ և նույնիսկ օրեր անցկացրիք հոդվածներ կարդալով և տեսանյութեր դիտելով։

Նյարդային ցանցեր. Ո՞ւր է գնում այս ամենը:

Նկար 2 – Նեյրոնային ցանցերի կենդանաբանական այգի

Գիտական հոդվածների հեղինակների մեծ մասը, իմ անձնական կարծիքով, անում է ամեն ինչ, որպեսզի նույնիսկ այս մասնատված գիտելիքները չհասկանան ընթերցողը։ Սակայն տասը տողանոց նախադասություններում «օդից վերցված» բանաձևերով մակբայական մասնակցային արտահայտությունները առանձին հոդվածի թեմա են (խնդիր հրապարակել կամ կործանել).

Այս պատճառով անհրաժեշտություն կար համակարգել նեյրոնային ցանցերի վերաբերյալ տեղեկատվությունը և, այդպիսով, բարձրացնել ընկալման և հիշողության որակը: Հետևաբար, արհեստական նեյրոնային ցանցերի առանձին տեխնոլոգիաների և ճարտարապետությունների վերլուծության հիմնական թեման հետևյալ խնդիրն էր. պարզեք, թե որտեղ է այս ամենը տանում, և ոչ թե որևէ կոնկրետ նեյրոնային ցանցի սարք առանձին-առանձին։

Ուր է տանում այս ամենը։ Հիմնական եզրակացությունները՝

  • Վերջին երկու տարիների ընթացքում մեքենայական ուսուցման ստարտափների թիվը կտրուկ ընկավՀնարավոր պատճառ՝ «նեյրոնային ցանցերը այլևս նոր բան չեն»։
  • Յուրաքանչյուրը կարող է ստեղծել աշխատող նեյրոնային ցանց՝ պարզ խնդիր լուծելու համար։ Դրա համար վերցրեք պատրաստի մոդել «մոդելային կենդանաբանական այգուց» և մարզեք նեյրոնային ցանցի վերջին շերտը (ուսուցման փոխանցում) պատրաստի տվյալների վրա Google Dataset Որոնում կամ 25 հազար Kaggle տվյալների հավաքածու անվճար ամպային Jupyter Notebook.
  • Նեյրոնային ցանցերի խոշոր արտադրողները սկսել են ստեղծել «մոդելային կենդանաբանական այգիներ» (մոդելային կենդանաբանական այգի): Նրանց օգնությամբ դուք կարող եք արագորեն պատրաստել առևտրային հայտ. TF կենտրոն TensorFlow-ի համար, MMDection PyTorch-ի համար, Դետեկտրոն Caffe2-ի համար, շղթայական մոդելազու Չեյների համար և մյուսները.
  • Նեյրոնային ցանցեր, որոնք գործում են իրական ժամանակում (իրական ժամանակում) բջջային սարքերի վրա։ 10-ից մինչև 50 կադր վայրկյանում։
  • Նեյրոնային ցանցերի կիրառումը հեռախոսներում (TF Lite), բրաուզերներում (TF.js) և... տնային իրեր (Իրերի ինտերնետ, Iինտերնետ of TՀատկապես այն հեռախոսներում, որոնք արդեն իսկ աջակցում են նեյրոնային ցանցերին ապարատային մակարդակում (նեյրոարագացուցիչներ):
  • «Յուրաքանչյուր սարք, հագուստի կտոր և, հնարավոր է, նույնիսկ սնունդ կունենա IP-v6 հասցե և շփվել միմյանց հետ» Սեբաստիան Թրուն.
  • Մեքենայական ուսուցման վերաբերյալ հրապարակումների թիվը սկսել է աճել գերազանցել Մուրի օրենքը (կրկնապատկվում է յուրաքանչյուր երկու տարին մեկ) 2015 թվականից ի վեր։ Ակնհայտ է, որ հոդվածների վերլուծության համար անհրաժեշտ են նեյրոնային ցանցեր։
  • Հետևյալ տեխնոլոգիաները ձեռք են բերում ժողովրդականություն.
    • PyTorch- ը – ժողովրդականությունը արագորեն աճում է և, կարծես, գերազանցում է TensorFlow-ին։
    • Հիպերպարամետրերի ավտոմատ ընտրություն AutoML - ժողովրդականությունը սահուն աճում է։
    • Աստիճանաբար նվազեցնելով ճշգրտությունը և ավելացնելով հաշվարկման արագությունը. անորոշ տրամաբանություն, ալգորիթմներ խթանող, անճշգրիտ (մոտավոր) հաշվարկներ, քվանտացում (երբ նեյրոնային ցանցի կշիռները վերածվում են ամբողջ թվերի և քվանտացվում), նեյրոարագացուցիչներ։
    • Թարգմանություն պատկերներ տեքստի վերածելու համար и տեքստից պատկեր.
    • ստեղծում Տեսանյութից 3D օբյեկտներ, հիմա իրական ժամանակում։
    • DL-ի գլխավոր առանձնահատկությունն այն է, որ այն պարունակում է շատ տվյալներ, բայց դրանց հավաքագրումն ու պիտակավորումը հեշտ չէ։ Ահա թե ինչու է զարգանում պիտակավորման ավտոմատացումը (ավտոմատացված ծանոթագրություն) նեյրոնային ցանցեր օգտագործող նեյրոնային ցանցերի համար։
  • Նեյրոնային ցանցերի հետ համակարգչային գիտությունը հանկարծ դարձավ փորձարարական գիտություն և վեր կացավ վերարտադրելիության ճգնաժամ.
  • ՏՏ փողը և նեյրոնային ցանցերի ժողովրդականությունը ի հայտ եկան միաժամանակ, երբ հաշվարկները դարձան շուկայական արժեք։ Տնտեսությունը վերածվում է ոսկու և արտարժույթի տնտեսության։ ոսկու-արժույթի-հաշվարկՏեսեք իմ հոդվածը էկոնոֆիզիկա և ՏՏ փողի ի հայտ գալու պատճառը։

Աստիճանաբար հայտնվում է նորը ML/DL ծրագրավորման մեթոդաբանություն (Մեքենայական ուսուցում և խորը ուսուցում), որը հիմնված է ծրագրի ներկայացման վրա՝ որպես մարզված նեյրոնային ցանցի մոդելների ամբողջություն։

Նյարդային ցանցեր. Ո՞ւր է գնում այս ամենը:

Նկար 3 – ML/DL-ն որպես ծրագրավորման նոր մեթոդաբանություն

Սակայն, այն երբեք չհայտնվեց «Նեյրոնային ցանցերի տեսություններ», որի շրջանակներում կարելի է մտածել և աշխատել համակարգված։ Այն, ինչ այժմ կոչվում է «տեսություն», իրականում փորձարարական, հևրիստիկ ալգորիթմներ են։

Հղումներ դեպի իմ և այլ ռեսուրսներ՝

Շնորհակալություն ձեր ուշադրության համար:

Source: www.habr.com

Գնեք հուսալի հոստինգ DDoS պաշտպանությամբ կայքերի, VPS VDS սերվերների համար 🔥 Գնեք հուսալի կայքերի հոսթինգ՝ DDoS պաշտպանությամբ, VPS VDS սերվերներով | ProHoster