논문리뷰

[논문 리뷰] PDF: A Probability-Driven Framework for Open World 3D Point Cloud Semantic Segmentation

씨주 2024. 12. 5. 22:04

PDF: A Probability-Driven Framework for Open World 3D Point Cloud Semantic Segmentation

 

https://arxiv.org/pdf/2404.00979

 

0. Abstract

존재하는 point cloud semantic segmentation network는 real world에 대한 closed-set과 정적인 관점으로 인해 unknown class를 구분하지 못하고, knowledge를 update하지 못한다. 이는 intelligent agent가 잘못된 결정을 내리게 한다. 이를 해결하기 위해  open-world semantic segmentation인 Probability-Driven Framework(PDF)를 제안한다. 이는 다음 3가지를 포함한다.

1) 불확실성을 측정함으로써 unknown class를 구분하는 가벼운 U-decoder branch,

2) pseudo label을 생성함으로써 unknown class의 확률분포요소와 geometry feature를 제공하는 유연한 pseudo-labeling scheme,

3) 존재하는 knowledge base로 novel class를 점진적으로 합치는 incremental knowledge distillation strategy

 

1. Introduction

대부분의 방법들은 모든 object category가 training과 inference 안에 존재한다고 가정하는 closed-set과 static한 world라고 생각하고 수행된다. 그러나 이 가정은 학습과정에서 unknown object를 맞이하는 많은 동적인 real-world에서 효과적이지 못하다. intelligent agent는 closed-set에서 unknown class를 잘못 인식하기 때문에 잘못된 판단을 할 수 있다. 더군다나, agent는 static 인식 하에 knowledge base를 update하지 못한다. 반면 인간은 잊지않고 계속해서 학습 knowledge를 넓혀간다. 

Figure 1.

Fig 1.과 같이 open-set semantic segmentation(OSS)에서, 저자들은 geometry feature와 unknown class의 확률분포요소를 학습함으로써 unknown object를 구분한다. 그 후 점진적으로 저자들이 제안하는 incremental knowledge distillation strategy를 통해 knowledge base를 확장해나간다. 이 과정은 이전의 습득한 knowledge과 novel class의 정보를 distilled 방법으로 변환한다. 

contribution은 아래 3가지이다.

- point cloud를 활용한 open world semantic segmentation인 novel probability-driven framework(PDF)를 제안하였다.

- 확률 출력을 활용하여 unknown class의 feature를 찾아 OSS task에서 활용하는 pseudo-labeling scheme을 제안한다.

- 점진적으로 novel semantic class를 학습된 knowledge와 통합하는 incremental knowledge distillation strategy를 제안한다.

 

3. Open World Semantic Segmentation

t시간동안의 known class set

t시간동안의 unknown class set

각 sample의 point cloud, 참고로 point cloud pi는 point coordinate (x, y, z)와 channel feature c로 구성된다.

point cloud와 관련된 label

 

OSS task동안 Mc는 open-set model인 Mo로 finetune한다. Mo는 known class Kt의 label을 예측하고, unknown class ut를 구분한다. IL task를 위해 unknown object는 novel class label Kn으로 annotate 한다.

그 후 Mo는 점차 Kn을 이용하여 MI로 finetune되고 knowledge base는 아래와 같이 확장된다.

 

4. Probability-Driven Framework

Figure 2.

PDF는 open set semantic segmentation(OSS)를 다루는 figure 2의 파란색부분과 incremental learning(IL)을 다루는 figure 2의 초록색부분으로 2개의 stage로 구성된다.

OSS task를 위해, raw point cloud(N개의 point와 channel c)가 입력되면 semantic segmentation Os가 출력된다.

여기서 C는 Kt class로 known semantic class를 나타낸다.

저자들은 이 Os를 probability output으로 정의하며, 대응하는 class의 semantic 확률을 나타낸다. 또한, backbone feature를 가벼운 U-decoder로 보내어 불확실성 Ou을 측정한다.

그 후 pseudo-labeling scheme를 통해 pseudo mask를 얻는다. pseudo mask는 known class의 대응하는 label을 masking함으로써 pseudo GT를 생성하기 위해 사용한다. 최종적으로 semantic output Os를 closed set GT로 supervise하는데, 더나은 수행을 위해 불확실성 출력 Ou를 Os와 합쳐 supervise한다. 이 과정을 통해 Mo를 학습한다.

IL task를 위해 point cloud는 Mo와 MI로 입력되고 OI와 OS가 출력된다. OS는 distilled GT로 supervise되고 이는 OI와 novel class label로터 생성된다.

inference stage에서 예측값 Y는 semantic segmentation OS와 불확실성 OU를 기반으로 계산한다.

Eq. 1

 

4.1 Open-set 3D semantic segmentation(OSS)

Figure 2 (a)와 같이 Pin는 encoder에 입력되어 sparese feature F를 추출하고 downsampling을 거치게 된다. 그 후 F는 decoder로 들어가 upsample되고 probability output Os를 추출한다. closed set semantic segmentation loss는 아래와 같고 Yc는 closed-set label, CE는 cross entropy loss function이다.

Eq. 2

저자들은 불확실성 Os를 측정하기 위해 가벼운 U decoder를 사용한다. U decoder는 encoder feature F를 입력으로 사용하고, skip connection을 이용해 hidden layer output을 결합한다. 이는 추출한 geometric과 scene wise feature를 최대한 활용할 수 있게 해준다. U decoder의 OU는 model의 sementation result OS에 대한 confidence를 나타낸다. U decoder의 좋은 성능을 위해 pseudo label을 생성한다. 그러나 이 pseudo label은 OU의 불균형한 분포로 이끄는 잠재적인 risk때문에 supervision에 바로 사용할 수 없다. 따라서 pseudo GT Yp를 얻기 위해 pseudo label은 mask operation하여 closed set label과 합쳐 사용한다. 

