SlideShare a Scribd company logo
1 of 22
Download to read offline
팀원: 고형권, 김동희, 김창연, 이민경, 이재윤
발표자: 송헌 (songheony@gmail.com)
공헌
00
• 유전 알고리즘을 통해 Object Detection을 위한 손실 함수의 탐색방법을 제안
• 다른 방법들에 비해 빠르게 탐색할 수 있다고 주장
• 탐색된 손실 함수를 이용하여 다양한 모델에서 실험적으로 성능을 향상시킴
유전 알고리즘
01
• 유전 알고리즘은 유전자들을 이용해서 함수에서 최적의 해를 구하는 알고리즘
• 한 세대에 여러 유전자들을 준비해두고 세대를 거치며 유전자들을 변형
• 대체로 (1) 선택 (2) 교차 (3) 변이 의 반복으로 이루어진다
1. 선택: 높은 적합도 (점수)를 가진 유전자들을 중점적으로 선택
2. 교차: 선택된 유전자들을 교배를 통해 다음 세대를 생성
3. 변이: 생성된 유전자들의 정보를 일부 바꿈
http://www.abrandao.com/2015/01/simple-php-genetic-algorithm/
유전 프로그래밍
01
• 유전자를 트리 구조로 사용하면 수식 혹은 프로그램 코드를 유전자로 표현 가능
https://en.wikipedia.org/wiki/Symbolic_regression
유전 프로그래밍
01
• 교차: 두개의 트리중 일부분을 서로 바꿈
Fitzgerald et al. “Balancing exploration and exploitation in genetic programming using in
version with individualized self-adaptation”
유전 프로그래밍
01
• 변이: 노드를 다른 하나의 노드 혹은 하나의 서브-트리로 바꿈
Fitzgerald et al. “Balancing exploration and exploitation in genetic programming using in
version with individualized self-adaptation”
Q & A
문제점
02
• 기존의 Object detection 모델들은 사람이 만든 몇개의 손실 함수만 사용해옴
• 이를 해결하기 위하여 여러가지 손실함수를 자동으로 탐색하는 알고리즘들이 제시
• 하지만 몇몇 방법론*들은 굉장히 작은 함수공간에서만 탐색을 하던가,
• 큰 함수공간을 사용하는 방법론**들은 너무 많은 함수들을 시도해봐야 했음
*Wang et al., “Iou-aware single-stage object detector for accurate localization”, CVPR, 2020
**Gonzalez et al., “improved training speed, accuracy, and data utilization through loss function optimization”, CEC, 2020
문제점
02
• 기존의 Object detection 모델들은 사람이 만든 몇개의 손실 함수만 사용해옴
• 이를 해결하기 위하여 여러가지 손실함수를 자동으로 탐색하는 알고리즘들이 제시
• 하지만 몇몇 방법론*들은 굉장히 작은 함수공간에서만 탐색을 하던가,
• 큰 함수공간을 사용하는 방법론**들은 너무 많은 함수들을 시도해봐야 했음
*Wang et al., “Iou-aware single-stage object detector for accurate localization”, CVPR, 2020
**Gonzalez et al., “improved training speed, accuracy, and data utilization through loss function optimization”, CEC, 2020
• 저자들은 이것이 object detection이라는 task의 특성이라고 주장
• 10만개의 탐색된 함수들중 오직 한개만이 학습에 사용할 수 있었음
제안방법
03
• 저자들은,
• 유전 알고리즘을 통해 다양한 수식을 만들 수 있는 방법을 채택하였으며
• 수학적이며 실험적인 검증방법을 통해 적은 시도만 함수를 찾는 방법을 제안
AP: 37.6%
(a) Cross-entropy loss
AP: 37.7%
(b) Candidate1
1
AP: 37.8%
(c) Candidate2
AP: 38.2%
(d) CSE-Autoloss-Acls
Constant Variable Operation
제안방법
03
• N개의 손실함수를 사용
• convergence property verification를 통해 1차 필터링
• model optimization simulation를 통해 2차 필터링
• 살아남은 K개의 손실함수를 테스트
• 그중 가장 점수가 높은 P개의 손실함수를 이용해 새로운 세대를 생성
Evolution (offspring generation)
Loss function population
1
…
Loss function
evaluation
#
Loss
mAP
×
✓
Parent1 Offspring1
ParentP Offspring2 OffspringN
Convergence property
verification
Model optimization
simulation
Positive class score
Loss
value
…
Poor-performed
Divergent ×
Training-unfriendly
evolution
… …
2
Search space
1
2
3
Constant
Variable
Operation
…
threshold
… …
×
×
트리 생성
03
• Variable: (예측 x, 정답 y, IOU 점수 w), (교집합 i, 합집합 u, 모든 범위 e)
• Constant: 1,2,3
• Operation:
AP: 37.6%
(a) Cross-entropy loss
AP: 37.7%
(b) Candidate1
1
AP: 37.8%
(c) Candidate2
AP: 38.2%
(d) CSE-Autoloss-Acls
Constant Variable Operation
수렴성 증명
03
• 저자들이 잘 만들어진 손실함수들을 관측한 결과 다음과 같은 성질을 발견
• Monotonicity: 정답에 가까울수록 단조적으로 감소 혹은 멀수록 단조적으로 증가
• Convergence: 거의 완벽하게 정답에 가까우면 기울기가 0에 수렴
• 따라서 유전 알고리즘으로 생성된 손실함수가 위의 성질들을 만족하는지 먼저 검사
최적화 증명
03
• 수학적 성질이 반드시 학습에 좋다고는 장담할 수 없음
• 따라서 모든 손실함수를 테스트해보는 것은 여전히 쓸모없는 시간을 소모
• 저자들은 아주 적은 데이터를 이용하여 모델을 학습시킨후 그중 K개의 함수만 선택
• 적은 데이터를 만들 때에는 각 클래스별 한개의 이미지만 랜덤하게 사용
• 제안된 두개의 증명방법으로 약 99%의 손실함수를 제거하였음
제안방법
03
Q & A
실험
04
• Faster R-CNN과 FCOS 모델을 COCO 데이터셋에 대해 학습
• 초기 손실함수의 생성을 위하여 GIoU 함수와 CE, FL를 사용
• 만들어진 손실함수는 다음과 같음 (A: Faster R-CNN, B: FCOS)
실험
04
• 탐색된 손실함수를 다른 모델에도 적용하여 학습시킨 후 성능을 비교
실험
04
• 학습된 Faster R-CNN 모델을 다른 데이터셋에서 성능평가
• 다양한 손실함수 조합에서 모델의 성능을 평가
실험
04
• 각 검증방법으로 인한 평가해야하는 손실함수 수의 비교
• 일반 유전 알고리즘(파란색)과 제안방법(주황색)의 탐색된 손실함수의 성능 비교
CSE-Autoloss
Focal loss
Vanilla evolution search
한계
04
• Classification과 Regression을 아예 독립적으로 손실함수를 탐색
• 실험셋팅에 대한 설명이 너무나도 부족
e.g., 어떠한 변이 알고리즘을 사용하였는지, 어떻게 교차를 시켰는지,
함수의 단조성은 어떻게 검사하였는지 등등
• 검증 단계에서 걸러진 함수들에 대한 분석이 이루어지지 않았음
• model optimization simulation이 정말 유용하게 작동되고 있는지 확인이 필요
Q & A

