vmtmxmf5 / SoundProjects

MIT License
1 stars 0 forks source link

U-net에 대한 생각 #1

Open vmtmxmf5 opened 3 years ago

vmtmxmf5 commented 3 years ago

U-net이란 ?

Contracting path + Bottle Neck + Expanding path로 구성되어 있는 네트워크
기존의 FCN에 비해 연산 비용을 줄이고, 독특한 Upsampling 과정을 통해 segmentation 성능을 끌어올린 모델이다.

Contracting path를 지나면서 문맥 정보를 추출한다.
점점 receptive field는 커지고, 개념은 추상화하는 과정이다.

Expanding path를 지나면서 픽셀의 위치정보를 재구축한다.
Contracting path에서 사용한 정보를 skip connection으로 건내줌으로써
문맥정보를 더하여 픽셀마다 위치정보를 재구축한다
최종적으로는 그 픽셀이 어떤 클래스에 속하는지를 찾아낸다

History

기존의 FCN(Fully Convolutional Network)는

  1. Overlap되는 window가 많아서 연산 비용이 높았고,
  2. Context와 Localization이 서로 trade-off되는 현상이 있었다

(그래도 고정된 입력값만 받을 수 있어서 segmentation에는 부적절한 fully connected layer 보다는 나았다. 적어도 픽셀마다 위치정보를 소실하지 않아서, 픽셀마다 클래스 분류는 가능했으니까)

U-net은 window를 overlap을 극복하기 위해 overlap-tile 과정을 도입했고,
trade-off 현상을 해결하기 위해 Expanding path라는 upsampling과정을 추가했다

Q. overlap tile 전략은 input의 filter는 겹칠 수 있더라도 extract한 후에는 겹치지 않도록 조치하는 방식????

vmtmxmf5 commented 3 years ago

overlap-tile strategy

vmtmxmf5 commented 3 years ago

Expanding Path는 왜 효과적일까?

이론적으로 설명하자면, FCN에 비해 context 정보와 localization 정보 손실이 덜 하기 때문이다.
Contracting path에서 context 정보를 추출하는 과정 까지는 큰 차이가 없다.
그러나 Expanding path 부분에서 context가 포함된 정보를 추가하며 feature map을 재구축하는 과정에서 FCN의
upsampling에 비해 정보 손실이 적기 때문이다
이는 곧 각 픽셀간의 클래스 구분(segmenation) 성능으로 이어진다

vmtmxmf5 commented 3 years ago

https://www.notion.so/U-net-60e76b5aeb0f4135b1e1177a5be5087d