35. Fire module
35
SqueezeNet
Squeeze layer :
1x1 conv 로 Pointwise conv 수행
= channel reduction
Expansion layer :
1x1 은 spatial feature 를
잘 찾아내지 못하므로
3x3 과 섞어서 사용. Padding 을 이용해
두 kernel 의 결과를 같게 하여 적층
38. Channel Shuffle
38
ShuffleNet
Depth wise convolution 은 효율적이
지만 여전히 1x1 연산의 cost 가 크다.
Group conv 로 특정 채널끼리만 연결
하면 더 효율적이나 그룹들간에 연결
성 저하됨.
그룹간의 연결성을 channel
shuffle 로 극복
41. Shiftnet
41
하나만 1 인 kernel matrix 를 곱하여
Feature shift 가 일어나는 효과를 이용
Spatial change 외에 channel 별 연결을 위해
Pointwise convolution
42. All you need is few shift
42
Grouped Shift
Active shift
그룹별로 묶어서
채널별로 최적 shift 가 있지 않을까
학습으로 찾아보자!
Shift 는 pixelwise integer 로 일어남
Integer 는 Differential 이 안됨
Real value 로 우선 학습 후
Bilinear interpolation으로 integer 값을 추정함
https://www.youtube.com/watch?v=c3xLY7EuikU
&feature=youtu.be
44. 44
Compound Scaling
EfficientNet
하나씩 scale 하는 것 보다 모든 dimension에대해서
로 scaling 하여서 grid search
https://tykimos.github.io/warehouse/2019-7-4-ISS_2nd_Deep_Learni
ng_Conference_All_Together_jwlee_file.pdf
46. 46
Compact Networks Design
Residual Connection, Densenet : 깊은 곳까지 정보 전달
Bottleneck, Firemodule: Dimension Reduction
Depthwise Conv, Grouped Conv, Shift: Increase Useful Correlation
Few Shift, Efficientnet, MNASNET, AMC: 최적은 인간이 찾는 것 아님