Eq. 3

따라서 전체적인 open set semantic segmentation loss는 다음과 같다.

Eq. 4

 

4.2. Pseudo-labeling scheme

pseudo labeling scheme의 목적은 U decoder의 불확실성 출력 OU를 supervise한 probability output Os를 활용하여 unknown class의 pseudo label 생성하는 것이다. figure 2 (c)와 같이, known의 예시는 maximum softmax probability(MSP)가 unknown보다 높게 나타난다. 저자들은 이 MSP를 활용해 불확실성 점수 S를 계산한다.

Eq. 5

HUA 알고리즘은 각 point의 불확실성 점수를 통해 unknown area를 구분하는데, unknown area는 보통 unknown object와 주변 point(배경, 다른 object) 모두를 cover한다. 그래서 GBD 알고리즘를 만들어 unknown object가 더 잘 분리되도록 설계했다.

Heuristic unknown-aware algorithm

HUA의 핵심은 known object의 불확실성 점수가 unknown object보다 높다는 것이다. 따라서 unknown object는 낮은 불확실성 점수를 가지고 있는 경향이 있다. HUA는 unknown area를 검색하는 과정부터 시작한다. 그 후 정지조건이 될 때까지 점차 unknown area를 찾아간다.

불확실성점수 S(Os)가 있다고 가정하고 S(Os)를 오름차순으로 정렬한 후 상위 m개의 seed point를 선택한다. 이 m개의 seed point는 낮은 불확실성 점수를 가지고 있을 것이다. 그 후 각 seed P0의 k개의 이웃을 찾아 이웃간의 거리 유사도와 불확실성 유사도를 계산하여 종합 유사도를 계산한다. 

Eq. 6
Eq. 7
Eq. 8

seed point는 상위 50%의 이웃을 선택하여 p0에서 p1, p2 점차 증가하게된다. 그 후 p0의 평균 불확실성 점수는 증가하며 아래의 정지조건이 되면 멈추게 된다.

Eq. 9

3D graph boundary detection algorithm

Figure 3.

HUA로 획득한 unknown 지역은 unknown object뿐만 아니라 background나 known object도 포함하고 있다. 이를 해결하기 위해 unknown object의 경계를 탐지하여 다른 주변 point로부터 unknown object를 분리하는 3D graph boundary detection(GBD) 알고리즘을 설계하였다. 2D와 달리 point cloud는 불규칙적으로 point들이 분포해있어 전통적인 경계 탐지 알고리즘(2D)은 효과적이지 못하다. 하지만 graph structure를 기반으로 3D image를 만들 수 있고, 2D 경계탐지알고리즘을 이용한 3D 경계 탐지를 할 수 있다. 

HUA 알고리즘의 출력 Ps는 유사도로부터 얻을 수 있다. 그 후 Ps의 각 point를 무방향성 그래프 g에 임베드한다. 

그러나 직접적으로 g를 다루는 것은 비효율적이다. 그래서 저자들은 minimum spanning tree(MST)를 통해 중복 경계들을 제거해주었다. MST는 경계의 최소 가중치로 g의 모든 노드를 연결시켜준다.

Figure 3과 같이 unknown class가 낮은 불확실성 점수를 가지고 known class가 높은 불확실성을 가진다는 점을 생각했을 때 known class의 노드들은 unknown class의 노드보다 큰 경계가중치를 가지고 있을 것이다. 높은 가중치를 가지는 경계를 잘랐을 때, 대부분의 노드는 known class를 고립시킨다. 반대로 unknown class는 여전히 대부분의 경계를 보존하고 있어 쉽게 구분이 된다. 경계가중치의 전반적인 분포를 gaussian mixed model(GMM)을 활용하여 맞추었다. 

 

4.3. Incremental learning (IL)

IL task는 open set semantic segmentation 능력과 함께 novel class Kn을 학습하여 open set model Mo를 open world model MI로 finetune 시킨다. Kn label만으로 finetuning하는 것은 catastrophic forgetting이라고 하는 예측 오류를 유발한다. knowledge forgetting을 예방하기 위해 open set model Mo는 이전에 학습했던 known class C를 teacher model에 공급하여 사용한다. knowledge distillation에서 영감을 얻어, probability output의 분포를 최소화함으로써 Mo에서 MI로 knowledge를 변경한다.

Figure 2 (b)와 같이, Pin을 Mo와 MI에 입력하여 probability output OI와 OS가 출력된다. 

Eq. 12

novel class에 대해서 one-hot encoding을 하여 EI를 생성한다. 그 후 yI를 masing하여 distilled GT인 yD를 생성한다.

Eq. 13

이처럼 novel class를 생성된 pseudo probability label을 이용하여 이전에 학습한 knowledge와 새로운 knowledge를 얻을 수 있다.

IL에 대한 loss는 KL divergence를 활용하여 계산하여 OS와 yD의 확률분포가 최소화되도록 한다.

Eq. 14

 

5. Experiments

Table 1.
Figure 4.

 

6. Conclusion

본 논문에서는 3D point cloud를 이용한 open world semantic segmentation Probability-Driven Framework(PDF)를 제시했다. 이는 open set semantic segmentation과 incremental learning task를 모두 다루는데, unknown class의 불확실성을 측정하는 가벼운 U decoder와 unknown class의 GT를 생성하는 pseudo labeling scheme, novel class를 knowledge base로 합치는 incremental knowledge distillation strategy을 설계한다. 정량적, 정성적 결과 모두 최신성능을 달성하였다. 하지만 PDF는 outdoor에서는 제한되는데, sparse하고 불명확한 객체가 높은 confidence로 잘못 분류한다.