More Related Content

Similar to Loss function discovery for object detection via convergence simulation driven search

Similar to Loss function discovery for object detection via convergence simulation driven search (20)

Image Deep Learning 실무적용
Image Deep Learning 실무적용Image Deep Learning 실무적용
Image Deep Learning 실무적용
 
"From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ..."From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ...
 
[컨퍼런스] 모두콘 2018 리뷰
[컨퍼런스] 모두콘 2018 리뷰[컨퍼런스] 모두콘 2018 리뷰
[컨퍼런스] 모두콘 2018 리뷰
 
생체 광학 데이터 분석 AI 경진대회 9위 수상작
생체 광학 데이터 분석 AI 경진대회 9위 수상작생체 광학 데이터 분석 AI 경진대회 9위 수상작
생체 광학 데이터 분석 AI 경진대회 9위 수상작
 
DevRookie 리펙터링.pptx
DevRookie 리펙터링.pptxDevRookie 리펙터링.pptx
DevRookie 리펙터링.pptx
 
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
 
Tobi 스프링 2장 php version
Tobi 스프링 2장   php versionTobi 스프링 2장   php version
Tobi 스프링 2장 php version
 
OpenCV's Built-in Trackers
OpenCV's Built-in TrackersOpenCV's Built-in Trackers
OpenCV's Built-in Trackers
 
[Paper Review] What have we achieved on text summarization?
[Paper Review] What have we achieved on text summarization? [Paper Review] What have we achieved on text summarization?
[Paper Review] What have we achieved on text summarization?
 
Elasticsearch와 Bash script를 활용한 논문 검색
Elasticsearch와 Bash script를 활용한 논문 검색Elasticsearch와 Bash script를 활용한 논문 검색
Elasticsearch와 Bash script를 활용한 논문 검색
 
