recursal/Fanatic-Fandom huggingface dataset:
MobileNet

MobileNet(모바일넷)은 구글에서 만든 모바일 기기에 적합한 합성곱 신경망이다. ShuffleNet과 함께 대표적인 경량 신경망이다.

논문
--

* MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications(arXiv:1704.04861): MobileNetV1
* MobileNetV2: Inverted Residuals and Linear Bottlenecks(arXiv:1801.04381): MobileNetV2
* Searching for MobileNetV3(arXiv:1905.02244): MobileNetV3

특징
--

V1에서는 깊이별 합성곱(depthwise convolution)을 적용했다.

V2에서는 inverted residual과 Linear Bottleneck을 적용했다.

V3에서는 Squeeze-and-Excitation Networks(arXiv:1709.01507)의 Squeeze-and-Excitation을 이용하고, 연속이지만 미분 불가능한 점이 있고 직선이 아닌 부분은 2차 함수 이하인 활성화 함수를 적용했다.

## 같이 보기

* SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size(arXiv:1602.07360): SqueezeNet
* ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices(arXiv:1707.01083): ShuffleNet

* CondenseNet: An Efficient DenseNet using Learned Group Convolutions(arXiv:1711.09224): CondenseNet
* Shift: A Zero FLOP, Zero Parameter Alternative to Spatial Convolutions(arXiv:1711.08141): ShiftNet
* Shift-Net: Image Inpainting via Deep Feature Rearrangement(arXiv:1801.09392): Shift-Net
Paying More Attention to Attention: Improving the Performance of Convolutional Neural Networks via Attention Transfer

Paying More Attention to Attention: Improving the Performance of Convolutional Neural Networks via Attention Transfer(arXiv:1612.03928)는 지식 증류 논문의 하나이다. 특징 증류에서 주의집중(Attention)을 거친 결과를 비교하는 Attention Transfer라는 기법을 만들어낸 논문이다.

## Attention Transfer의 종류

activation-based attention transfer와 gradient-based attention transfer가 있다.

### activation-based attention transfer

선생과 학생의 특징이 A ∈ RC×H×W라고 하면 이걸 채널 방향으로 어텐션을 거쳐서 RH×W로 만들어 준 뒤 비교한다.

비교를 할때는, 행렬의 L2-노름으로 정규화를 시켜준 값의 차에 대해 p-노름을 적용한 값에 β/2를 곱해 특징 증류 손실로 삼는다.

### gradient-based attention transfer

Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Maps(arXiv:1312.6034)의 기법대로 gradient에 대한 Saliency Map(주목도 지도)을 얻을 수 있다. 학생과 선생의 Saliency Map의 차이를 구할 수 있고, 그 차이에 대해 L2-노름을 구한 뒤 β/2를 곱해 logit loss에 더하면

attention loss가 된다.

좌우 대칭인 로스를 만드는 방법은, 좌우를 뒤집은 사진에 대해 각각 학생-선생간 Saliency Map의 차이를 구하고, 각각 구해진 값 간의 차이에 L2 노름을 취하여 좌우 대칭인 손실함수를 구한다.

일단은 입력 이미지에 대해 실험 했지만, 깊이 들어간 레이어의 중간 결과인 특징에 대해서도 적용할 수 있을 것이라 제안했다.

실험
--

Network In Network(arXiv:1312.4400), ResNet, WideResNet, CIFAR-10, ImageNet 등을 이용했다.
Distilling Object Detectors via Decoupled Features

Distilling Object Detectors via Decoupled Features(arXiv:2103.14475)은 객체 탐지에서 객체가 아닌 영역에서 추출한 특징을 이용한 특징 증류인 DeFeat을 개발한 논문이다.

실험
--

### 대조군

* fine-grained feature imitation (FGFI): Distilling Object Detectors With Fine-Grained Feature Imitation(arXiv:1906.03609)
* task adaptive distillation framework (TADF): Distilling Object Detectors with Task Adaptive Regularization(arXiv:2006.13108)
LDA

* 선형 판별 분석(Linear discriminant analysis)
* 잠재 디리클레 할당(Latent Dirichlet allocation)

LDA에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
Squeeze-and-Excitation Networks

Squeeze-and-Excitation Networks(arXiv:1709.01507)은 SENet이라고 하는 딥러닝 모델을 만든 논문이다. 특징을 1x1로 압축한 뒤 변환을 거친 후, 원본에 곱해서 scaling을 해주었다. 이 결과를 잔차로 사용한다.

Squeeze-and-Excitation 구조에서 Squeeze는 특징을 1x1로 압축하는 과정, Excitation은 채널별 상관관계(channel-wise dependencies)를 포착하는 과정이다.

ResNeXt에 SE 블록을 넣은 것을 SENet-154라고 하고 출품하여 ILSVRC 2017 분류 대회에서 우승했다.
다중 인스턴스 학습

다중 인스턴스 학습(multiple instance learning, MIL)은 여러 인스턴스가 묶인 가방을 받은 뒤, 묶음에 대한 라벨을 학습하는 방법이다.

논문
--

* Attention-based Deep Multiple Instance Learning(arXiv:1802.04712)
* DTFD-MIL: Double-Tier Feature Distillation Multiple Instance Learning for Histopathology Whole Slide Image Classification(arXiv:2203.12081)

## 관련 기술

* Learning from label proportions (LLP)
* 다중 라벨 분류(multi-label classification)
* 다항 분류(multiclass classification)
ESPNet

* ESPNet: Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation(arXiv:1803.06815) : 의미론적 분할
* ESPnet: End-to-End Speech Processing Toolkit(arXiv:1804.00015) : 음성 인식

ESPNet에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
Searching for MobileNetV3

Searching for MobileNetV3(arXiv:1905.02244)는 MobileNetV3이라는 MobileNet 시리즈의 3번째 모델을 디자인한 논문이다.

특징
--

Swish 함수와 sigmoid 함수를 hard-swish와 hard-sigmoid로 대체하였다. hard sigmoid는 x ReLU6(x + 3) /6으로 표현된다. 맨 처음 레이어를 빼면, 네트워크의 중간 부분부터 hard-swish를 적용했다.

Squeeze-and-Excitation Networks(arXiv:1709.01507)의 Squeeze-and-Excitation을 이용한다.
MobileNetV3 블록을 바꿔줄 뿐 아니라, non-linear bottleneck으로 돌아왔고, MobileNetV3의 복잡한 마지막 부분을 간략화 하였다.

## MobileNetV3 블록의 구조

입력을 받으면, 1x1 convolution과 활성화 함수를 통해 채널수를 키우는 expantion을 적용한다.

여기에 정해진 kernel\_size의 깊이별 합성곱을 해주고, 그 값을 pooling 하여 Squeeze-and-Excitation을 적용한다. 이값을 합성곱한 값에 곱하여 residual을 얻고, 입력에 더하여 출력을 얻는다.

## 같이 보기

* NetAdapt: Platform-Aware Neural Network Adaptation for Mobile Applications(arXiv:1804.03230)
* Squeeze-and-Excitation Networks(arXiv:1709.01507)
* MnasNet: Platform-Aware Neural Architecture Search for Mobile(arXiv:1807.11626)
* ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware(arXiv:1812.00332)
강화학습

강화학습(reinforcement learning)은 기계학습에서 행동을 바탕으로 결과를 최대화하는 전략을 학습하는 기법이다.

## 같이 보기

* 마르코프 결정 과정( Markov Decision Process, MDP)
* 몬테카를로 트리 탐색
* 동적 계획법
* 심층강화학습
* Q-러닝
* SARSA
* 알파고
* 대규모 언어 모델
* 인간 피드백을 통한 강화 학습 RLHF(Reinforcement Learning from Human Feedback)
* 지도 학습
* C51: A Distributional Perspective on Reinforcement Learning(arXiv:1707.06887)
Wav2vec

wav2vec은 자기 지도 학습 기반 음성 인식(Speech Recognition) 체계이다.

논문
--

* wav2vec: Unsupervised Pre-training for Speech Recognition(arXiv:1904.05862)
* vq-wav2vec: Self-Supervised Learning of Discrete Speech Representations(arXiv:1910.05453)
* wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations(arXiv:2006.11477)
미분방정식

미분방정식(微分方程式, differential equation)은 방정식에 미분 연산자가 들어간 함수방정식이다.

종류
--

* 상미분방정식(ordinary differential equation, ODE)
* 편미분방정식(partial differential equation, PDE)
* 미분대수방정식(differential-algebraic equation, DAE)
* 확률미분방정식(stochastic differential equation, SDE)
* 지연미분방벙식(delay differential equation, DDE)

해법
--

대수적 해법, 수치적 해법으로 나뉘고 방정식 종류에 따라 방법이 다르다.

편미분방정식의 수치해법은 유한요소법, 유한체적법, 유한차분법, 무요소법, 레벨집합 방법 등이 있다. 요즘에는 미분방정식의 신경망 해법도 대두되고 있다.

## 같이 보기

* 차분 연산자
* 수치선형대수학
* 전산유체역학
* 계산과학
* 계산화학
* 수치해석학
* 수치적분
A Gift from Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learning

A Gift from Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learning(doi 10.1109/CVPR.2017.754) 는 FSP라는 관계 기반 지식 증류 기법을 발명한 논문이다. 직접 특징을 비교하는 대신

선생 모델과 학생 모델 내에서 두 레이어를 비교하여 Gramian matrix를 가지고 flow of solution procedure (FSP) matrix를 만들었다.

