Focal Loss: ์์ ๋ฐฐ๋ถ๊ณผ ๊ทธ๋ํ ํด์
Focal Loss ๋์ ๋ฐฐ๊ฒฝ
Focal Loss๋ Object Detection ๋ฌธ์ ์์ ์์ฃผ ๋ฐ์ํ๋ Class Imbalance ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด RetinaNet ๋
ผ๋ฌธ์์ ์ ์๋ ์์ค ํจ์์
๋๋ค.
์ผ๋ฐ์ ์ธ one-stage detector์์๋ ์ ์ฒด ์ด๋ฏธ์ง์์ anchor box๋ฅผ ๋งค์ฐ ์ด์ดํ๊ฒ ์์ฑํ๋๋ฐ, ์ด๋ก ์ธํด ๊ฑฐ์ ๋๋ถ๋ถ์ anchor๋ ๋ฐฐ๊ฒฝ(background)์ ํด๋นํ๊ณ ์ค์ ๊ฐ์ฒด(foreground)๋ ๋งค์ฐ ๋๋ฌผ๊ฒ ๋ฉ๋๋ค.
์ด ๊ฒฝ์ฐ ๊ธฐ์กด์ Cross Entropy ์์คํจ์๋ ์ฝ๊ณ ๋๋ฌด ๋ง์ ๋ฐฐ๊ฒฝ anchor example์ ์ง๋ฐฐ๋นํด, ํ์ต์ด ์ด๋ ต๊ฑฐ๋ ๋นํจ์จ์ ์ผ๋ก ์งํ๋ ์ ์์ต๋๋ค.
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Focal Loss๋ Cross Entropy์ modulating term์ ์ถ๊ฐํ์ฌ, ๋ชจ๋ธ์ด ์ด๋ฏธ ์ ๋ง์ถ๊ณ ์๋ ์ฌ์ด ์์ (easy examples)๋ค์ gradient์ ์ค์ฌ, ์ด๋ ค์ด ์์ (hard examples)์ ๋ ์ง์คํ๊ฒ ๋ง๋ญ๋๋ค.
Object Detection์์ ๊ธฐ์กด Cross Entropy์ ๋ฌธ์ ์ & ์์ ๋ถ์
(ex) easy : hard = 10,000 : 1

(์ ์คํ๊ฐ ์๋ค์. Otherwise ์์ 1 - p์
๋๋ค.)
CE๋ background์ foreground๋ฅผ ๊ฐ์ ํ๋ฅ ๋ก ์์ธกํ ๊ฒฝ์ฐ ๋ชจ๋ธ์ ๋ถ๊ณผ๋๋ ์์ค ๊ธฐ์ธ๊ธฐ๊ฐ ๋์ผํฉ๋๋ค.
ํ์ง๋ง ์์ฒ๋ผ ์ฌ์ด ์์ ์ ์ด๋ ค์ด ์์ ์ ๊ฐ์์ฐจ์ด๊ฐ ๋งค์ฐ ํฌ๋ค๋ฉด, ์ฌ์ด ์์ ์ ํธํฅ์ ์ผ๋ก ํ์ต์ด ๋ ๊ฒ์
๋๋ค.
Focal Loss ์์ ๋ถ์

๋ฐ๋ฉด Focal Loss๋ ๊ฐ๋ง(gamma)๊ฐ๊ณผ ์ถ๊ฐ์ ์ธ ์ํ๊ฐ(์์ํญ, alpha)์ ํตํด ์ฌ์ด ์์ ์ ๋ถ๊ณผ๋๋ ๊ธฐ์ธ๊ธฐ๋ฅผ ๊ฑฐ์ ์์ ๋ฒ๋ฆฌ๋ ๋ฐฉ๋ฒ์ ํตํด CE์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
์์ ๊ทธ๋ฆผ์ฒ๋ผ FLโ(p_t)๋ฅผ f(p_x)*g(p_x)๋ก ์ชผ๊ฐ์ด ๋ณด๊ณ desmos์ plot ์์ผ๋ณด๋ฉด ๊ธฐ๋ณธ CE(p_x)์ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง ๋ณผ ์ ์์ต๋๋ค.
+ ๊ทธ๋ฅ FLโ(p_t) ์์ฒด๋ฅผ plotํ ์๋ ์์์ง๋ง, ํจ์์ ๊ตฌ์ฑ์ด ์ด๋ป๊ฒ ๋๊ณ ์ด ์์์ ์ค์ํ ํญ์ธ f(p_x)์ ์ญํ ์ ์ ์ ์๊ธฐ์ ๋ถํดํ์ต๋๋ค.





