Tumeona awali kwamba mitandao ya neural ni nzuri sana katika kushughulikia picha, na hata perceptron ya tabaka moja inaweza kutambua namba zilizoandikwa kwa mkono kutoka kwenye seti ya data ya MNIST kwa usahihi wa kuridhisha. Hata hivyo, seti ya data ya MNIST ni maalum sana, na namba zote ziko katikati ya picha, jambo ambalo hufanya kazi kuwa rahisi.
Katika maisha halisi, tunataka kuwa na uwezo wa kutambua vitu kwenye picha bila kujali mahali halisi vilipo kwenye picha. Maono ya kompyuta ni tofauti na uainishaji wa kawaida, kwa sababu tunapojaribu kutafuta kitu fulani kwenye picha, tunachanganua picha tukitafuta mifumo fulani na mchanganyiko wake. Kwa mfano, tunapotafuta paka, tunaweza kwanza kutafuta mistari ya mlalo, ambayo inaweza kuunda sharubu, na kisha mchanganyiko fulani wa sharubu unaweza kutuambia kwamba hiyo ni picha ya paka. Nafasi ya jamaa na uwepo wa mifumo fulani ni muhimu, na si mahali pake halisi kwenye picha.
Ili kutoa mifumo, tutatumia dhana ya vichujio vya convolutional. Kama unavyojua, picha inawakilishwa na matriki ya 2D, au tensor ya 3D yenye kina cha rangi. Kutumia kichujio kunamaanisha kwamba tunachukua matriki ndogo ya kernel ya kichujio, na kwa kila pikseli kwenye picha ya awali tunahesabu wastani wa uzito na pointi za jirani. Tunaweza kuona hili kama dirisha dogo linalosonga juu ya picha nzima, na kujumlisha pikseli zote kulingana na uzito katika matriki ya kernel ya kichujio.
![]() |
![]() |
|---|
Picha na Dmitry Soshnikov
Kwa mfano, tukitumia vichujio vya mstari wima na mstari mlalo vya 3x3 kwenye namba za MNIST, tunaweza kupata sehemu zenye mwangaza (mfano, thamani za juu) ambapo kuna mistari wima na mlalo kwenye picha yetu ya awali. Kwa hivyo vichujio hivyo viwili vinaweza kutumika "kutafuta" mistari. Vivyo hivyo, tunaweza kubuni vichujio tofauti kutafuta mifumo mingine ya kiwango cha chini:
Picha ya Leung-Malik Filter Bank
Hata hivyo, ingawa tunaweza kubuni vichujio ili kutoa mifumo fulani kwa mikono, tunaweza pia kubuni mtandao kwa njia ambayo utajifunza mifumo kiotomatiki. Hii ni moja ya mawazo makuu nyuma ya CNN.
Njia CNN zinavyofanya kazi inategemea mawazo muhimu yafuatayo:
- Vichujio vya convolutional vinaweza kutoa mifumo
- Tunaweza kubuni mtandao kwa njia ambayo vichujio vinajifunza kiotomatiki
- Tunaweza kutumia mbinu hiyo hiyo kutafuta mifumo kwenye vipengele vya kiwango cha juu, si tu kwenye picha ya awali. Kwa hivyo uchimbaji wa vipengele vya CNN hufanya kazi kwenye uhierakia wa vipengele, kuanzia mchanganyiko wa pikseli za kiwango cha chini, hadi mchanganyiko wa kiwango cha juu wa sehemu za picha.
Picha kutoka karatasi ya Hislop-Lynch, kulingana na utafiti wao
Tuendelee kuchunguza jinsi mitandao ya neural ya convolutional inavyofanya kazi, na jinsi tunavyoweza kufanikisha vichujio vinavyoweza kufundishwa, kwa kufanya kazi kupitia daftari husika:
CNN nyingi zinazotumika kwa usindikaji wa picha hufuata kile kinachoitwa muundo wa piramidi. Tabaka la kwanza la convolutional linalotumika kwenye picha za awali kwa kawaida lina idadi ndogo ya vichujio (8-16), ambavyo vinahusiana na mchanganyiko tofauti wa pikseli, kama mistari ya mlalo/wima ya mistari. Katika kiwango kinachofuata, tunapunguza mwelekeo wa anga wa mtandao, na kuongeza idadi ya vichujio, ambavyo vinahusiana na mchanganyiko zaidi wa vipengele rahisi. Kwa kila tabaka, tunapokaribia kihakiki cha mwisho, vipimo vya anga vya picha vinapungua, na idadi ya vichujio inaongezeka.
Kwa mfano, hebu tuangalie muundo wa VGG-16, mtandao uliopata usahihi wa 92.7% katika uainishaji wa juu-5 wa ImageNet mwaka 2014:
Picha kutoka Researchgate
Endelea kujifunza kuhusu miundo maarufu ya CNN