한 stage 내에서 여러 residual module을 사이에 두고 각 stage별로 한개씩 FSP matrix를 각각 추출하고, 그 차이를 가지고 L2-loss 를 구해서 손실 함수로 삼는다.

실험은 CIFAR-10과 CIFAR-100에 대해 특징 증류 기법인 FitNets: Hints for Thin Deep Nets(arXiv:1412.6550)하고 비교를 수행했다.
Region Proposal Network

Region Proposal Network(RPN), 즉 영역 제안 네트워크는 Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks(arXiv:1506.01497)에서 제안된 바운딩 박스 생성 알고리즘이다.

이 네트워크에서는 이미지를 합성곱 신경망에 통과시키면 크기가 줄어든 특징 맵(feature map)을 얻는 것을 그대로 이용하여, feature map의 셀 위치를 앵커 상자의 중심으로 활용한다. W × H 크기의 특징 맵이라면, 각각의 셀 마다 크기나 사각형의 종횡비가 다른 k개의 앵커 상자를 얻는다.

그 다음 특징 맵에 n × n(일반적으로 3 × 3) 합성곱을 하여 채널 수를 512개로 만든다. 패딩을 해서 크기를 유치시킨다.

그 다음 k개의 앵커에 대해, 각 앵커에 물체가 있거나 없는 확률을 나타내는 2k개의 스코어를 1 × 1 합성곱 cls 레이어(classification)를 통해 얻고, 각 앵커에 대해 바운딩박스의 위치를 앵커 상자당 4개의 좌표로 표시하는 4k개 스코어를 1 × 1 합성곱 reg 레이어(regression)를 통해 얻는다.

제안된 앵커에 객체가 있는지 여부를 맞게 예측했는지에 대한 손실함수와 실제 객체가 맞는 앵커에 대하여 bounding box를 정확하게 계산한 정도에 대한 손실 함수를 더하여 RPN의 손실 함수를 구한다.

장점
--

bounding box에 대해 classification 하는 마지막 과정과 같은 network를 공유함으로서, 훈련 시간을 줄일 수 있다.

## 같이 보기

* RoI pooling
* RoI align
Knowledge Transfer via Distillation of Activation Boundaries Formed by Hidden Neurons

Knowledge Transfer via Distillation of Activation Boundaries Formed by Hidden Neurons(arXiv:1811.03233)는 활성화 함수의 활성화 경계(Activation Boundary)를 이용한 지식 증류 기법에 대한 논문이다. CutMix와 Overhaul의 개발자인 윤상두씨 등, 최진영 교수님과 제자들이 쓴 논문이다.

FitNets: Hints for Thin Deep Nets(arXiv:1412.6550)등 기존의 지식 증류(엄밀히는 특징 증류) 기법들은 MSE 로스를 주로 사용하는데, 그 대신 ReLU가 활성화되는지 아닌지를 잘 예측하는게 옳다고 지적한다. 문제는 ReLU가 활성화되는지에 기반한 함수는 미분 불가능하기 때문에, 이를 불연속점을 제외하고 조각마다 미분가능(piecewise differentiable)하게 근사하였다.

손실 함수는 힌지 손실과 유사한 구조로 되어 선생의 ReLU가 켜져있고 학생의 출력이 mu보다 작은지, 선생의 RELU가 꺼져 있고 학생의 출력이 –mu보다 큰지를 포착하며, 학생의 채널수가 작은 경우 connector function을 이용한다.

최종 수식은 다음과 같이 된다.

L

(
I
# )
‖
ρ
(

T

(
I
)
)
⊙
σ
(
μ
1
−
r
(

S

(
I
)
)
)
(
1
−
ρ
(

T

(
I
)
)
)
⊙
σ
(
μ
1
r
(

S

(
I
)
)
)

‖
2
2

{\displaystyle \mathcal{L}(I) = \| \rho(\mathcal{T}(I)) \odot \sigma(\mu 1 - r(\mathcal{S}(I))) + (1 - \rho(\mathcal{T}(I))) \odot \sigma(\mu 1 + r(\mathcal{S}(I))) \|\_2^2}

이 손실 함수를 이용하면 선생의 출력이 양수인 경우 학생의 출력도 +µ 이상이 되게, 선생의 출력이 음수인 경우 학생의 출력도 -µ이상이 되는 방향으로 움직이도록 손실이 정해진다. 그렇게 되고 나면, 손실이 생기지 않는다.

## 대조군

실험에 사용한 대조군과 그 약칭은 다음과 같다.

* FitNets: Hints for Thin Deep Nets(arXiv:1412.6550): FitNets
* A Gift from Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learning(doi 10.1109/CVPR.2017.754): FSP
* Paying more attention to attention: Improving the performance of convolutional neural networks via attention transfer(arXiv:1612.03928): AT
* Knowledge Transfer with Jacobian Matching(arXiv:1803.00443): Jacobian

개량
--

A Comprehensive Overhaul of Feature Distillation(arXiv:1904.01866)에서는 loss 계산시 학생의 출력을 mu까지만 반영하는 위 방식 대신, 선생 모델에 ReLU 대신 margin이 있는 margin ReLU를 사용하는 것으로 바꾸었다.

## 같이 보기

* A Comprehensive Overhaul of Feature Distillation(arXiv:1904.01866)
BiSeNet

비슷한 이름의 SENet에 관해서는 해당 문서를 참조하십시오.
BiSeNet(Bilateral Segmentation Network)은 의미론적 분할 네트워크이다.

* BiSeNet: Bilateral Segmentation Network for Real-time Semantic Segmentation(arXiv:1808.00897) : BiSeNet V1
* BiSeNet V2: Bilateral Network with Guided Aggregation for Real-time Semantic Segmentation(arXiv:2004.02147) : BiSeNet V2
MobileNetV2: Inverted Residuals and Linear Bottlenecks

MobileNetV2: Inverted Residuals and Linear Bottlenecks(arXiv:1801.04381)은 MobileNetV2이라는 MobileNet 시리즈의 2번째 모델을 디자인한 논문이다.

특징
--

Inverted Residuals 구조와 Linear Bottleneck 이 가장 큰 특징이다.

잔차를 학습할때는, 보통 채널수를 줄인 뒤에 합성곱을 거쳐 잔차를 계산하게 되는데 비선형 변환을 하면서 정보가 손실되어서는 안된다. 따라서 채널 수를 줄인 뒤에 잔차를 계산하지 않고, 채널수를 늘려준 뒤에 레이어 몇개를 거쳐 잔차를 계산하는 Inverted residuals를 적용했다.

또한 채널수를 변화시킨 Bottleneck에서 정보가 손실되지 않도록, ReLU 등의 활성화 함수를 통과시키지 않고, 선형 함수를 이용해 채널수를 늘려 준 뒤 합성곱과 활성함수를 이용해 잔차를 계산하도록 했다.

1)1x1 선형 함수를 이용한 expansion, 2) 3x3 깊이별 합성곱과 상한이 6으로 제한된 ReLU6, 3) 1x1 합성곱과 ReLU6을 이용한 채널수 축소를 통해 결과를 계산했다.

stride가 1이고 입력 채널과 출력 채널 수가 같은 블록은 잔차를 학습하도록 하고, stride가 2인 블록 등은 잔차를 사용하지 않고 직접 학습하되, 3x3 깊이별 합성곱을 이용한 깊이별 합성곱 레이어에 stride를 적용하였다.

## 같이 보기

* SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size(arXiv:1602.07360): SqueezeNet
* ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices(arXiv:1707.01083): ShuffleNet
* SSD: Single Shot MultiBox Detector(arXiv:1512.02325)
* MobileNet
Data-Distortion Guided Self-Distillation for Deep Neural Networks

Data-Distortion Guided Self-Distillation for Deep Neural Networks]](doi 10.1609/aaai.v33i01.33015565)는 DDGSD라는 지식 증류 기법을 발표한 논문이다. 기본 데이터 증대 방법으로 random mirror(flip)과 random crop을 적용해도 레이블은 같다는 성질과, 두 특징 사이에 상관관계가 있다는 성질을 같이 이용해서 자기 지식 증류를 했다.

한 이미지에 Random mirror and cropping을 적용해서 두 이미지로 만든 뒤 같은 특징 추출 네트워크에 넣고, 분류기를 통과하지 않은 두 특징을 얻을 수 있다.
Learning Transferable Features with Deep Adaptation Networks(arXiv:1502.02791)논문에서 제안된 Maximum Mean Discrepancy (MMD)에 의해
두 특징 맵 사이의 MMD를 동시에 비교했다. 그리고 다르게 잘라낸 이미지가 내놓은 출력과 비교하여 지식 증류 손실을 구했다.

MMD를 정칙화 기능으로 황용하면서, 두 결과 사이의 MMD, 두 결과의 참값과의 교차 엔트로피 손실, 두 결과 사이의 교차 엔트로피 등의 합을 손실 함수로 사용한다.

실험
--

실험은 CIFAR-10, CIFAR-100에 대해 ResNet, WideResNet, DenseNet을 적용했다.
지도 학습

지도 학습(supervised learning)은 기계학습에서 입력과 원하는 출력값(정답)을 동시에 공급받는 방식이다.

지도 학습에서는 입력에 대해 모델이 출력을 생성한 뒤, 원하는 출력과 차이가 얼마나 되는지를 이용해 손실 함수(loss function)를 쉽게 계산할 수 있으나, 대신 과적합의 위험이 생긴다. 이를 해결하기 위해 정칙화 과정을 통해 좀더 '매끈한' 모델을 선호하게 할 수 있다.

종류
--