์ ์ค๋ช
๋ถํฐ ํ๊ณ ๋ค์ด๊ฐ๊ฒ ์ต๋๋ค.
h(x): Focal Loss์ ๋ํจ์
f(x), g(x): h(x)์ ์ธ์๋ค
o(x): Cross Entropy์ ๋ํจ์
์ด ํจ์๋ค์ ์ ์ดํด๋ณด๋ฉด ์ด๋ก์ ๊ทธ๋ํ g(x)์ ๊ฒฝ์ฐ r์ด ์ด๋ป๊ฒ ๋ณํ๋ ์ฝ๊ฐ์ ๋ณํ๋ ์์ง๋ง ํฐ ์ฐจ์ด๊ฐ ์์์ ํ์ธํ ์ ์์ต๋๋ค.
๊ทธ๋ผ ์ค์ํ ๊ทธ๋ํ๋ f(x)๊ฒ ์ฃ ?
๋ง์ฝ x์ถ์์ 1์ ๊ทผ์ ํ ๊ฐ์ด ์ฌ์ด ์์ ๋ผ๊ณ ํ์ ๋ r๊ฐ์ด ๋ณํํจ์ ๋ฐ๋ผ f(x)๊ฐ 0์ ๋ฌ๋ผ๋ถ์ด๊ฐ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค.
ํ๋์ฉ ์ดํด๋ณด๋ฉด
I) r = 0
์ผ๋ฐ CE์ ๊ฐ์์ ์ ์ ์์ต๋๋ค.
II) r = 0.5
x๊ฐ์ด 0 -> 1๋ก ๊ฐ๋์ f(x)์ ๊ธฐ์ธ๊ธฐ๊ฐ ์๋งํด์ก์ต๋๋ค.
III) r = 1
f(x)์ ์ํฅ์ด ์ฌ๋ผ์ง ๋ชจ์ต์
๋๋ค.
IV) r = 2
๋๋์ด f(x)์ ์ ๋ฐ์ ์ธ ๊ธฐ์ธ๊ธฐ๊ฐ ์ค์ด๋ค์๊ณ , ์ฌ์ด ์์ (1์ ๊ทผ์ ํ ๊ฐ๋ค)๋ค์ ๋ํด์ ํจ์ซ๊ฐ์ด 0์ ๊ฐ๊น์์ง ๋ชจ์ต์
๋๋ค.
V) r = 5
์๋๋ก ๋ณผ๋กํ ๋ชจ์ต์ผ๋ก x > .5์ ๊ฐ์ ๋ํด์ ๊ฑฐ์ 0์ ์๋ ดํ ๋ชจ์ต์
๋๋ค.
โโ
์ ์ ์๋ ์ธ์ฌ์ดํธ
์ด๋ฅผ ํตํด ์ ์ ์๋ ํต์ฐฐ์ r๊ฐ์ด ์ปค์ง์ ๋ฐ๋ผ ์ฌ์ด ์์ ์ ๋ถ๊ณผ๋๋ ๊ธฐ์ธ๊ธฐ(gradient)๊ฐ ์ ์ ์์ด์ง๋ค๋ ๋ป์
๋๋ค.
๊ทธ๋ฆผ์์ r๊ฐ์ด 5๋ฅผ ๋์ด๊ฐ๋ ์๊ฐ๋ถํฐ๋ p > 0.5์ ๋ํด์ ๊ฑฐ์ ๊ธฐ์ธ๊ธฐ๋ฅผ ์ฃผ์ง ์๊ณ ์์ต๋๋ค.
ํ์ง๋ง ์ด๋ฐ ๊ทน๋จ์ ์ธ ๊ทธ๋ํ์ ๋ชจ์์์๋ ๋ถ๊ตฌํ๊ณ ,
์ฌ์ด์์ ์ ์ด๋ ค์ด ์์ ์ ๋ํ ๋น์จ์ฐจ์ด๊ฐ ๋๋ฌด๋ ํฌ๋ค๋ฉด ํ์ต์ ์ ์ด๋ฃจ์ด์ง๋๋ค.
ํ์ต ์ด๋ฐ, Focal Loss๋ฅผ ํ์ต์ํฌ ๋ ํ์ํ ์ธ์, PI