데이터에서 의미 추출하기
데이터에서 의미 추출하기데이터에서 의미 추출하기
데이터에서 의미 추출하기
 
2021-11-16 모두콘 딥러닝 경량화 발표
2021-11-16 모두콘 딥러닝 경량화 발표2021-11-16 모두콘 딥러닝 경량화 발표
2021-11-16 모두콘 딥러닝 경량화 발표
 
분석과 설계
분석과 설계분석과 설계
분석과 설계
 
PR-203: Class-Balanced Loss Based on Effective Number of Samples
PR-203: Class-Balanced Loss Based on Effective Number of SamplesPR-203: Class-Balanced Loss Based on Effective Number of Samples
PR-203: Class-Balanced Loss Based on Effective Number of Samples
 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usage
 
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendations
 
Image data augmentatiion
Image data augmentatiionImage data augmentatiion
Image data augmentatiion
 
Review MLP Mixer
Review MLP MixerReview MLP Mixer
Review MLP Mixer
 
TDD.JUnit.조금더.알기
TDD.JUnit.조금더.알기TDD.JUnit.조금더.알기
TDD.JUnit.조금더.알기
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
 

More from taeseon ryu

VoxelNet
VoxelNetVoxelNet
VoxelNet
taeseon ryu
 
OpineSum Entailment-based self-training for abstractive opinion summarization...
OpineSum Entailment-based self-training for abstractive opinion summarization...OpineSum Entailment-based self-training for abstractive opinion summarization...
OpineSum Entailment-based self-training for abstractive opinion summarization...
taeseon ryu
 
RL_UpsideDown
RL_UpsideDownRL_UpsideDown
RL_UpsideDown
taeseon ryu
 
MOReL: Model-Based Offline Reinforcement Learning
MOReL: Model-Based Offline Reinforcement LearningMOReL: Model-Based Offline Reinforcement Learning
MOReL: Model-Based Offline Reinforcement Learning
taeseon ryu
 

More from taeseon ryu (20)

VoxelNet
VoxelNetVoxelNet
VoxelNet
 
OpineSum Entailment-based self-training for abstractive opinion summarization...
OpineSum Entailment-based self-training for abstractive opinion summarization...OpineSum Entailment-based self-training for abstractive opinion summarization...
OpineSum Entailment-based self-training for abstractive opinion summarization...
 
3D Gaussian Splatting
3D Gaussian Splatting3D Gaussian Splatting
3D Gaussian Splatting
 
JetsonTX2 Python
 JetsonTX2 Python  JetsonTX2 Python
JetsonTX2 Python
 
Hyperbolic Image Embedding.pptx
Hyperbolic  Image Embedding.pptxHyperbolic  Image Embedding.pptx
Hyperbolic Image Embedding.pptx
 
MCSE_Multimodal Contrastive Learning of Sentence Embeddings_변현정
MCSE_Multimodal Contrastive Learning of Sentence Embeddings_변현정MCSE_Multimodal Contrastive Learning of Sentence Embeddings_변현정
MCSE_Multimodal Contrastive Learning of Sentence Embeddings_변현정
 
LLaMA Open and Efficient Foundation Language Models - 230528.pdf
LLaMA Open and Efficient Foundation Language Models - 230528.pdfLLaMA Open and Efficient Foundation Language Models - 230528.pdf
LLaMA Open and Efficient Foundation Language Models - 230528.pdf
 
YOLO V6
YOLO V6YOLO V6
YOLO V6
 
Dataset Distillation by Matching Training Trajectories
Dataset Distillation by Matching Training Trajectories Dataset Distillation by Matching Training Trajectories
Dataset Distillation by Matching Training Trajectories
 
RL_UpsideDown
RL_UpsideDownRL_UpsideDown
RL_UpsideDown
 
Packed Levitated Marker for Entity and Relation Extraction
Packed Levitated Marker for Entity and Relation ExtractionPacked Levitated Marker for Entity and Relation Extraction
Packed Levitated Marker for Entity and Relation Extraction
 
MOReL: Model-Based Offline Reinforcement Learning
MOReL: Model-Based Offline Reinforcement LearningMOReL: Model-Based Offline Reinforcement Learning
MOReL: Model-Based Offline Reinforcement Learning
 
Scaling Instruction-Finetuned Language Models
Scaling Instruction-Finetuned Language ModelsScaling Instruction-Finetuned Language Models
Scaling Instruction-Finetuned Language Models
 