* 결정 트리 학습법
* 최근접 이웃 탐색
* *k*-NN
* 선형 회귀
* 로지스틱 회귀
* 나이브 베이즈 분류
* 서포트 벡터 머신(SVM)
* 선형판별분석(Linear Discriminant Analysis)
* 인공신경망

## 같이 보기

* 비지도 학습(unsupervised learning)
* 준지도 학습(semisupervised learning)
* 능동 학습(active learning)
MnasNet: Platform-Aware Neural Architecture Search for Mobile

MnasNet: Platform-Aware Neural Architecture Search for Mobile(arXiv:1807.11626)은 MobileNetV2에 Squeeze-and-Excitation Networks의 Squeeze-and-Excite 구조를 넣고, 최적 구조를 신경망 아키텍처 탐색(neural architecture search, NAS)기법으로 찾아서 성능을 개선한 논문이다.

## 같이 보기

* Squeeze-and-Excitation Networks(arXiv:1709.01507)
* Learning Transferable Architectures for Scalable Image Recognition(arXiv:1707.07012):NasNet
* MobileNet
Customizing Student Networks From Heterogeneous Teachers via Adaptive Knowledge Amalgamation

Customizing Student Networks From Heterogeneous Teachers via Adaptive Knowledge Amalgamation은 이종 선생(heterogeneous teachers) 네트워크를 이용한 지식 증류 기법에 대한 논문이다.

구조
--

소스 넷을 한 태스크에 대한 것과 멀티 태스크에 대한 네트워크로 나눈다. 엄밀히는 전자는 후자의 특별한 경우이다.

1) 사용자가 지정한 특정 태스크 정보를 포함하는 소스를 고르고, 그룹으로 나눈다. 이를 통해 지식 증류를 거쳐 지정된 태스크 한 개를 잘 해결할 수 있는 component net을 만든다.

2) 두번째 라운드에서는 component net의 이종의 지식을 결합시켜 지정된 여러 태스크를 잘 할 수 있는 target net을 만든다.

Transfer Bridge
학생과 선생의 지식이 연결되는 부분이다.
Feature Alignment (FA)를 통해 원하는 태스크에 대한 지식만 골라주는 필터 처리를 거친다.

학생과 선생 사이에 대응되는 블록의 차이에 L2 노름을 취하고, 채널 수와 픽셀수로 나누어 vanilla transfer loss를 구한다. 모든 특징이 0으로 붕괴되지 않도록 정칙화한다.

Feature Alignment의 가중치의 제곱의 합이, 1이 되도록 하는 제약조건을 걸되, hard constraint 대신 soft constraint로 걸어준다.

Selective Learning
같은 태스크를 학습시킬 수 있는 선생을 고르기 위해, 엔트로피 관점에서 가장 정확하게 예측하는 선생을 이용했다.

## 참고 논문

* Multi-Task Zipping via Layer-wise Neuron Sharing(arXiv:1805.09791): MTZ
* Knowledge Flow: Improve Upon Your Teachers(arXiv:1904.05878): Knowledge Flow
* Amalgamating Knowledge towards Comprehensive Classification(arXiv:1811.02796)
* Going Deeper with Convolutions(arXiv:1409.4842)
* Deep Residual Learning for Image Recognition(arXiv:1512.03385)
* Densely Connected Convolutional Networks(arXiv:1608.06993)
MTZ

MTZ의 뜻은 다음과 같다.

* 맨틀 전이대
* Multi-Task Zipping via Layer-wise Neuron Sharing(arXiv:1805.09791): MTZ

MTZ에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
명확화

명확화(Disambiguation)란 의미가 다르지만 철자나 발음이 같은 다의어, 동음이의어(homophone), 동형이의어(homograph), 동철이음이의어(heteronym), 동명이인 등을 구분하는 것이다.

단어 의미 명확화(Word-sense disambiguation, WSD), 저자 이름 명확화(Author name disambiguation), 기관 및 소속, 장소 명확화 등이 명확화와 관련된 과제이다. 냉전 시대에 기계 번역을 위해 개발된 초기 인공지능은 자동으로 단어만 대치시키면 번역이 끝날 것으로 생각했으나 의미를 구별할 방법이 없어서 실패하였고, 쓸만한 기계번역을 위한 컴퓨터 과학과 인공신경망의 개발과 발전을 필요로 하였다.

명확화를 위해 식별자(identifier)를 사용하거나, 글에서는 괄호나 주석을 위해 의도한 뜻을 부기하는 것이 가능하다.

## 같이 보기

* 중의성
* 모호성
* 착시
* 자연어 처리
* 클러스터 분석
* 기계 번역
경량 신경망

경량 신경망(light-weight neural network)은 여전히 딥러닝에 속하는 심층 인공신경망이면서도 모바일 기기에 적합하도록 계산에 드는 자원과 시간을 절감한 인공신경망이다. 컴퓨터 비전용 합성곱 신경망이 많이 개발되어 있지만 비전 변환기에서도 개발이 되어 있다.

종류
--

### 합성곱 신경망

* MobileNet(모바일넷)
	+ MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications(arXiv:1704.04861): MobileNetV1
	+ MobileNetV2: Inverted Residuals and Linear Bottlenecks(arXiv:1801.04381): MobileNetV2
	+ Searching for MobileNetV3(arXiv:1905.02244): MobileNetV3
* SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size(arXiv:1602.07360): SqueezeNet
* ShuffleNet(셔플넷)
	+ ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices(arXiv:1707.01083): ShuffleNet V1
	+ ShuffleNet V2: Practical Guidelines for Efficient CNN Architecture Design(arXiv:1807.11164): ShuffleNet V2

* CondenseNet: An Efficient DenseNet using Learned Group Convolutions(arXiv:1711.09224): CondenseNet
* Shift: A Zero FLOP, Zero Parameter Alternative to Spatial Convolutions(arXiv:1711.08141): ShiftNet
* GhostNet
	+ GhostNet: More Features from Cheap Operations(arXiv:1911.11907): GhostNetV1
	+ GhostNetV2: Enhance Cheap Operation with Long-Range Attention(arXiv:2211.12905): GhostNetV2
* FBNet
	+ FBNet: Hardware-Aware Efficient ConvNet Design via Differentiable Neural Architecture Search(arXiv:1812.03443): FBNet
	+ FBNetV2: Differentiable Neural Architecture Search for Spatial and Channel Dimensions(arXiv:2004.05565): FBNetV2
* MixConv: Mixed Depthwise Convolutional Kernels(arXiv:1907.09595)
* AtomNAS: Fine-Grained End-to-End Neural Architecture Search(arXiv:1912.09640)
* MoGA: Searching Beyond MobileNetV3(arXiv:1908.01314)
* ESPNet: Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation(arXiv:1803.06815)
* ESPNetv2: A Light-weight, Power Efficient, and General Purpose Convolutional Neural Network(arXiv:1811.11431)
* ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware(arXiv:1812.00332) : ProxylessNAS-Mobile
* Once-for-All: Train One Network and Specialize it for Efficient Deployment(arXiv:1908.09791)

### 비전 변환기

* MobileViT: Light-weight, General-purpose, and Mobile-friendly Vision Transformer(arXiv:2110.02178): MobileViT

### 비디오 처리

* MoViNets: Mobile Video Networks for Efficient Video Recognition(arXiv:2103.11511): MoViNet

## 같이 보기

* 저전력 컴퓨터 비전 챌린지(Low-Power Computer Vision Challenge)
* TinyML
* 경량 대규모 언어 모델(small Large Language Model,sLLM)
점구름

점구름(point cloud)은 공간(일반적으로 3차원)에 점들의 집합으로 데이터가 저장된 것이다.

과제
--

* 점구름 완성(Point-Cloud Completion)

## 네트워크

* PointNet
	+ PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation(arXiv:1612.00593)
	+ PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space (arXiv:1612.00593)
* VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection(arXiv:1711.06396)
* SECOND: Sparsely Embedded Convolutional Detection
* PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud(arXiv:1812.04244)
* PointPillars: Fast Encoders for Object Detection from Point Clouds(arXiv:1812.05784)
* PIXOR: Real-time 3D Object Detection from Point Clouds(arXiv:1902.06326)
* Point-Cloud Completion with Pretrained Text-to-image Diffusion Models(arXiv:2306.10533)

## 같이 보기

* 메시
* 복셀
* 스틱셀
ImageNet

ImageNet은 여러 이미지 처리에 쓸 수 있는 대규모의 데이터셋 프로젝트이다.

종류
--

* ImageNet-21K
* ImageNet-1K
* ImageNet V2

단점
--

ImageNet이 많이 사용되고 있긴 하지만, 여러 label에 해당하는 이미지가 포함된 이미지가 있다. 이를 해결하기 위해 다시 labeling한 ImageNet V2가 있고, Re-labeling ImageNet: from Single to Multi-Labels, from Global to Localized Labels(arXiv:2101.05022) 에서는 한 이미지를 여러 label로 labeling 할 것을 제안했다.

## 파생 데이터셋

* Tiny ImageNet
* ImageNet-A: Natural Adversarial Examples (arXiv:1907.07174)

* ImageNet-O: Natural Adversarial Examples (arXiv:1907.07174)
* ImageNet-R: The Many Faces of Robustness: A Critical Analysis of Out-of-Distribution Generalization (arXiv:2006.16241)