ํฐ์คํ ๋ฆฌ์ ์์ ๋ฃ๋ ๋ฐฉ๋ฒ์ ์ ๋ชฐ๋ผ์ ์๊ธฐ๋ก ์์ฑํด๋ณด์์ต๋๋ค.
๋ถ์ฐ์ค๋ช
์ ์ข ๋ง๋๋ฉด,
๋ชจ๋ธ์ ๋ง๋ค๊ณ ์ฒ์ ์ด๊ธฐํ๋ฅผ ํ๊ฒ ๋๋ฉด ๊ฐ์ค์น๋ค์ด 0 ๊ทผ์ฒ๋ก ์ด๊ธฐํ๋ฉ๋๋ค.
๋ฐ๋ผ์ ์ด์ง๋ถ๋ฅ๋ฅผ ํ๊ธฐ์ํ sigmoid์ ํ๋ผ๋ฏธํฐ๋ก A(x) = W^t*x + b์์ ์ด์๋จ์ b๋ง ๋ค์ด๊ฐ๊ฒ ๋ฉ๋๋ค.
๋ง์ฝ ์ด๋ฐ์ background์ ๊ฐ๋ค์ด ๋ฎ์ ํ๋ฅ ์ด ๋์ ํ๋ช
ํ๊ธฐ ์ด๋ ค์ด ์์ ๋ก ๋ถ๋ฅ๋์๋ค๋ฉด,
๋ง์ ์ฌ์ด ์์ ๋ค์ ๊ฐ์ค์น๋ฅผ ๋ง์ด ๋จน๊ณ ๋ชจ๋ธ์ด ํฐ์ ธ๋ฒ๋ฆด ๊ฒ์
๋๋ค.
์ด๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด์ ์ฒ์์๋ ํ๋ฅ ๋ค์ PI๊ฐ์ผ๋ก ๋ง๋ค๋๋ก sigmoid๋ฅผ b๋งํผ ํํ์ด๋(bias๋ฅผ ์ค)์ ์ํฌ ๊ฒ ์
๋๋ค.
ํด๋น PI๊ฐ์ ๋
ผ๋ฌธ์์ 0.01๋ก ์ค์ ํ๋ฏ๋ก ํ๋ฒ b๊ฐ์ ๊ตฌํด๋ณด๊ฒ ์ต๋๋ค.

์ด๋ ๊ฒ b ๊ฐ์ ๊ตฌํด๋ณด์์ต๋๋ค.
-4.595์ ๊ทผ์ ํ ๊ฐ์ด ๋์๊ตฐ์.
์ด์ ์ด ๊ฐ์ ๋ง์ง๋ง Dense ์ธต์์ ํ๋ผ๋ฏธํฐ๋ก ๋ฃ์ด์ฃผ๋ฉด ํํ์ด๋์ด ์ด๋ฃจ์ด์ง๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ์ต์ nan์ด ๋จ์ง ์๊ณ ์์ ์ ์ผ๋ก ์ด๋ฃจ์ด์ง ๊ฒ์
๋๋ค.
(Focal Loss๋ฅผ ์ฌ์ฉํ ๋๋ ํด๋น ์ธ์๋ฅผ ๋ฃ๊ธธ ๋ฐ๋๋๋ค.)
A-Balanced CE
ํด๋น Cross Entropy๋ ๋
ผ๋ฌธ์์ ์ ๊น ์ ์ํ๋ ์์ด๋์ด์ธ๋ฐ,
๋ง์ง๋ง Focal Loss์ ๊ณต์์ ์๊ฐํ ๋ ๋ค์ด๊ฐ์์ด์ ์๊ฐํ๊ฒ ์ต๋๋ค.
ํด๋น ๊ฐ์ Loss์ ์์ ๋ถ๋ ์์๊ฐ์ผ๋ก์จ ํด๋์ค์ ๋ถ๊ท ํ์ ํด์ํ ๋ ์ฌ์ฉํฉ๋๋ค.
๋ณดํต์ ๋ค์ค ๋ถ๋ฅ์์ ๋ง์ด ์ฌ์ฉํ๋๋ฐ,
๋ค์ค ํด๋์ค์๋ ๊ฐ์๊ฐ ๋ง์ด ๋ถ์กฑํ๊ณ ๋ธ๋ฆฌ๋ ํด๋์ค๊ฐ ์์ ์ ์๊ธฐ ๋๋ฌธ์
๋๋ค.
์ฌ๊ธฐ์ ๋ค์๋ ์๊ฐ์ 2์ง ๋ถ๋ฅ์ผ๋๋ โํด๋น ๊ฐ๊ณผ ์๋ ๊ฐ๋ง ์์ผ๋ฏ๋ก foreground, background๋ก ์๊ฐํ๋ค๋ฉด modulating factor๊ฐ ๊ทธ ์ญํ ์ ๋์ ํด์ค ์ ์์ง ์์๊น?โ ๋ผ๊ณ ์๊ฐํ์ต๋๋ค. ๊ทธ๋ ์ง๋ง ๋
ผ๋ฌธ์์๋ ๊ทน๋จ์ ๋ถ๊ท ํ ์ํฉ์๋ ๊ฐ๋ง๊ฐ์ผ๋ก ๋ถ์กฑํ ์๋ ์๊ธฐ ๋๋ฌธ์ ์ํ ์์๋ฅผ ์ถ๊ฐํด์ฃผ๋ ๊ฒ์ด๋ผ๊ณ ํฉ๋๋ค.
์ํ ๊ณ์ฐ์,
์ ์ฒด ๋ฐ์ดํฐ๋ฅผ ๋๋ฉฐ ํด๋น ๋ฐ์ดํฐ๊ฐ ๊ฐ์ง๋ ๋น์จ์ ์ธก์ ํ ํ,
โ์ํ = ์ ์ฒด ๋ฐ์ดํฐ/ํด๋น ๋ฐ์ดํฐโ๋ก ๊ณ์ฐํ๊ฒ ๋ฉ๋๋ค.
Reference:
Focal Loss for Dense Object Detection (https://arxiv.org/abs/1708.02002)