Visual prompt tuning
Visual prompt tuningVisual prompt tuning
Visual prompt tuning
 
mPLUG
mPLUGmPLUG
mPLUG
 
variBAD, A Very Good Method for Bayes-Adaptive Deep RL via Meta-Learning.pdf
variBAD, A Very Good Method for Bayes-Adaptive Deep RL via Meta-Learning.pdfvariBAD, A Very Good Method for Bayes-Adaptive Deep RL via Meta-Learning.pdf
variBAD, A Very Good Method for Bayes-Adaptive Deep RL via Meta-Learning.pdf
 
Reinforced Genetic Algorithm Learning For Optimizing Computation Graphs.pdf
Reinforced Genetic Algorithm Learning For Optimizing Computation Graphs.pdfReinforced Genetic Algorithm Learning For Optimizing Computation Graphs.pdf
Reinforced Genetic Algorithm Learning For Optimizing Computation Graphs.pdf
 
The Forward-Forward Algorithm
The Forward-Forward AlgorithmThe Forward-Forward Algorithm
The Forward-Forward Algorithm
 
Towards Robust and Reproducible Active Learning using Neural Networks
Towards Robust and Reproducible Active Learning using Neural NetworksTowards Robust and Reproducible Active Learning using Neural Networks
Towards Robust and Reproducible Active Learning using Neural Networks
 
BRIO: Bringing Order to Abstractive Summarization
BRIO: Bringing Order to Abstractive SummarizationBRIO: Bringing Order to Abstractive Summarization
BRIO: Bringing Order to Abstractive Summarization
 