* ImageNet-C: Benchmarking Neural Network Robustness to Common Corruptions and Perturbations (arXiv:1903.12261)
* ImageNet ReaL: Are we done with ImageNet? (arXiv:2006.07159)
* ImageNet-S: Large-scale Unsupervised Semantic Segmentation (arXiv:2106.03149)
* ImageNet-X: ImageNet-X: Understanding Model Mistakes with Factor of Variation Annotations (arXiv:2211.01866)
* ImageNet-LT: Large-Scale Long-Tailed Recognition in an Open World (arXiv:1904.05160)
* ImageNet V2
DPT

DPT의 뜻은 다음과 같다.

* 덴스 예측 변환기 (Dense Prediction Transformer)
	+ Vision Transformers for Dense Prediction(arXiv:2103.13413)
* 깊이 추정 변환기 (Depth Prediction Transformer)
* DPT 백신

DPT에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
Co-Mixup: Saliency Guided Joint Mixup with Supermodular Diversity

Co-Mixup: Saliency Guided Joint Mixup with Supermodular Diversity(arXiv:2102.03065)은 mixup을 개량하여 Submodular-Supermodular optimization을 적용한 논문이다.

원리
--

주목도(Saliency)
본 논문에서는 기존 기법이 Saliency를 무시해 문제가 발생했다고 설명한다. 이를 위해 Saliency Map(주목도 지도)를 계산할때, 뒤섞인 데이터의 Saliency를 최대로 하고자 하였다. 그래서 graident를 기준으로 Saliency 측정하여 주목도의 음수배를 비용으로 적용하고, 이웃한 점끼리 mixing 비율이 연속적으로 변하게 하고, mixing 비율에 로그를 취한 값을 빼어 모든 픽셀에서 각 이미지가 조금씩은 섞이게 하였다.

다양성(Diversity)
이 방법으로 배치에서 섞인 이미지를 자동 생성한 결과 모두 같은 이미지만 생성되면 안되어, 배치에서 생성된 이미지들간의 유사성을 측정해 출력의 다양성을 확보했다.

Over-penalization (과잉처벌)
비유사도를 억지로 최대화할 경우 비둘기집의 원리에 의해 섞이지 않는 이미지가 생긴다.

유사도를 이용해 정해진 compatibility term이 일정 수치 이하이면, 그걸 줄이기 위한 penalty를 적용하지 않았다.

compatibility term이 서브모듈러 함수의 반대인 슈퍼모듈러 함수를 증명하였다.

## 같이 보기

* Manifold Mixup: Better Representations by Interpolating Hidden States(arXiv:1806.05236)
* Puzzle Mix: Exploiting Saliency and Local Statistics for Optimal Mixup (arXiv:2009.06962)
관계 기반 지식 증류

관계 기반 지식 증류(Relation-Based Knowledge Distillation)는 지식 증류 중에서 인스턴스 간, 레이어 간의 관계가 선생 모델과 학생 모델에서 보존되는데 초점을 맞춘 지식 증류이다.

Knowledge Distillation: A Survey(arXiv:2006.05525) 논문과 Categories of Response-Based, Feature-Based, and Relation-Based Knowledge Distillation(arXiv:2306.10687) 등에서는 로짓, 특징 기반으로 나누는 2분법 대신 3가지 기준으로 지식 증류를 나눈다.

* 응답 기반 지식 증류(Response-Based Knowledge Distillation): 로짓 증류
* 특징 기반 지식 증류(Feature-Based Knowledge Distillation): 특징 증류
* 관계 기반 지식 증류(Relation-Based Knowledge Distillation)
	+ 관계 기반 샘플 간 지식 증류(Relation-based Cross-Sample Knowledge Distillation)
	+ 관계 기반 레이어 간 지식 증류(Relation-based Cross-Layer Knowledge Distillation)

관계 기반 지식 증류는 다시 여러 인스턴스의 출력의 관계를 선생과 학생 사이에서 비슷하게 만드는 것과, 같은 인스턴스 내에서 레이어간 출력의 차이를 선생과 학생 사이에서 비슷하게 만드는 것 2가지 종류로 나뉜다.

논문
--

* A Gift from Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learning(doi 10.1109/CVPR.2017.754): FSP (flow of solution procedure)
* Learning from Multiple Teacher Networks(doi 10.1145/3097983.3098135, SIGKDD)
* Better and Faster: Knowledge Transfer from Multiple Self-supervised Learning Tasks via Graph Distillation for Video Classification(arXiv:1804.10069)
* DarkRank: Accelerating Deep Metric Learning via Cross Sample Similarities Transfer(arXiv:1707.01220) : DarkRank
* Graph-based Knowledge Distillation by Multi-head Attention Network(arXiv:1907.02226) : MHGD
* Relational Knowledge Distillation(arXiv:1904.05068) : RKD
* Knowledge Distillation via Instance Relationship Graph(doi 10.1109/CVPR.2019.00726, CVPR 2019) : IRG
* Similarity-Preserving Knowledge Distillation(arXiv:1907.09682) : SP
* Correlation Congruence for Knowledge Distillation(arXiv:1904.01802) : CCKD
* Learning Metrics from Teachers: Compact Networks for Image Embedding(arXiv:1904.03624) : MLKD
* Probabilistic Knowledge Transfer for Lightweight Deep Representation Learning(doi 10.1109/TNNLS.2020.2995884) : PKT(Probabilistic Knowledge Transfer) (arXiv:1803.10837)
* Heterogeneous Knowledge Distillation using Information Flow Modeling(arXiv:2005.00727)
* Learning Student Networks via Feature Embedding(arXiv:1812.06597) : LP(Local Preserving)
* Cross-Image Relational Knowledge Distillation for Semantic Segmentation(arXiv:2204.06986) : CIRKD
삼중항 손실

삼중항 손실(三重項損失) 혹은 트리플렛 손실(Triplet loss)은 같은 클래스에 속하는 입력끼리는 출력이 가깝게, 다른 클래스에 속하는 입력끼리는 출력이 멀게 하는 손실 함수이다.

논문
--

* FaceNet: A Unified Embedding for Face Recognition and Clustering(arXiv:1503.03832)
* In Defense of the Triplet Loss for Person Re-Identification(arXiv:1703.07737)
* Multi-Scale Triplet CNN for Person Re-Identification(doi 10.1145/2964284.2967209)
초해상도

초해상도(Super-resolution, SR)는 해상도를 높이는 기술이다. 광학 기기를 작게 만드는 광학적 초해상도 방법과 이미 해상도가 원하는 것보다 작게 찍힌 영상의 해상도를 높이는 컴퓨터 비전 기법으로 나뉜다. 기계학습에서 다루는 것은 후자를 가리킨다.

기법
--

### GAN 기반

* Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network(arXiv:1609.04802) : SRGAN

### 변환기(Transformer) 기반

* Activating More Pixels in Image Super-Resolution Transformer(arXiv:2205.04437)

### 지식 증류 기반

* Data-Free Knowledge Distillation For Image Super-Resolution(doi 10.1109/CVPR46437.2021.00776)
* Residual Feature Distillation Network for Lightweight Image Super-Resolution(arXiv:2009.11551)

### 분류 필요/미분류

* PULSE: Self-Supervised Photo Upsampling via Latent Space Exploration of Generative Models(arXiv:2003.03808)
Exploring Simple Siamese Representation Learning

Exploring Simple Siamese Representation Learning(arXiv:2011.10566)은 샴 신경망을 이용한 자기 지도 학습 기법 SimSiam을 다룬 논문이다. 샴 신경망은 가중치를 공유하는 인공신경망 2개에 서로 다른 입력을 넣는 신경망이다.

내용
--

음의 코사인 유사도(negative cosine similarity)를 사용한 것, random augmentation, projection, predictor를 사용한 것, stop gradient를 사용한 것은 Bootstrap Your Own Latent A New Approach to Self-Supervised Learning(arXiv:2006.07733)과 동일하나, 샴 신경망을 사용했다. 따라서 양 네트워크가 모두 predictor가 달려 있고, 다만 stop gradient를 적용할때는 predictor에 들어가기 전의 값에 stop gradient를 적용한다.

## 의사코드

```
Algorithm 1 SimSiam Pseudocode, PyTorch-like
# h: prediction mlp
for x in loader: # load a minibatch x with n samples
    x1, x2 = aug(x), aug(x) # random augmentation
    z1, z2 = f(x1), f(x2) # projections, n-by-d
    p1, p2 = h(z1), h(z2) # predictions, n-by-d
    L = D(p1, z2)/2 + D(p2, z1)/2 # loss
    L.backward() # back-propagate
    update(f, h) # SGD update
def D(p, z): # negative cosine similarity
    z = z.detach() # stop gradient
    p = normalize(p, dim=1) # l2-normalize
    z = normalize(z, dim=1) # l2-normalize
    return -(p*z).sum(dim=1).mean()

```

## 같이 보기

* 비대조 학습(non-contrastive learning)
* Bootstrap Your Own Latent A New Approach to Self-Supervised Learning(arXiv:2006.07733)
* SimCLR
* MoCo
* Unsupervised Learning of Visual Features by Contrasting Cluster Assignments(arXiv:2006.09882) : SwAV
Improved Knowledge Distillation via Teacher Assistant

Improved Knowledge Distillation via Teacher Assistant(doi 10.1609/aaai.v34i04.5963) 논문은 지식 증류를 할때 선생 모델과 학생 모델 사이의 지식을 줄이기 위해 교육조교(Teacher Assistant) 모델을 이용해 갭을 줄이는 TAKD(Teacher Assistant) 지식 증류법을 발표한 논문이다.

한계
--

Densely Guided Knowledge Distillation using Multiple Teacher Assistants(arXiv:2009.08825) 논문에 따르면 이 기법은 오류 눈사태(error avalanche) 문제에 취약하다. 상위 단계의 조교가 잘못되면 그 오류가 계속 하위 단계 조교와 학생에게 파급된다.

