온라인 번역 번역 쿼리
온라인으로 번역 할 내용 입력 ( 500 자까지 입력 가능)
내용은 로 번역됨

번역 결과

"因为卷积核是对每位置像素进行同样的操作,所以1x1卷积相当于对所有" ~ 중 에스토니아 사람 번역

중국어

因为卷积核是对每位置像素进行同样的操作,所以1x1卷积相当于对所有的输入特征响应图做了一次线性组合,然后输出新的一组特征响应图。特别是如果m>n的情况下,通过训练之后相当于降维,这样再接新的卷积层就只需要在更少的n个通道上做卷积,节省了计算资源。进一步把n通道上的激活函数也考虑进来,就成了一个感知机了。再进一步再来一次1x1卷积+激活函数,就成了一个对响应图指定位置,跨通道的一组像素作为输入的一个神经网络。这就是最基本的Network In Network,网络里边还有网络。
NIN论文里还提出了另一种被广泛应用的方法叫做全局平均池化(Global Average Pooling),就是对最后一层卷积的响应图,每个通道求整个响应图的均值,这个就是全局池化。然后再接一层全连接,因为全局池化后的值相当于一像素,所以最后的全连接其实就成了一个加权相加的操作。这种结构比起直接的全连接更直观,并且泛化性更好。
2、Inception 结构
Inception模块的基本思想是源于前面提过的NIN,如果把卷积+激活看作是一种广义线性模型(Generalized Linear Model),那么从该角度,既然可以用广义线性模型抽取特征,何不用更好的模型,因此我们可以用更有效的结构代替单纯的卷积+激活操作。Inception模块的结构如图2所示。
因为所有卷积的stride都是1,所以在图2中没有特意标明,另外对于3x3卷积、5x5卷积和3x3池化,为了保持特征响应图大小一致,都用了零填充(3x3的填充为1, 5x5的填充为2)。最后每个卷积层后面都立刻接了个ReLU层,在图2中没有单独画出,而是和卷积层放一起。 在输出前有个叫concatenate的层,直译过来就是“并置”。这个操作的意思是把4组不同类型但是大小相同的特征响应图一张张“并排叠”一起, 形成新的一组特征响应图。
图2 Inception模块示意图
所以通过图2可以看到,Inception里面主要做了两件事:第一件事是通过 3x3池化,以及1x1、3x3和5x5这3种不同尺度的卷积核,-共4种方式对输入的特征响应图做了特征抽取。第二件事是为了降低计算量,同时让信息通过更少的连接传递以达到更加稀疏的特性,采用1x1卷积核进行降维。图2中每条箭头边旁的数字是以GoogLeNet最低层的Inception模块为例的通道数。可以看到,对于计算量略大的3x3卷积,把192通道的特征响应图降到了原来的一半96通道,而对于计算量更大的5x5卷积,则降到了更少,只有16通道。
3、 层的排列规律
卷积神经网络最常见的形式就是将一些卷积层和ReLU层放在一起,其后紧跟池化层(汇聚层),然后重复如此直到图像在空间上被缩小到一个足够小的尺寸,在某个地方过渡成成全连接层也较为常见。最后的全连接层得到输出,比如分类评分等。换句话说,最常见的卷积神经网络结构如下:
其中*指的是重复次数,POOL?指的是一个可选的汇聚层。其中N >=0,通常N<=3,M>=0,K>=0,通常K<3。例如,下面是一些常见的网络结构规律:
INPUT -> FC ,实现一个线性分类器,此处N = M = K = 0。
INPUT -> CONV -> RELU -> FC,单层的卷积神经网络
*INPUT -> [CONV -> RELU -> POOL]2 -> FC -> RELU -> FC,此处在每个汇聚层之间有一个卷积层,这种网络就是简单的多层的卷积神经网络。
**INPUT -> [CONV -> RELU -> CONV -> RELU -> POOL]3 -> [FC -> RELU]2 -> FC ,此处每个汇聚层前有两个卷积层,这个思路适用于更大更深的网络(比如说这个思路就和VGG比较像),因为在执行具有破坏性的汇聚操作前,多重的卷积层可以从输入数据中学习到更多的复杂特征。
最新进展:传统的将层按照线性进行排列的方法已经受到了挑战,挑战来自谷歌的Inception结构和微软亚洲研究院的残差网络(Residual Net)结构。这两个网络的特征更加复杂,连接结构也不同。
4、卷积层的大小选择
几个小滤波器卷积层的组合比一个大滤波器卷积层好。假设你一层一层地重叠了3个3x3的卷积层(层与层之间有非线性激活函数)。在这个排列下,第一个卷积层中的每个神经元都对输入数据体有一个3x3的视野。第二个卷积层上的神经元对第一个卷积层有一个3x3的视野,也就是对输入数据体有5x5的视野。同样,在第三个卷积层上的神经元对第二个卷积层有3x3的视野,也就是对输入数据体有7x7的视野。假设不采用这3个3x3的卷积层,二是使用一个单独的有7x7的感受野的卷积层,那么所有神经元的感受野也是7x7,但是就有一些缺点。首先,多个卷积层与非线性的激活层交替的结构,比单一卷积层的结构更能提取出深层的更好的特征。其次,假设所有的数据有C个通道,那么单独的7x7卷积层将会包含 [公式] 个参数,而3个3x3的卷积层的组合仅有 [公式] 个参数。直观说来,最好选择带有小滤波器的卷积层组合,而不是用一个带有大的滤波器的卷积层。前者可以表达出输入数据中更多个强力特征,使用的参数也更少。唯一的不足是,在进行反向传播时,中间的卷积层可能会导致占用更多的内存。
5、层的尺寸设置规律
输入层:应该能被2整除很多次。常用数字包括32(比如CIFAR-10),64,96(比如STL-10)或224(比如ImageNet卷积神经网络),384和512。
卷积层:应该使用小尺寸滤波器(比如3x3或最多5x5),使用步长S=1。还有一点非常重要,就是对输入数据进行零填充,这样卷积层就不会改变输入数据在空间维度上的尺寸。比如,当F=3,那就使用P=1来保持输入尺寸。当F=5,P=2,一般对于任意F,当P=(F-1)/2的时候能保持输入尺寸。如果必须使用更大的滤波器尺寸(比如7x7之类),通常只用在第一个面对原始图像的卷积层上。
池化层(汇聚层):负责对输入数据的空间维度进行降采样。最常用的设置是用用2x2感受野(即F=2)的最大值汇聚,步长为2(S=2)。注意这一操作将会把输入数据中75%的激活数据丢弃(因为对宽度和高度都进行了2的降采样)。另一个不那么常用的设置是使用3x3的感受野,步长为2。最大值汇聚的感受野尺寸很少有超过3的,因为汇聚操作过于激烈,易造成数据信息丢失,这通常会导致算法性能变差。
为何使用零填充?使用零填充除了前面提到的可以让卷积层的输出数据保持和输入数据在空间维度的不变,还可以提高算法性能。如果卷积层值进行卷积而不进行零填充,那么数据体的尺寸就会略微减小,那么图像边缘的信息就会过快地损失掉。

