Neyron tarmoq magistral Algoritmning asosiy qismi neyron tarmoqlarga asoslangan. Ko‘p kompyuterni ko‘rish muammolari uchun kuchli vosita bo‘lgan chuqur o‘rganish texnikasi tavsiya etilgan algoritmda o‘qitish va keyingi xususiyatlarni ajratib olish uchun qo‘llaniladi. Barcha ko‘rib chiqilgan neyron tarmoqlar klassik orqaga tarqalish usuli bo‘yicha tasniflash topshirig’iga o‘rgatilgan. Biroq, ma’lumotlar bazasiga yangi mavzu qo‘shilganda qayta o‘qitishni talab qilmaydigan bitta umumiy modelni olish uchun biz neyron tarmoqni o‘zi klassifikator sifatida ishlatmaymiz, balki uning boshini kesib, ob’ektlarning yashirin ko‘rinishini hisoblaymiz. Bunday yondashuv xususiyatlarni ajratib olish jarayonini osonlashtirishga va modelni yangilashni oddiy tasniflash modelini qayta o‘rnatish yoki nozik sozlashgacha kamaytirishga imkon beradi, bu esa kamroq vaqt va hisob-kitoblarni talab qiladi.
Ushbu bo‘limning quyidagi qismida neyron tarmog’ining yurish deskriptorlarini olish uchun bajariladigan qadamlar tavsiflanadi:
ma’lumotlarni ko‘paytirish;
neyron tarmoq arxitekturasini tanlash;
o‘qitish tartibi;
xususiyatni ajratib olish.
Ma’lumotlarni ko‘paytirish (oshirish) 1-bo‘limda ta’kidlanganidek, yurishni aniqlash muammosining umumiy yechimiga to‘sqinlik qiladigan eng katta muammolardan biri bu ma’lumotlarning etishmasligi. Gait ma’lumotlar to‘plamini yig’ish murakkab jarayon va hozirda hatto eng katta to‘plamlar ham nisbatan kichik. Bu omil chuqur o‘rganish usullarini qo‘llashni qiyinlashtiradi, chunki unchalik chuqur bo‘lmagan arxitekturalar odatda optimallashtirish uchun juda ko‘p parametrlarni o‘z ichiga oladi va shuning uchun katta hajmdagi ma’lumotlarga o‘rgatish talab etiladi. Shunday qilib, turli xil o‘quv ob’ektlari sonini ko‘paytirish uchun ma’lumotlarni ko‘paytirish kerak.
O‘qib olish jarayonida biz tarmoq kiritish hajmi unchalik katta bo‘lmasligi uchun birinchi navbatda freymlarning o‘lchamlarini 88 × 66 gacha pasaytiramiz, so‘ngra rasmning blokni chegaralovchi qutisini o‘z ichiga olgan kvadratni tasodifiy kesish orqali bloklarni quramiz. Agar
Qutining ikkala tomoni (rezolyutsiyaning pasayishiga mos keladigan proportsional quti transformatsiyasidan keyin) 60 pikseldan kam bo‘lsa, biz kvadratning chap va yuqori tomonlarini (mos ravishda va ) bir xilda tanlaymiz, shunda ramkaning chap chegarasi va chap chegarasi o‘rtasida bo‘ladi. qutining yon tomoni va + 60 qutining o‘ng tomoni va ramkaning o‘ng chegarasi o‘rtasida. Kvadratning yuqori chegarasi xuddi shunday tanlanadi. Agar qutining har qanday tomoni 60 pikseldan katta bo‘lsa (bu kamdan-kam hollarda bo‘ladi, chunki 60 deyarli butun ramka balandligi bo‘ladi), biz kvadratni yon tomoni bilan kesib tashlaymiz. Qutining maksimal balandligi va kengligiga teng va keyin uni 60 × 60 ga o‘zgartiring.
Shunday qilib, biz 20 × 60 × 60 shaklidagi kirish tensorini olamiz, bu erda 20 - optik oqimning 10 juft gorizontal va vertikal komponentlariga mos keladigan kanallar soni va 60 - har bir xaritaning fazoviy o‘lchami. Bundan tashqari, oyna ketma-ketligini olish uchun biz blokning barcha ramkalarini bir vaqtning o‘zida 50% ehtimol bilan aylantiramiz. Biz xom tasvirlar o‘rniga optik oqimdan foydalanganimiz sababli, aks ettirish quyidagicha amalga oshiriladi:
Gorizontal komponent: 𝑂𝐹[,,0] := −𝑂𝐹[− ,,0], vertikal komponent: 𝑂𝐹[,,1] := 𝑂𝐹[− ,,1], bu yerda o‘lchamlari pasayganligi sababli ramkaning kengligi 66 ga teng.
Ushbu ikkita transformatsiya bizga o‘quv ma’lumotlari miqdorini oshirishga va modelning haddan tashqari mos kelishini kamaytirishga yordam beradi. Bundan tashqari, bloklarni tarmoqqa kiritishdan oldin biz barcha o‘quv ma’lumotlar to‘plamidan optik oqimning gorizontal va vertikal qismlarining o‘rtacha qiymatlarini ayirib tashlaymiz.