## 같이 보기

* Deep Mutual Learning(arXiv:1706.00384)
* Knowledge Distillation with Adversarial Samples Supporting Decision Boundary(arXiv:1805.05532)
* On the Efficacy of Knowledge Distillation(arXiv:1910.01348)

## 유사한 교육조교 기반 지식 증류

* Densely Guided Knowledge Distillation using Multiple Teacher Assistants(arXiv:2009.08825)

## 다른 강한 선생용 지식 증류

* Knowledge Distillation from A Stronger Teacher(arXiv:2205.10536)
ConvNeXt

ConvNeXt는 A ConvNet for the 2020s(arXiv:2201.03545) 논문에서 제안된 합성곱 신경망이다. 비전 변환기의 ViT과 Swin Transformer가 등장한 후 밀려버린 SOTA를 되찾기 위해 ResNeXt와 Swin Transformer의 장점을 따서 만들었다.

## 주요 구조

* Inverted Bottleneck 구조 사용
* 큰 커널 사이즈의 depth-wise convolution을 도입하고, 한 ConvNeXt Block중 맨 앞에 배치하기
* 활성화 함수와 정규화 레이어의 종류를 바꾸고, 사용횟수를 줄임

## 블록 구조

X-d 입력에 대해 skip-connection을 거치지 않은 입력은 depthwise 7x7 합성곱을 지나, 레이어 정규화만을 거친 뒤 1x1 inverted bottleneck에서 4X-d 채널로 불어나고, GELU를 거친 뒤 1x1 inverted bottleneck에서 X-d 채널로 줄어들고, skip-connection과 합쳐진다.

ResNet을 위시한 기존의 합성곱 신경망에서는 합성곱 사이에 배치 정규화와 활성화 함수(ReLU)를 각각 1개씩 포함되어 있는데 이들은 성능 개선을 위해 활성화 함수를 GELU로, 정규화를 레이어 정규화(Layer Normailzation, LN)으로 바꾸고, 사용 횟수를 줄였다.

종류
--

모델 크기 별로 5개가 있다.

* ConvNeXt-T (Tini)
* ConvNeXt-S (Small)
* ConvNeXt-B (Big)
* ConvNeXt-L (Large)
* ConvNeXt-XL (eXtra Large)

앞의 4가지 각각은 대응되는 Swin Transformer와 FLOPs가 비슷하게 만들어졌다.

## 같이 보기

* RepLKNet
* SLaK
* Swin Transformer
* ResNeXt
CutMix

CutMix는 CutMix: Regularization Strategy to Train Strong Classifiers with Localizable Features(arXiv:1905.04899)에서 제안된 데이터 증대기법으로, 이미지를 오려서 붙이는 방식으로 섞어주고 label도 섞어 주었다.

## 유사 기법

* mixup: Beyond Empirical Risk Minimization(arXiv:1710.09412) : mixup
* Improved Regularization of Convolutional Neural Networks with Cutout(arXiv:1708.04552) : Cutout

## 같이 보기

* A Comprehensive Overhaul of Feature Distillation(arXiv:1904.01866)
* Knowledge Transfer via Distillation of Activation Boundaries Formed by Hidden Neurons(arXiv:1811.03233)
NAS

NAS의 뜻은 다음과 같다.