에스토니아 사람

Kuna konvolutsiooni kernel teeb iga positsioonipiksli puhul sama operatsiooni, on 1x1 konvolutsioon samaväärne lineaarse kombinatsiooniga kõikidest sisendkarakteristikutest reageerimise graafikutest ja seejärel uue komplekti karakteristikutest reageerimise graafikutest väljastamisega. Eriti kui M & gt; N puhul on see samaväärne mõõtmete vähendamisega pärast koolitust, nii peab uus konvolutsioonikiht koonduma ainult vähem N kanaleid, mis säästab arvutusressursse. Lisaks, arvestades aktiveerimisfunktsiooni n-kanalil, muutub see perceptroniks. Jällegi muutub 1x1 konvolutsioon + aktiveerimisfunktsioon neurovõrguks, millel on kanalite vahel pikslite hulk sisendina vastusgraafiku määratud asukohas. See on võrgu kõige põhilisem võrk. Võrgus on võrk.
Nini töös pakutakse välja veel üks laialdaselt kasutatav meetod, mida nimetatakse globaalseks keskmiseks koondamiseks, milleks on arvutada kogu reaktsioonigraafiku keskmine väärtus iga kanali kohta viimase konvolutsioonikihi reaktsioonigraafiku jaoks. Seejärel ühendatakse täieliku ühenduse kiht. Kuna väärtus pärast globaalset ühendamist on võrdne ühe piksliga, muutub lõplik täielik ühendus tegelikult kaalutud liitmise toiminguks. See struktuur on intuitiivsem kui otsene täielik ühendus ja on parem üldistamine.
2. Algstruktuur
Kui konvolutsiooni + aktiveerimist käsitletakse üldistatud lineaarse mudelina, siis sellest vaatenurgast, kuna üldistatud lineaarset mudelit saab kasutada funktsioonide ekstraheerimiseks, siis miks mitte kasutada paremat mudelit, et saaksime kasutada efektiivsemat struktuuri lihtsa konvolutsiooni + aktiveerimise operatsiooni asendamiseks. Käivitusmooduli struktuur on esitatud joonisel 2.
Kuna kõigi konvolutsioonide triip on 1, ei ole see joonisel 2 spetsiaalselt näidatud. Lisaks kasutatakse 3x3 konvolutsiooni, 5x5 konvolutsiooni ja 3x3 koondamise puhul nullpäidet iseloomuliku reaktsiooni skeemi suuruse ühtlaseks hoidmiseks (3x3 täitmine on 1 ja 5x5 täitmine on 2). Lõpuks ühendatakse relu kiht kohe iga konvolutsioonikihi taha, mis ei ole joonisel 2 eraldi joonistatud, vaid koos konvolutsioonikihiga. Enne väljundit on kiht, mida nimetatakse concatenate, mis tõlgib "kõrvaldamine". See toiming tähendab, et "virnastatakse" neli erinevat tüüpi iseloomulike reageerimisskeemide rühma, mis on ükshaaval sama suurusega, et moodustada uus iseloomulike reageerimisskeemide rühm.
Joonis 2 Käivitusmooduli skeem
Seetõttu võib jooniselt 2 näha, et alguses tehakse peamiselt kaks asja: esimene asi on ekstraheerida sisendfunktsiooni reaktsiooni diagrammi omadused läbi 3x3 koondamise ja kolme konvolutsiooni tuuma erinevate skaaladega 1x1, 3x3 ja 5x5. Teine asi on vähendada arvutuste hulka ja lasta informatsioonil läbida vähem ühendusi, et saavutada hõredam omadused. 1x1 konvolutsiooni tuuma kasutatakse dimensiooni vähendamiseks. Joonisel 2 on iga noole kõrval olevate kanalite arv, mis võtavad näitena Google'i madalaima kihi kontseptsioonimooduli. Võib näha, et 3x3 konvolutsiooni puhul, kus arvutatakse veidi suuremat hulka, vähendatakse 192 kanali iseloomulikku reaktsiooni skeemi poolele algsest 96 kanalist, samas kui 5x5 konvolutsiooni puhul, kus arvutatakse suuremat hulka, vähendatakse see väiksemaks, vaid 16 kanalile.
3. Kihtide korraldusõigus
Kõige levinumaks konvolutsioonilise närvivõrgu vormiks on panna mõned konvolutsioonikihid ja relu kihid kokku, millele järgneb ühenduskiht (konvergence kiht), ja seejärel korrata seda, kuni pilt on ruumis vähendatud piisavalt väikese suuruseni ja on tavaline üleminek täielikult ühendatud kihile kuskil. Lõpuks saab täielik ühenduskiht väljundi, näiteks klassifitseerimise ja skoorimise. Teisisõnu, kõige levinum konvolutsiooniline närvivõrgu struktuur on järgmine:
Kus * viitab korduste arvule, pool? Viitab valikulisele koondamiskihile. Kus n & gt= 0, tavaliselt n & lt= 3,M>= 0,K>= 0, tavaliselt K & lt; 3。 Näiteks on järgmised mõned ühised võrgustruktuuri reeglid:
INPUT -> FC, rakendada lineaarne klassifitseerija, kus n = M = k = 0.
INPUT -> CONV -> RELU -> FC, ühekihiline konvolutsioonivõrk
* INPUT -> [CONV -> RELU -> bassein]2 -> FC -> RELU -> FC, iga agregatsioonikihi vahel on konvolutsioonikiht, mis on lihtne mitmekihiline konvolutsioonivõrk.
**INPUT -> [CONV -> RELU -> CONV -> RELU -> bassein]3 -> [FC -> RELU]2 -> FC, iga agregatsioonikihi ees on kaks konvolutsioonikihti. See idee kehtib suurematele ja sügavamatele võrkudele (näiteks on see idee sarnane VGg-ga), sest mitu konvolutsioonikihti võivad sisendandmetest enne hävitavate agregatsioonitoimingute tegemist õppida keerulisemaid funktsioone.
Viimased edusammud: väljakutse on saanud traditsiooniline kihtide järjestamise meetod, mis tuleneb Google kontseptsioonistruktuurist ja Microsoft Research Asia jääknetostruktuurist. Kahel võrgul on keerulisemad omadused ja erinevad ühendusstruktuurid.
4. Konvolutsioonikihi suuruse valik
Mitme väikese filtri konvolutsioonikihi kombinatsioon on parem kui üks suur filtri konvolutsioonikiht. Oletame, et kattute kolm 3x3 konvolutsioonikihti kihilt kihilt kihilt (kihtide vahel on mittelineaarne aktiveerimisfunktsioon). Selles paigutuses on igal esimese konvolutsioonikihi neuronil 3x3 vaateväli sisendandmete mahust. Teise konvolutsioonikihi neuronidel on 3x3 vaateväli esimesele konvolutsioonikihile, see tähendab 5x5 vaateväli sisendandmete mahule. Sarnaselt on kolmandal konvolutsioonikihil neuronidel 3x3 vaateväli teisel konvolutsioonikihil, see tähendab 7x7 vaateväli sisendandmete mahul. Kui kolme 3x3 konvolutsioonikihti ei kasutata ja kasutatakse eraldi konvolutsioonikihti 7x7 vastuvõtva väljaga, siis on kõigi neuronide vastuvõtvad väljad ka 7x7, kuid on mõningaid puudusi. Esiteks, mitme konvolutsioonikihi ja mittelineaarse aktiveerimiskihi alternatiivne struktuur võib ekstraheerida sügavamaid ja paremaid omadusi kui ühe konvolutsioonikihi struktuur. Teiseks, eeldades, et kõigil andmetel on C kanalid, sisaldab üksik 7x7 konvolutsioonikiht [Valem] parameetreid, samas kui kolme 3x3 konvolutsioonikihi kombinatsioon sisaldab ainult [Valem] parameetreid. Intuitiivselt on parem valida väikese filtriga konvolutsioonikihi kombinatsioon kui suure filtriga konvolutsioonikiht. Esimene võib väljendada sisendandmetes võimsamaid funktsioone ja kasutada vähem parameetreid. Ainus puudus on see, et keskmine konvolutsioonikiht võib hõivata rohkem mälu tagasi levimise ajal.
5. Kihi suuruse seadmise seadus
Sisendkiht: see peaks olema jagatav 2 korda. Tavalised numbrid on 32 (nt cifar-10), 64, 96 (nt stl-10) või 224 (nt Imagenet konvolutsioonivõrk), 384 ja 512.
Konvolutsioonikiht: kasutada tuleks väikeseid filtreid (nt 3x3 või 5x5 kõige rohkem), sammuga S = 1. Teine väga oluline punkt on sisendandmete null täitmine, nii et konvolutsioonikiht ei muuda sisendandmete suurust ruumilises mõõtmes. Näiteks kui f = 3, kasutage sisendi suuruse säilitamiseks p = 1. Kui f = 5, P = 2, tavaliselt iga f puhul, võib sisendi suurus säilitada, kui p = (F-1) / 2. Kui tuleb kasutada suuremat filtri suurust (nt 7x7), kasutatakse seda tavaliselt ainult esimesel konvolutsioonikihil, mis vastab originaalpildile.
Ühenduskiht (koondkiht): vastutab sisendandmete ruumilise mõõtme vähendamise eest. Kõige tavalisem seade on läheneda 2x2 vastuvõtva välja maksimaalse väärtusega (st f = 2), sammuga 2 (s = 2). Pange tähele, et see toiming kaotab 75% aktiveerimisandmetest sisendandmetes (kuna laiust ja kõrgust vähendatakse 2 võrra). Teine vähem levinud seade on 3x3 vastuvõtvate väljade kasutamine 2. etapis. Maksimaalse agregatsiooni vastuvõtva välja suurus on harva rohkem kui 3, sest agregatsioonitoiming on liiga intensiivne, mis on lihtne põhjustada andmete kadu, mis tavaliselt viib algoritmi jõudluse halvenemiseni.
Miks kasutada null polsterdust? Nullpolsterduse kasutamine ei saa mitte ainult hoida konvolutsioonikihi väljundiandmeid ja sisendandmeid ruumilises mõõtmes muutumatuna, vaid ka parandada algoritmi jõudlust. Kui konvolutsioonikihi väärtuse konvolutsioon ilma nullpäiteta väheneb andmemahu suurus veidi ja pildi serva teave kaob liiga kiiresti.

관련 콘텐츠

©2018 온라인 번역