Loss function discovery for object detection via convergence simulation driven search

  • 1. 팀원: 고형권, 김동희, 김창연, 이민경, 이재윤 발표자: 송헌 (songheony@gmail.com)
  • 2. 공헌 00 • 유전 알고리즘을 통해 Object Detection을 위한 손실 함수의 탐색방법을 제안 • 다른 방법들에 비해 빠르게 탐색할 수 있다고 주장 • 탐색된 손실 함수를 이용하여 다양한 모델에서 실험적으로 성능을 향상시킴
  • 3. 유전 알고리즘 01 • 유전 알고리즘은 유전자들을 이용해서 함수에서 최적의 해를 구하는 알고리즘 • 한 세대에 여러 유전자들을 준비해두고 세대를 거치며 유전자들을 변형 • 대체로 (1) 선택 (2) 교차 (3) 변이 의 반복으로 이루어진다 1. 선택: 높은 적합도 (점수)를 가진 유전자들을 중점적으로 선택 2. 교차: 선택된 유전자들을 교배를 통해 다음 세대를 생성 3. 변이: 생성된 유전자들의 정보를 일부 바꿈 http://www.abrandao.com/2015/01/simple-php-genetic-algorithm/
  • 4. 유전 프로그래밍 01 • 유전자를 트리 구조로 사용하면 수식 혹은 프로그램 코드를 유전자로 표현 가능 https://en.wikipedia.org/wiki/Symbolic_regression
  • 5. 유전 프로그래밍 01 • 교차: 두개의 트리중 일부분을 서로 바꿈 Fitzgerald et al. “Balancing exploration and exploitation in genetic programming using in version with individualized self-adaptation”
  • 6. 유전 프로그래밍 01 • 변이: 노드를 다른 하나의 노드 혹은 하나의 서브-트리로 바꿈 Fitzgerald et al. “Balancing exploration and exploitation in genetic programming using in version with individualized self-adaptation”
  • 8. 문제점 02 • 기존의 Object detection 모델들은 사람이 만든 몇개의 손실 함수만 사용해옴 • 이를 해결하기 위하여 여러가지 손실함수를 자동으로 탐색하는 알고리즘들이 제시 • 하지만 몇몇 방법론*들은 굉장히 작은 함수공간에서만 탐색을 하던가, • 큰 함수공간을 사용하는 방법론**들은 너무 많은 함수들을 시도해봐야 했음 *Wang et al., “Iou-aware single-stage object detector for accurate localization”, CVPR, 2020 **Gonzalez et al., “improved training speed, accuracy, and data utilization through loss function optimization”, CEC, 2020
  • 9. 문제점 02 • 기존의 Object detection 모델들은 사람이 만든 몇개의 손실 함수만 사용해옴 • 이를 해결하기 위하여 여러가지 손실함수를 자동으로 탐색하는 알고리즘들이 제시 • 하지만 몇몇 방법론*들은 굉장히 작은 함수공간에서만 탐색을 하던가, • 큰 함수공간을 사용하는 방법론**들은 너무 많은 함수들을 시도해봐야 했음 *Wang et al., “Iou-aware single-stage object detector for accurate localization”, CVPR, 2020 **Gonzalez et al., “improved training speed, accuracy, and data utilization through loss function optimization”, CEC, 2020 • 저자들은 이것이 object detection이라는 task의 특성이라고 주장 • 10만개의 탐색된 함수들중 오직 한개만이 학습에 사용할 수 있었음
  • 10. 제안방법 03 • 저자들은, • 유전 알고리즘을 통해 다양한 수식을 만들 수 있는 방법을 채택하였으며 • 수학적이며 실험적인 검증방법을 통해 적은 시도만 함수를 찾는 방법을 제안 AP: 37.6% (a) Cross-entropy loss AP: 37.7% (b) Candidate1 1 AP: 37.8% (c) Candidate2 AP: 38.2% (d) CSE-Autoloss-Acls Constant Variable Operation
  • 11. 제안방법 03 • N개의 손실함수를 사용 • convergence property verification를 통해 1차 필터링 • model optimization simulation를 통해 2차 필터링 • 살아남은 K개의 손실함수를 테스트 • 그중 가장 점수가 높은 P개의 손실함수를 이용해 새로운 세대를 생성 Evolution (offspring generation) Loss function population 1 … Loss function evaluation # Loss mAP × ✓ Parent1 Offspring1 ParentP Offspring2 OffspringN Convergence property verification Model optimization simulation Positive class score Loss value … Poor-performed Divergent × Training-unfriendly evolution … … 2 Search space 1 2 3 Constant Variable Operation … threshold … … × ×
  • 12. 트리 생성 03 • Variable: (예측 x, 정답 y, IOU 점수 w), (교집합 i, 합집합 u, 모든 범위 e) • Constant: 1,2,3 • Operation: AP: 37.6% (a) Cross-entropy loss AP: 37.7% (b) Candidate1 1 AP: 37.8% (c) Candidate2 AP: 38.2% (d) CSE-Autoloss-Acls Constant Variable Operation
  • 13. 수렴성 증명 03 • 저자들이 잘 만들어진 손실함수들을 관측한 결과 다음과 같은 성질을 발견 • Monotonicity: 정답에 가까울수록 단조적으로 감소 혹은 멀수록 단조적으로 증가 • Convergence: 거의 완벽하게 정답에 가까우면 기울기가 0에 수렴 • 따라서 유전 알고리즘으로 생성된 손실함수가 위의 성질들을 만족하는지 먼저 검사
  • 14. 최적화 증명 03 • 수학적 성질이 반드시 학습에 좋다고는 장담할 수 없음 • 따라서 모든 손실함수를 테스트해보는 것은 여전히 쓸모없는 시간을 소모 • 저자들은 아주 적은 데이터를 이용하여 모델을 학습시킨후 그중 K개의 함수만 선택 • 적은 데이터를 만들 때에는 각 클래스별 한개의 이미지만 랜덤하게 사용 • 제안된 두개의 증명방법으로 약 99%의 손실함수를 제거하였음
  • 16. Q & A
  • 17. 실험 04 • Faster R-CNN과 FCOS 모델을 COCO 데이터셋에 대해 학습 • 초기 손실함수의 생성을 위하여 GIoU 함수와 CE, FL를 사용 • 만들어진 손실함수는 다음과 같음 (A: Faster R-CNN, B: FCOS)
  • 18. 실험 04 • 탐색된 손실함수를 다른 모델에도 적용하여 학습시킨 후 성능을 비교
  • 19. 실험 04 • 학습된 Faster R-CNN 모델을 다른 데이터셋에서 성능평가 • 다양한 손실함수 조합에서 모델의 성능을 평가
  • 20. 실험 04 • 각 검증방법으로 인한 평가해야하는 손실함수 수의 비교 • 일반 유전 알고리즘(파란색)과 제안방법(주황색)의 탐색된 손실함수의 성능 비교 CSE-Autoloss Focal loss Vanilla evolution search
  • 21. 한계 04 • Classification과 Regression을 아예 독립적으로 손실함수를 탐색 • 실험셋팅에 대한 설명이 너무나도 부족 e.g., 어떠한 변이 알고리즘을 사용하였는지, 어떻게 교차를 시켰는지, 함수의 단조성은 어떻게 검사하였는지 등등 • 검증 단계에서 걸러진 함수들에 대한 분석이 이루어지지 않았음 • model optimization simulation이 정말 유용하게 작동되고 있는지 확인이 필요
  • 22. Q & A