* 신경망 아키텍처 탐색(neural architecture search)
* 네트워크 결합 스토리지(network-attached storage

NAS에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
변환기

변환기(變換機) 또는 트랜스포머(transformer)는 자기 주의집중(self-attention)을 이용한 멀티헤드 주의집중을 활용하는 딥러닝 네트워크이다.

Attention Is All You Need(arXiv:1706.03762) 논문에서 제안된 딥러닝 네트워크이다.

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale(arXiv:2010.11929)을 통해 비전 변환기(Vision transformer)가 만들어지 등 컴퓨터 비전 으로 적용 범위가 넓어졌다.

## 같이 보기

* LSTM
* 순환 신경망
* 자연어 처리
잘못 설정된 문제

잘못 설정된 문제(Ill-posed problem)는 해가 무수히 많거나 없거나 불연속적으로 변하는 문제이다. Ill-posed란 직역하면 **나쁜 자세의**, **나쁜 포즈의**를 뜻한다.

ill-conditioned라는 개념도 있는데, 해가 연속적으로 변하기는 하지만 조건이 변하면 해가 급격히 변하는 것을 가리킨다.

그러한 정도를 조건수(Condition number)로 측정하며 특이행렬의 조건수는 무한하다.

딥러닝 이미지 처리에서 이미지의 해상도를 높이는 초해상도(Super-resolution, SR) 문제나 이미지를 컬러화하는 문제처럼 이미지를 복원하는 문제도 대표적인 Ill-posed 문제이다.
Equivariant Contrastive Learning

Equivariant Contrastive Learning(arXiv:2111.00899)은 자기 지도 학습이자 대조 학습 기법인 E-SSL(Equivariant-SSL)을 개발한 논문이다.

## 관련 논문

* MoCo (He et al., 2020) Methods
* SimCLR (Chen et al., 2020)
* BYOL (Grill et al., 2020) : Bootstrap Your Own Latent A New Approach to Self-Supervised Learning(arXiv:2006.07733)
* BT (Zbontar et al., 2021) : Barlow Twins: Self-Supervised Learning via Redundancy Reduction(arXiv:2103.03230)
* DINO (Caron et al., 2021) : Emerging Properties in Self-Supervised Vision Transformers(arXiv:2104.14294)

* Egomotion (Agrawal et al., 2015) : Learning to See by Moving(arXiv:1505.01596)
* Context (Doersch et al., 2015) : Unsupervised Visual Representation Learning by Context Prediction(arXiv:1505.05192)
* Colorization (Zhang et al., 2016) : Colorful Image Colorization(arXiv:1603.08511)
* Jigsaw (Noorozi & Favaro., 2016) : Unsupervised Learning of Visual Representations by Solving Jigsaw Puzzles(arXiv:1603.09246)
* RotNet (Gidaris et al., 2018) : Unsupervised Representation Learning by Predicting Image Rotations(arXiv:1803.07728)

* SimSiam : Exploring Simple Siamese Representation Learning(arXiv:2011.10566)
Selective Search for Object Recognition

**Selective Search for Object Recognition**(doi 10.1007/s11263-013-0620-5)은 **Selective Search**라는 바운딩 박스 생성 방법을 다룬 논문이다.

Felzenszwalb 알고리즘 등의 알고리즘을 이용해서 이미지를 과도한 조각으로 나누는 over-segmentation을 수행한 뒤, Hierarchical Grouping Algorithm에 의해 이를 통합한다.

그 방법은 이웃한 영역끼리 유사도(similarity)를 계산하고, 유사도가 다 구해지면 가장 높은 유사도를 가진 영역을 합치는 것이다.
합쳐진 각각 영역의 유사도 정보를 제거한 뒤 합쳐진 영역과 새 이웃영역의 유사도를 계산해 유사도 모음을 갱신하고, 이 과정을 반복하면 모든 영역을 합칠 수 있다.

적절히 영역의 수가 줄어들면 이것을 바탕으로 바운딩 박스를 생성할 수 있게 된다.

활용
--

영역 기반 합성곱 신경망 시리즈의 초기 버전 R-CNN과 Fast R-CNN에서 사용된 바운딩 박스 생성 방법이다. Faster R-CNN 부터는 Region Proposal Network를 도입했다.

## 외부 링크

* IJCV2013 논문 소개
* 파일 링크
ALP-KD: Attention-Based Layer Projection for Knowledge Distillation

ALP-KD: Attention-Based Layer Projection for Knowledge Distillation(arXiv:2012.14022)는 ALP-KD라는 특징 증류 기법에 대한 논문이다.

Patient Knowledge Distillation for BERT Model Compression(arXiv:1908.09355)라는 Patient KD(PKD) 기법과

Why Skip If You Can Combine: A Simple Knowledge Distillation Technique for Intermediate Layers(arXiv:2010.03034)의 CKD(combinatorial KD)기법을 참고해서, 선생이 깊고 학생이 얕은 경우 어떻게 학생과 선생의 레이러를 서로 대응시킬지에 대해 구상했다. 그 결과로 학생의 레이어에 여러 선생 레이어를 대응시키되, 스승의 레이어들을 단순히 차원만 맞춘뒤 concatenation을 하는 CKD 대신, 한 학생 레이어에 대응되는 여러 선생 레이어에 대해 주의집중 가중치를 계산해서 더해주었고 이를 Attention-Based Layer Projection이라고 한다.

특징 증류 손실인 ALP 손실과 로짓 증류 손실인 KD 손실, 교차 엔트로피 손실을 더하여 손실 함수를 구성했다.
신경망 아키텍처 탐색

**신경망 아키텍처 탐색**(neural architecture search, NAS)은 인공신경망의 구조를 자동적으로 탐색하는 기술이다. 신경망의 구조는 같은데 학습과정을 다르게 하는 방법은 다른 자동 기계학습(AutoML) 분야의 영역에 속한다.

논문
--

* Neural Architecture Search with Reinforcement Learning(arXiv:1611.01578)
* Learning Transferable Architectures for Scalable Image Recognition(arXiv:1707.07012) : NASNet
* MnasNet: Platform-Aware Neural Architecture Search for Mobile(arXiv:1807.11626)
* NetAdapt: Platform-Aware Neural Network Adaptation for Mobile Applications(arXiv:1804.03230)
* Genetic CNN(arXiv:1703.01513) : 유전 알고리즘 이용
인공신경망

인공신경망(Artificial neural network)은 생체의 신경망처럼 인공 뉴런을 연결하여 기계학습된 결과를 출력하는 모델이다.

종류
--

* 순환 신경망
* 합성곱 신경망
* 스파이크 신경망(Spiking neural network)
* 양자 신경망
* 변환기
* 퍼셉트론
* 다층 퍼셉트론
* 순방향 신경망
* 오토인코더
* 확률 신경망(Probabilistic neural network, PNN)
* 방사기저함수 네트워크
* 제한 볼츠만 기계

용어
--

* 학습률
* 초매개변수
* 역전파
* 순전파
* 옵티마이저
* 신경망 아키텍처 탐색
* 기계학습

## 같이 보기

* 딥러닝
* 강화학습
* 제어 이론
* 복잡계
* 신경과학
* 회귀분석
* 계산과학
DeepLab

DeepLab(딥랩)은 의미론적 분할(semantic segmentation) 딥러닝 모델군이다.

* Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs(arXiv:1412.7062): DeepLab V1
* DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs(arXiv:1606.00915): DeepLab V2
* Rethinking Atrous Convolution for Semantic Image Segmentation(arXiv:1706.05587): DeepLab V3
* Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation(arXiv:1802.02611): DeepLab V3+
* Auto-DeepLab: Hierarchical Neural Architecture Search for Semantic Image Segmentation(arXiv:1901.02985): Auto-DeepLab
* kMaX-DeepLab: k-means Mask Transformer(arXiv:2207.04044): kMaX-DeepLab
EfficientDet: Scalable and Efficient Object Detection

EfficientDet: Scalable and Efficient Object Detection(arXiv:1911.09070)은 EfficientNet을 개량하고 또한 Feature Pyramid Networks for Object Detection을 개량한 양방향 특징 피라미드 네트워크(BiFPN)을 도입한 객체 탐지 네트워크에 대한 논문이다.

## 주요 인용 논문

### 합성곱 신경망 관련

* EfficientNet: Rethinking Model Scaling for Convolutional Neural Network(arXiv:1905.11946)

### 특징 피라미드 구조 관련

* Feature Pyramid Networks for Object Detection
* Path Aggregation Network for Instance Segmentation(arXiv:1803.01534)
영상 분할

영상 분할(image segmentation) 또는 이미지 분할은 이미지의 픽셀을 의미있는 조각으로 분할하는 과정이다.

종류
--

2차원 영상의 분할은 어떻게 분할하느냐에 따라 3가지 종류로 나뉜다.

* 의미론적 분할(Semantic segmentation): 사람이냐 자동차냐 전봇대냐만 분류하고, 각각 다른 개체인지는 구분하지 않는 기법
* 인스턴스 분할(Instance segmentation): 서로 다른 개체만 구분하고 개체의 종류는 분류하지 않는 기법
* 팬옵틱 분할(Panoptic segmentation): 개체의 종류와, 서로다른 개체를 식별하여 의미론적 분할과 인스턴스 분할을 모두 수행하는 방법

용어
--

* Thing Class : 사람이나 자동차, 토끼처럼 서로 다른 개체를 분리할 수 있는 개체이다.
* Stuff Class : 바다나 하늘 처럼 개체를 분리할 수 없는 것이다.
* Void Class : 빈 영역처럼 개체가 없는 영역이다.

## 딥러닝 모델

* 인코더-디코더 구조(encoder-decoder structure)를 한 U-Net 등이 있다.

## SOTA

* semantic-segmentation
* instance-segmentation
* panoptic-segmentation
Knowledge Distillation via Instance Relationship Graph

Knowledge Distillation via Instance Relationship Graph는 인스턴스 관계 그래프(Instance Relationship Graph, IRG)를 이용한 관계 기반 지식 증류기법에 대한 논문이다.

IRG 그래프는 인스턴스 관계(instance relationship)를 변(edge)로, 인스턴스 특징(instance feature)를 꼭짓점(vertex)로 취한다.

l번째 레이어에 대한 인스턴스 그래프 IRGl을 정의하고, l1번째 레이어와 l2번째 레이어를 동시에 사용한 IRG-tl1l2를 정의한다.

선생과 학생 사이의 IRGl의 차이로 LIRG를 정의하고 선생과 학생 사이의 IRG-tl1l2의 차이로 IRG Transformation에 대한 손실인 LIRG-t를 정의한다.

LIRG는 로짓 증류 손실과, 인스턴스 간의 L2 거리 차이에서 유래된 항을 자연스레 포함한다.

로짓 예측의 정확성을 나타내는 소프트맥스 손실 LGT과 LIRG, LIRG-t에 적절한 가중치를 곱해 더하여 손실 함수 LMRK를 정의하고 이를 최적화한다.

실험
--

CIFAR-10, ResNet, ShuffleNet 등을 이용했다.
준식별자

준식별자(準識別子, quasi-identifier, QID)는 고유 식별자가 아니고, 식별자가 아닌 것으로 여겨질때가 많지만 다른 준식별자와의 결합을 통해 고유 식별자가 될 수 있는 것이다. 예를 들어서 생존 인물의 생일은 약 3만여개로 사람을 나누지만, 같은 날에 태어난 사람은 얼마든지 많을 수 있기 때문에 보통 타인을 식별하지 않는 정보로 여겨질 수 있다. 그러나 다른 정보와 결합하면 사람을 하나로 특정할 수 있는 경우가 많다.

## 같이 보기

* 재식별화(re-identification)
* 비식별화(de-identification)
* 차분 프라이버시
* k-익명성(k-anonymity)
* l-다양성(l-diversity)
* t-근접성(t-closeness)
SEED

* SEED (암호)
* SEED: Self-supervised Distillation For Visual Representation(arXiv:2101.04731)

SEED에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
QKD

QKD의 뜻은 다음과 같다.

* 양자화 지식 증류(Qunatitized Knowledge Distillation) : 매개변수 양자화를 고려한 지식 증류
	+ QKD: Quantization-aware Knowledge Distillation(arXiv:1911.12491)
* 양자 키 분배(Quantum Key Distribution) : 양자암호 체계의 하나

QKD에 대한 명확화 문서아 문서는 같은 제목을 공유하는 문서에 대한 명확화 문서입니다.Please follow one of the disambiguation links below or search to find the page you were looking for if it is not listed. If an internal link led you here, you may wish to change the link to point directly to the intended article.
깊이 추정

깊이 추정(Depth Estimation) 또는 깊이 예측(Depth Prediction)은 컴퓨터 비전 또는 기타 신호 처리의 과제이다. 기본적으로 신호를 이용한 추정과 컴퓨터 비전을 이용한 추정으로 나뉘고, 컴퓨터 비전을 이용한 깊이 추정은 단안 깊이 추정(Monocular depth estimation)과 스테레오 정합(Stereo matching)을 이용한 스테레오 깊이 추정(Stereo depth estimation)으로 나뉜다.

## 컴퓨터 비전

* 단안 깊이 추정(Monocular depth estimation)
* 스테레오 깊이 추정(Stereo depth estimation)

### 논문

단안 깊이 추정(Monocular depth estimation)
* Unsupervised Monocular Depth Estimation with Left-Right Consistency(arXiv:1609.03677) : Monodepth1
* Digging Into Self-Supervised Monocular Depth Estimation(arXiv:1806.01260) : Monodepth2

스테레오 깊이 추정(Stereo depth estimation)
* Pyramid Stereo Matching Network(arXiv:1803.08669)
* AANet: Adaptive Aggregation Network for Efficient Stereo Matching(arXiv:2004.09548)

## 신호 처리 기반 깊이 추정

자율주행 같은 경우 레이다(radar)나 라이다(lidar)를 이용해 점구름(point cloud)이나 깊이가 정확한 선분들을 추출하여 이를 바탕으로 깊이 지도(depth map)를 완성한다.

## 멀티모달 깊이 추정

멀티모달 학습(Multimodal learning)을 이용한 기법들은 여러 데이터 모달리티를 이용해 깊이를 추정한다.

## 같이 보기

* RGBD
* RGBD 카메라
* 스테레오 정합

## 외부 링크

* depth-estimation
* monocular-depth-estimation
* stereo-depth-estimation
Deformable Convolutional Networks

Deformable Convolutional Networks(arXiv:1703.06211)은 변형 가능한 합성곱(deformable convolution)을 제안한 딥러닝 논문이다.

SIFT(Scale Invariant Feature Transform, 척도 불변 특징 변환)와 같은 변형에 강인한 특징을 학습하는 방법으로 기존의 합성곱을 변형 가능한 합성곱(deformable convolution)으로 바꿀 것을 제안했다. 이를 통해 segment 경계에서 합성곱에 사용할 point 들이 가급적 같은 객체에 오도록 할 수 있었다.

실험
--

* Faster R-CNN : Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks(arXiv:1506.01497)
* R-FCN : R-FCN: Object Detection via Region-based Fully Convolutional Networks(arXiv:1605.06409)
EfficientNet

EfficientNet(에피션트넷)은 적은 매개변수(parameter)로도 효율적인 네트워크를 만들고, 연산자원의 크기에 따라 모델 규모를 적절한 비율로 키울 수 있도록 한 합성곱 신경망이다.

EfficientNet: Rethinking Model Scaling for Convolutional Neural Network(arXiv:1905.11946)에서 제안되었다.

구조
--

MobileNetV2과 [[MnasNet: Platform-Aware Neural Architecture Search for Mobile|서 제안된 mobile inverted bottleneck (MBConv)으로 네트워크를 쌓고

SENet의 Squeeze and excitation 을 넣어서 네트워크를 만들었다.

### MBConv

ResNet의 bottleneck에서는

1x1 합성곱으로 채널을 줄인 뒤 3x3 합성곱을 하고 다시 1x1 합성곱 연산으로 채널을 늘이고, 3개의 합성곱을 건너뛰어 시작과 뒤를 연결하는 skip connection이 있는 Bottleneck block을 만든다

그러나 MBConv에서는 풍부한 채널에 대해 3x3 conv를 해야 성능이 잘 나온다는 철학에 따라 채널 수를 늘린뒤 3x3 conv를 하고 다시 채널수를 줄이되, 연산량을 줄이기 위해 3x3 conv는 깊이별 합성곱(depthwise convolution)을 적용한다.

### 활성화 함수

ReLU6이나 ReLU를 사용한 종래의 MBConv 기반 네트워크와 달리 SiLU (Swish-1)를 적용했다. Swish는 ReLU와 달리 입력이 항상 미분 가능하고, 입력이 음수가 되면서 감소하면 처음에는 출력도 감소하다가 최소값에 이른 뒤, 천천히 출력이 0으로 수렴한다.

### 스케일링

기존에 모델 구조를 설계할때는 한 모델 내부에서 레이어별로 채널수와 width를 어떻게 조절 및 배분할지에 관심을 기울였으나, EfficientNet은 시리즈별로 채널수와 width를 조절하는 Model Scaling에 관심을 기울였다.

상수 φ를 조절해 깊이 d =αφ, 너비 w = βφ, 해상도 r = γφ을 만족하도록 하는 compound scaling method를 적용했다.

α · β2 · γ2 ≈ 2를 만족하도록 했으며 α = 1.2, β = 1.1, γ = 1.15로 잡아주었다.

최적 해상도는 다음과 같다.

 EfficientNetB1
 EfficientNetB2
 EfficientNetB3
 EfficientNetB4
 EfficientNetB5
 EfficientNetB6
 EfficientNetB7

## 개량형

EfficientNetV2: Smaller Models and Faster Training(arXiv:2104.00298)에서 EfficientNetV2라는 개량 버전이 나왔다.

객체 탐지 용도의 EfficientDet도 있다.

## 같이 보기

* EfficientDet
* MobileNet
* SENet
* Fast and Accurate Model Scaling(arXiv:2103.06877)

1. ↑ Image classification via fine-tuning with EfficientNet
Knowledge Distillation and Student-Teacher Learning for Visual Intelligence: A Review and New Outlooks

Knowledge Distillation and Student-Teacher Learning for Visual Intelligence: A Review and New Outlooks(arXiv:2004.05937)는 여러 지식 증류 기법을 리뷰한 논문이다.

## 주요 내용

### 지식 증류의 개념과 이론적 배경

2장과 3장에서 다루는 내용이다. 지식증류는 선생 네트워크가 어떤 대상이 어떤 종류에 속할 가능성이 높다고 예측한 것 뿐 아니라, 다른 종류에 대한 확률을 나타내는 암흑지식(dark knowledge)까지 전달함으로서 두 예측 사이의 상호정보(Mutual information)를 최대화하는 과정이라고 말한다.

### 선생의 수에 따른 지식 증류 방법

4장에서는 선생이 하나인 경우, 선생이 여럿인 경우를 다루고, 선생이 없는 경우와 온라인 기계학습을 적용한 온라인 지식증류는 6장으로 뺐다.

#### 선생이 하나인 경우

##### 로짓 기반 증류

1)온도를 이용해 lavel을 Soften하게 만든 Softened label에 대한 내용을 다루고,

2)그 다음으로 noisy label을 이용한 훈련 방법을 다루었다.

3)가장 확률이 높다고 예측되진 않은 다음 class나, 차상위 K-1개 클래스를 학습하는 방법을 적용해서 강건한 지식 증류를 하는 방법을 다루었다.

