Аперацыя згортвання з'яўляецца фундаментальным працэсам у сферы згортачных нейронавых сетак (CNN), асабліва ў вобласці распазнавання малюнкаў. Гэтая аперацыя мае ключавое значэнне для вылучэння функцый з малюнкаў, што дазваляе мадэлям глыбокага навучання разумець і інтэрпрэтаваць візуальныя даныя. Матэматычная фармулёўка аперацыі згортвання 2D-малюнка важная для разумення таго, як CNN апрацоўваюць і аналізуюць выявы.
Матэматычна аперацыю згортвання 2D-малюнка можна выказаць наступным чынам:
[ (I * K)(x, y) = sum_{i=-m}^{m} sum_{j=-n}^{n} I(x+i, y+j) cdot K(i, j) )]дзе:
– ( I ) прадстаўляе ўваходны малюнак.
– ( K ) пазначае ядро або фільтр.
– ((x, y)) – каардынаты выхаднога пікселя.
– ( m ) і ( n ) – паўшырыня і паўвышыня ядра адпаведна.
У гэтым раўнанні ядро (K) слізгае па ўваходным малюнку (I), выконваючы паэлементнае множанне і падсумоўваючы вынікі для атрымання адзінага выхаднога піксельнага значэння. Гэты працэс паўтараецца для кожнага пікселя на выходнай карце функцый, у выніку чаго атрымліваецца трансфармаваны малюнак, які вылучае пэўныя функцыі на аснове значэнняў ядра.
Аперацыю згортвання можна лепш зразумець на пакрокавым прыкладзе. Разгледзім простае ядро 3×3 (K) і ўваходны малюнак 5×5 (I):
[ K = пачатак {bmatrix}1 & 0 & -1 \
1 & 0 & -1 \
1 і 0 і -1
канец{bmatrix} ] [ I = пачатак{bmatrix}
1 і 2 і 3 і 4 і 5 \
6 і 7 і 8 і 9 і 10 \
11 і 12 і 13 і 14 і 15 \
16 і 17 і 18 і 19 і 20 \
21 і 22 і 23 і 24 і 25
канец{bmatrix} ]
Каб вылічыць згортку, мы размяшчаем цэнтр ядра ў кожным пікселі ўваходнага малюнка і выконваем наступныя дзеянні:
1. Размясціце ядро: Размесціце цэнтр ядра ў левым верхнім куце выявы.
2. Паэлементнае множанне: памножыць кожны элемент ядра на адпаведны элемент выявы.
3. Сумаванне: Сумаванне вынікаў паэлементнага множання.
4. Перамясціць ядро: перамясціце ядро ў наступную пазіцыю і паўтарыце крокі 2-3.
Для першай пазіцыі (верхні левы кут) разлік выглядае наступным чынам:
[ пачатак{выраўнаванае}(I * K)(1, 1) &= (1 cdot 1) + (2 cdot 0) + (3 cdot -1) \
&quad + (6 cdot 1) + (7 cdot 0) + (8 cdot -1) \
&quad + (11 cdot 1) + (12 cdot 0) + (13 cdot -1) \
&= 1 + 0 – 3 + 6 + 0 – 8 + 11 + 0 – 13 \
&= -6
канец{выраўнавана} ]
Гэты вынік, -6, з'яўляецца значэннем выходнай карты аб'ектаў у пазіцыі (1, 1). Паўтарэнне гэтага працэсу для кожнай пазіцыі ядра над уваходным відарысам стварае ўсю выходную карту функцый.
Аперацыя згортвання звычайна суправаджаецца дадатковымі паняццямі, такімі як запаўненне і крок:
- набіванне: Даданне дадатковых пікселяў вакол мяжы ўваходнага малюнка, часта з нулямі (нулявое запаўненне), каб кантраляваць прасторавыя памеры выходнай карты аб'ектаў. Запаўненне гарантуе, што выходная карта аб'ектаў мае тыя ж памеры, што і ўваходная выява, захоўваючы прасторавую інфармацыю.
- Крок: Памер кроку, з якім ядро перамяшчаецца па ўваходным малюнку. Крок 1 азначае, што ядро перамяшчае адзін піксель за раз, у той час як крок 2 азначае, што ядро перамяшчае два пікселі за раз. Крок уплывае на прасторавыя памеры выходнай карты аб'ектаў, прычым большыя крокі прыводзяць да меншых выходных памераў.
Выхадныя памеры аперацыі згортвання можна вылічыць па наступнай формуле:
[ тэкст{Шырыня вываду} = левы паверх фрак{тэкст{Шырыня ўводу} – тэкст{Шырыня ядра} + 2 cdot text{Padding}}{тэкст{Крок}} правы паверх + 1 ] [ тэкст{Вышыня вываду} = левы паверх разрыў{тэкст {Input Height} – тэкст{Kernel Height} + 2 cdot text{Padding}}{text{Stride}} rightrfloor + 1 ]Гэтыя формулы гарантуюць, што прасторавыя памеры выходнай карты аб'ектаў вызначаюцца правільна на аснове памераў уваходнага відарыса, памеру ядра, запаўнення і кроку.
У кантэксце згортачных нейронавых сетак некалькі згортачных слаёў складзены разам, кожны са сваім уласным наборам навучальных ядраў. Гэтыя пласты паступова выцягваюць асаблівасці больш высокага ўзроўню з уваходнага малюнка, што дазваляе сетцы распазнаваць складаныя ўзоры і аб'екты. Ядра на кожным узроўні вывучаюцца ў працэсе навучання праз зваротнае распаўсюджванне, аптымізуючы прадукцыйнасць сеткі пры пастаўленай задачы.
За згорткавымі пластамі часта ідуць функцыі актывацыі, такія як ReLU (Rectified Linear Unit), якія ўносяць у мадэль нелінейнасць. Гэтая нелінейнасць дазваляе сетцы вывучаць больш складаныя ўяўленні. Акрамя таго, аб'яднанне слаёў, напрыклад, максімальнае аб'яднанне або сярэдняе аб'яднанне, выкарыстоўваецца для памяншэння прасторавых памераў карт аб'ектаў, робячы мадэль больш эфектыўнай з пункту гледжання вылічэнняў і менш схільнай да перападбору.
Практычным прыкладам сверточной нейроннай сеткі для распазнавання малюнкаў з'яўляецца знакамітая архітэктура LeNet-5, прызначаная для распазнання рукапісных лічбаў. LeNet-5 складаецца з некалькіх згортачных і аб'ядноўваючых слаёў, за якімі ідуць цалкам звязаныя слаі. Згорткавыя пласты здабываюць характарыстыкі з уваходных відарысаў, а цалкам звязаныя пласты выконваюць канчатковую класіфікацыю.
Каб праілюстраваць аперацыю згорткі ў кантэксце LeNet-5, разгледзім першы згорткавы пласт, які прымае ўваходны малюнак 32×32 і прымяняе шэсць ядраў 5×5 з крокам 1 і без запаўнення. Выхадныя карты аб'ектаў маюць памеры 28×28, разлічаныя наступным чынам:
[ тэкст{Шырыня вываду} = разрыў левага паверха{32 – 5 + 2 cdot 0}{1} правы паверх + 1 = 28 ] [ тэкст{Вышыня вываду} = разрыў левага паверху{32 – 5 + 2 cdot 0}{1} правы паверх + 1 = 28]Кожнае з шасці ядраў стварае асобную карту функцый 28 × 28, якая адлюстроўвае розныя аспекты ўваходнага малюнка. Затым гэтыя карты аб'ектаў праходзяць праз функцыю актывацыі ReLU і максімальны пласт аб'яднання 2×2 з крокам 2, у выніку чаго атрымліваюцца карты аб'ектаў 14×14.
Наступныя пласты ў LeNet-5 працягваюць прымяняць аперацыі згортвання і аб'яднання, паступова памяншаючы прасторавыя памеры і адначасова павялічваючы глыбіню карт функцый. Канчатковыя цалкам звязаныя ўзроўні выконваюць класіфікацыю на аснове вынятых прыкмет, выводзячы прадказаны клас лічбаў.
Аперацыя згортвання з'яўляецца краевугольным каменем згортачных нейронавых сетак, што дазваляе здабываць значныя характарыстыкі з малюнкаў. Матэматычная фармулёўка аперацыі згортвання ўключае ў сябе правядзенне ядра па ўваходным малюнку, выкананне паэлементнага множання і сумаванне вынікаў. Дадатковыя паняцці, такія як пракладка і крок, гуляюць важную ролю ў кіраванні прасторавымі памерамі выходнай карты аб'ектаў. Згорткавыя пласты ў спалучэнні з функцыямі актывацыі і пластамі аб'яднання ўтвараюць будаўнічыя блокі магутных мадэляў распазнання малюнкаў, такіх як LeNet-5, здольных распазнаваць складаныя ўзоры і аб'екты ў візуальных дадзеных.
Іншыя апошнія пытанні і адказы адносна Пашыраны камп'ютэрны зрок:
- Якая формула для функцыі актывацыі, напрыклад, выпраўленай лінейнай адзінкі, для ўвядзення нелінейнасці ў мадэль?
- Якая матэматычная формула для функцыі страт у згортчных нейронавых сетках?
- Што такое ўраўненне для максімальнага аб'яднання?
- Якія перавагі і праблемы выкарыстання 3D-звілін для распазнавання дзеянняў у відэа, і які ўклад даных Kinetics у гэтую вобласць даследаванняў?
- У кантэксце ацэнкі аптычнага патоку, як FlowNet выкарыстоўвае архітэктуру кадавальнік-дэкодэр для апрацоўкі пар малюнкаў і якую ролю адыгрывае набор даных Flying Chairs у навучанні гэтай мадэлі?
- Як архітэктура U-NET выкарыстоўвае пропуск злучэнняў для павышэння дакладнасці і дэталізацыі вынікаў семантычнай сегментацыі і чаму гэтыя злучэнні важныя для зваротнага распаўсюджвання?
- Якія ключавыя адрозненні паміж двухступеністымі дэтэктарамі, такімі як Faster R-CNN, і аднаступеністымі дэтэктарамі, такімі як RetinaNet, з пункту гледжання эфектыўнасці навучання і працы з недыферэнцуемымі кампанентамі?
- Як канцэпцыя Intersection over Union (IoU) паляпшае ацэнку мадэляў выяўлення аб'ектаў у параўнанні з выкарыстаннем квадратычных страт?
- Як рэшткавыя злучэнні ў архітэктурах ResNet спрыяюць навучанню вельмі глыбокіх нейронавых сетак і які ўплыў гэта аказала на прадукцыйнасць мадэляў распазнання малюнкаў?
- Якія асноўныя інавацыі, уведзеныя AlexNet у 2012 годзе, істотна прасунуліся ў галіне згортачных нейронавых сетак і распазнавання малюнкаў?
Глядзіце дадатковыя пытанні і адказы ў раздзеле "Пашыраны камп'ютэрны зрок".