4)모델이나 데이터의 불확실성을 예측하여, 선생과 학생의 성능 차이가 클때 지식증류가 잘 안되는 방법을 해결하는 법에 대해서도 다루었다.

마지막으로 이 분야에서 열린 과제를 설명하면서 ImageNet 등의 데이터셋은 지식 증류가 잘 안먹힌다고 하면서, 지식 증류를 잘 일반화 시키는 방법의 개발이 필요하다고 지적했다.

##### 중간 레이어 기반

특징 증류라고 불리는 것이다.

선생의 히든 레이어에서 나오는 힌트를 Ft, 선생에 의해 유도되난 학생의 레이어의 출력을 Fs, 각각의 변환 Tt·Ts, 거리 함수 D에 대해 힌트에 기반한 학습 방법은

L(Ft,F2) = d(TFt(Ft), T<Fsub>s(Fs)).

을 최소화하는 문제라고 한다. 그 다음으로 힌트(선생의 출력)에 적용할 변환, 가이드되는 학생의 특징에 적용될 변환, 지식 증류를 학 특징을 고를 위치, 증류에 사용할 거리를 분석했다.

앞으로의 과제는 Residual knowledge distillation(arXiv:2002.09168)처럼 직접 선생과 학생의 출력을 비교할 방법을 연구하는 것이 있다고 지적했다.

### 온라인 지식증류와 선생이 없는 지식 증류

선생이 없는 경우와 온라인 기계학습을 적용한 온라인 지식증류는 6장에서 다루었다.

#### 선생이 없는 지식증류

선생이 없는 자기 지식 증류(self-knowledge distillation)에 대해 다루었다.

표에서 다룬 자기 지식 증류 기법들은 다음과 다.

* BAM! Born-Again Multi-Task Networks for Natural Language Understanding(arXiv:1907.04829)
* Moonshine: Distilling with Cheap Convolutions(arXiv:1711.02613)
* Born Again Neural Networks(arXiv:1805.04770)
* Self-Knowledge Distillation in Natural Language Processing(arXiv:1908.01851)
* Learning a Unified Classifier Incrementally via Rebalancing(CVPR 2019)
* MSD: Multi-Self-Distillation Learning via Multi-classifiers within Deep Neural Networks(arXiv:1911.09418)
* Rethinking Data Augmentation: Self-Supervision and Self-Distillation(arXiv:1910.05872) : ICML 2020에 제출되었으나 철회
* Data-Distortion Guided Self-Distillation for Deep Neural Networks(doi 10.1609/aaai.v33i01.33015565)
* Be Your Own Teacher: Improve the Performance of Convolutional Neural Networks via Self Distillation(arXiv:1905.08094)
* Training Deep Neural Networks in Generations: A More Tolerant Teacher Educates Better Students(doi 10.1609/aaai.v33i01.33015628)

### 새로운 학습 기법에 따른 지식 증류

8장에서 생성적 적대 신경망(GAN)이나 그래프 신경망, 준지도 학습 및 자기 지도 학습, Few-shot learning, 증분 학습(Incremental Learning), 강화학습에 대해 다루었다.

### 시각 인공지능에 적용한 지식 증류

9장에서는 의미론적 분할(Semantic segmentation), 시각적 탐지 문제, 도메인 적응, 깊이 예측 및 흐름 예측, 이미지 번역(Image translation), 비디오 이해(Video understanding)에 대한 내용을 다루었다.

### 논의

10장에서는

큰 모델이 더 좋은 선생인가, 사전학습된 선생을 사용하는게 중요한가

Born-again network 방식이 효율적인가,

선생이 하나인게 좋은가 여럿인게 좋은가

무 데이터(data-free) 증류 방법이 충분히 효과적인가

로짓 증류와 특징 증류 중 무엇이 좋으냐

지식 증류에 신경망 아키텍처 탐색(NAS)를 적용할 수 있냐

해석가능성,

네트워크 구조에 따른 지식 증류의 성능에 대한 논의를 담았다.

### 전망

11장에서 전망으로는 신경망 아키텍처 탐색(NAS)의 도입가능성, 그래프 신경망(GNN)에의 도입 가능성, 증류 손실 척도의 변경 가능성, 좀더 원리를 잘 분석하는 법, 더 다양한 컴퓨터 비전에 확대 적용,

비전과 음성, 자연어 처리를 통합한 문제에 적용될 가능성을 전망했다.
DenseNet

DenseNet(덴스넷)은 ResNet의 skip connection에 의해 연결되는 layer의 길이를 2~3개에서 임의의 N개로 늘리고, 한 블록 내에 여러 개의 skip connection을 도입한 합성곱 신경망이다.

Densely Connected Convolutional Networks(arXiv:1608.06993)에서 제되었다.

DenseNet의 핵심 요소인 덴스 블록(Dense block)은 한 블록 내의 모든 이전 layer의 출력을 concatenate 시켜서 output을 구하는 block이다.

한 stage에 있는 모든 레이어들이 이전 레이어에서 만들어낸 feature들을 모두 concatenate하고, 그걸 바탕으로 새로운 feature를 만들어서 다음 레이어에 전달하는 방식으로 구성된다.

한 스테이지에 있는 덴스 블록은 각 레이어마다 새로 만들어내는 feature 갯수가 같다.

입력은 k0개의 채널로 시작되었다고 할때, Dense block의 l번째 layer Hl은 k개의 feature를 생성한다. 그러면 concatenate된 feature map은 k0+(l-1)k개의 feature로 구성된다.

이때 같은 블록 내에서 이전의 모든 layer들의 결과들이 Aggregated된 텐서는 크기가 크기 때문에 단순하게 BN-ReLU-Conv만 적용하면 계산 시간이 길어진다. 따라서 1x1 합성곱을 이용해 줄어주게 되고, 원래 레이어들이 k채널로 된 결과를 내어놓았다면 1x1 합성곱을 이용해 ak개의 채널로 바꿔 뒤 1x1 합성곱을 적용하여 k채널 결과를 내놓는다.

마지막 transition layer에서는 모든 layer의 feature가 합쳐지므로 입력값의 채널 수가 k0+lk개가 되어 크기가 커지게 된다. 따라서 다른 합성곱 신경망처럼 Transition Layer에서 pooling이 이뤄지는 것을 넘어서, 채널 수를 줄이는 역할까지 transition layer가 맡게 된다. 이때 1x1 합성곱을 이용해서 채널수를 줄이게 된다. 논에서는 절반으로 채널수를 줄였다.

이렇게 덴스 블록(Dense block)과 Transition Layer를 교대로 쌓으면 완성된다.

## 관련 문서

* VoVNet
* PeleeNet
* ELAN
More ConvNets in the 2020s: Scaling up Kernels Beyond 51x51 using Sparsity

**More ConvNets in the 2020s: Scaling up Kernels Beyond 51x51 using Sparsity**(arXiv:2207.03620)은 SLaK(Sparse Large Kernel Network)이라는 합성곱 신경망을 제안한 논문이다.

배경
--

비전 변환기의 대명사인 ViT이 나온 이후 비전 변환기에 뺐긴 SOTA를 되찾기 위해 큰 커널을 적용한 논문들이 다수 출간되었다.

A ConvNet for the 2020s에서 다룬 ConvNeXt(7x7 커널 사용)에 이어

Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs에서 다룬 RepLKNet(31x31 커널 사용)이 있었다.

그러나 커널을 무한정 키우면 성능이 떨어지는 것을 피할 수 없었기 때문에 이들은 새로운 방법을 제안했다.

특징
--

* 큰 M×M kernel을 사용하는 대신 M×N, N×M 두개의 합성곱 커널로 분해한다.
* 직사각형 모양의 커널에 각각 통과시킨 결과를 합친다. 이때 큰 직사각형 커널은 희소 행렬의 형태로 만들어 속도를 향상시킨다.
* 선택에 따라 작은 정사각형 형태의 N×N 커널을 통과시킨 결과까지 3개의 커널을 사용할 수 있다.

저자가 언급한 이 논문의 특징은 다음과 같다.

1. Step 1. Decomposing a large kernel into two rectangular, parallel kernels.
2. Step 2. Using sparse groups, expanding more width.

평가
--

이 논문에서 평가에 사용한 데이터셋은 다음과 같다.

* 이미지 분류: ImageNet-1K
* 의미론적 분할(Semantic segmentation): ADE20K
* 물체 검출(object detection): PASCAL VOC 2007
* 물체 검출/분할 : COCO

대조군은 ResNet, ResNeXt, ResMLP, DeiT, Swin, MLP-Mixer, ConvNeXt, RepLKNet 등이 있다.
주의집중

주의집중(attention) 또는 어텐션은 변환기(transformer) 등에서 사용되는 것으로, 특징끼리 집중해서 비교해서 유용한 정보를 추출하는 기법이다.

논문
--

* Neural Machine Translation by Jointly Learning to Align and Translate(arXiv:1409.0473) : Bahdanau et al. 논문
* Effective Approaches to Attention-Based Neural Machine Translation(arXiv:1508.04025) : Luong et al. 논문
* Attention Is All You Need(arXiv:1706.03762)

## 주의집중의 종류

* concat attention : Bahdanau et al. 논문에 등
* : a(si−1, hj)=vaTtanh(Wasi−1+Uahj)
* 점곱 주의집중(dot-product attention) : Luong et al. 논문에는 dot attention으로 등장.
* 곱셈 주의집중(multiplicative attention) : Luong et al. 논문에는 general attention으로 등장.
* 스케일된 점곱 주의집중(scaled dot-product attention) : Attention Is All You Need 논문에 등장. 점곱을 계산한 뒤에 규칙에 의해 계산되는 값으로 나누어 정규화헤서 스케일링을 한 값을 이용한다.
* 멀티헤드 주의집중(multi-head attention) : 여러 Query, Key에 대해 곱한 값을 더해서 attention 하는 주의집중
데이터 증대

**데이터 증대**(data augmentation)는 원본 데이터로부터 기계학습에 사용할 새 데이터를 만들어내는 과정이다.

이때 새 데이터는 훈련에 사용할 수 있는 특징만 가지고 있으면 되고, 반드시 원본 데이터의 한 클래스중 하나로 분류되어야 할 필요는 없다.

## 고전적 기계 학습

고전적 기계학습의 과대표집 기법을 이용하면 간단하다.

아핀 변환을 이용한 방법, 이미지의 색조를 변화시키는 방법이 가장 기본적인 방법이다.

탄성왜곡(elastic distortion)법은 이미지의 형태를 왜곡시켜서 더 많은 이미지를 만들어낸다.

이미지의 일부를 지우거나 노이즈를 삽입하는 방법도 있다.

Mixup은 학습에 사용할 이미지의 픽셀값을 평균내면서, 레이블도 평균내는 방식으로 과적합을 방지한다.

Cutout은 이미지 일부를 지워서 레이블을 유지하는 기법이다.

CutMix는 서로 다른 레이블에 속한 이미지를 오려붙인 뒤, 면적 비율에 비례하는 중간 레이블을 주는 방식으로 데이터를 늘리고 과적합을 방지한다.

### 이미지 생성

생성 모델을 이용해 자연스러운 새 이미지를 만든 뒤 새 데이터에 추가하는 방법도 쓰인다.

용어
--

흔히 통계학에서는 **데이터 첨가**, 인공지능 쪽에서는 **데이터 증강**이 많이 쓰이지만, 데이터 증대가 의미적으로 정확한 번역이다.

왜냐하면 데이터 첨가는 원본 데이터가 계속 같이 쓰인다는 의미를 내포하기 때문에 원본 데이터가 사용되지 않는 경우를 반영하기 어렵고, 데이터 증강은 더 좋은 질의 데이터를 만들어냈다는 뉘앙스가 있기 때문에, 데이터의 일부분에 손상을 가해서 데이터의 수를 늘리는 경우를 잘 전달하지 못한다.
Model soups: averaging weights of multiple fine-tuned models improves accuracy without increasing inference time

Model soups: averaging weights of multiple fine-tuned models improves accuracy without increasing inference time(arXiv:2203.05482)는 앙상블 학습법을 응용하여 가중치를 평균내는 방식으로 모델의 성능을 개선하는 Model soups 기법을 만든 논문이다.

## 같이 보기

* Snapshot Ensembles: Train 1, get M for free(arXiv:1704.00109)
* Averaging Weights Leads to Wider Optima and Better Generalization(arXiv:1803.05407) : Fast Geometric Ensembling (FGE)
과적합

과적합(overfitting)은 과대적합이라고도 부르며, 학습 데이터에 대해 과도하게 맞추는 방향으로 학습해서 일반적인 데이터에 대한 성능이 떨어지는 경우이다. 예를 들어서 성별을 분류하는 과제를 학습할때 외모의 여성성과 남성성의 일반적 특징을 배우는 대신 , 학습 데이터에서 누가 여성이고 누가 남성인지 외워서 분류하는 모델을 만든다면 과적합 되었다고 할 수 있다.

해법
--

* 조기 중지(early stopping)
* 정칙화
* 검증 데이터셋(validation set) 사용
* Dropout
* 데이터 증대

## 같이 보기

* 일반화 오차
* 과소적합
* 암기
* 데이터셋
* 기억
Representation Learning with Contrastive Predictive Coding

Representation Learning with Contrastive Predictive Coding(arXiv:1807.03748)은 대조 예측 코딩(contrastive predictive coding, CPC)라는 비지도 학습 기법을 다룬 논문이다.

과제에 덜 의존하는 성공적인 표현 학습을 위해서는 비지도 학습이 중요하다고 한다. 고수준 표현(high-level representation)을 잘 학습할 수 있어야 한다. 이를 위해 고차원 데이터를 더 작고 콤팩트한 잠재 임베딩 공간(latent embedding space)으로 옮길 수 있어야 한다고 말했고

이미지의 패치별 색이나, 음성 인식, 자연어 처리, 강화학습 문제는 시간에 따라 특징이 다른 시계열과 유사한 문제로, 각 시간에 대한 입력마다 출력의 특징이 다르다. 따라서 미래의 특징을 예측하는게 여기서는 시간 t에 대해 추출한 특징을 바탕으로 이후의 특징을 예측할 수 있는 기법을 만들었다.

미래의 target인 x와 현재의 context인 c를 인코딩해서 학습을 한다.

Contrastive Predictive Coding에서는 c로부터 x를 바로 예측하는 대신, x와 c 사이의 상호정보를 보존하는 방법을 염두에 두었다.

인코더가 내놓은 출력 zt와 그걸 통과시켜 autoregressive model 이 내놓은 기준시점 t 이전의 출력 출력 gar=ct를 가지고, 가중치 행렬을 중간에 넣고 곱한 값에 exp 함수를 취한 로그 쌍선형 모형(log-bilinear model)을 통해 스코어를 얻는다.

노이즈 대조 추정(NCE, noise-contrastive estimation) 기법을 변형한 InfoNCE(Papes With Code 페이지)를 손실 함수로 사용했다.

## 같이 보기

* Noise-contrastive estimation: A new estimation principle for unnormalized statistical models)