Hello Potato World
[ํฌํ ์ดํ ๋ ผ๋ฌธ ๋ฆฌ๋ทฐ] (TCAV) Interpretability Beyond Feature Attribution:Quantitative Testing with Concept Activation Vectors ๋ณธ๋ฌธ
[ํฌํ ์ดํ ๋ ผ๋ฌธ ๋ฆฌ๋ทฐ] (TCAV) Interpretability Beyond Feature Attribution:Quantitative Testing with Concept Activation Vectors
Heosuab 2021. 8. 29. 21:01
โ ๏ฝก ห โ๏ธ ห ๏ฝก โ ๏ฝก ห โฝ ห ๏ฝก โ
[XAI paper review]
Concepts
CNN์ Input์ผ๋ก๋ถํฐ layer๊ฐ ๊น์ด์ง์ฃผ๋ก high-level์ feature๋ฅผ ์ถ์ถํ๋ค. ๋ฎ์ layer์์๋ Edge, Comer, Color์ ๊ฐ์ ๊ตฌ์ฒด์ ์ธ ์ ๋ณด๋ค(Low-level Features)์ ์ถ์ถํ๊ณ , ๊น์ layer์์๋ Object์ ์ผ๋ถ๋ถ์ด๋ ์ ์ฒด Object์ฒ๋ผ ์ฌ๋์ด ์ง๊ด์ ์ผ๋ก ๋ณผ ์ ์๋ ์ ๋ณด๋ค(High-level Features)๋ฅผ ์ถ์ถํ๋ค.
Image classifier์ ๊ฐ์ ๋ง์ ์์คํ ์์ high-level feature๋ณด๋ค๋ low-level feature๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ด ๋ ผ๋ฌธ์์๋ ์ฌ๋์ด ์ง๊ด์ ์ผ๋ก ์ดํดํ ์ ์๋ ํน์ง ๋๋ ์ฌ์ฉ์๊ฐ ์ง์ ์ ์ํ ํน์ง์ Concept์ด๋ผ๊ณ ์ ์ํ๊ณ ์ด Concept์ ๊ธฐ๋ฐ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ดํดํ๋ ๋ฒ(CAV: Concept Activation Vector)์ ์๊ฐํ๋ค.
- Model Interpretability๋ฅผ ์ํ ๊ธฐ์กด ์ ๊ทผ ๋ฐฉ๋ฒ
๋ชจ๋ธ์ ์์ธก์ Input feature์ ๊ด์ ์์ ์ดํดํ๋ค. ์๋ฅผ ๋ค์ด, Logistic regression classifier์์๋ coefficient weights๊ฐ ๋ชจ๋ธ ํด์์ ์ฌ์ฉ๋ ์ ์๊ณ , Saliency Maps์์๋ ๊ฐ๊ฐ์ pixel์ ๋ํ ์ผ์ฐจ ๋ฏธ๋ถ weights๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ์ด๋ฌํ ์ ๋ณด๋ ์ฌ๋์ด ์ง๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ํ๋ค๋ค.
- Concept์ ์ฌ์ฉํ ์ ๊ทผ ๋ฐฉ๋ฒ
์์์ ์ธ๊ธํ๋ฏ์ด, ์ด ๋ ผ๋ฌธ์์๋ ์ฌ๋์ด ๋ฐ๋ก ์ดํดํ๊ธฐ ์ฌ์ด ๊ฐ๋ (=Concept)์ ํตํด ๋ชจ๋ธ์ ์ดํดํ๊ณ ์ ํ๋ค. Concept์ Object, Color, ๋๋ ์ด๋ ํ Idea๋ฅผ ํฌ๊ดํ์ฌ ์ด๋ค๊ฒ์ด๋ ๋ ์ ์๋๋ฐ, "์ผ๋ฃฉ๋ง"์ ๋ถ๋ฅํ๋ classifier์์๋ "Dotted", "Zigzagged", "Striped"์ ๊ฐ์ concept์ด ์ฌ์ฉ๋ ์ ์๊ณ , ์๊น์ ๊ด์ ์์๋ "Red", "Yellow", "Green"๋ฑ ์ด๋ ํ ๊ฒ๋ concept์ผ๋ก ์ ์๋ ์ ์๋ค.
CAV: Concept Activation Vector
์ฌ๊ธฐ์ CAV(Concept Activation Vector)๋, ๋ชจ๋ธ์ด ์ด๋ฏธ์ง๋ฅผ ํด์ํ ๋ ์ฌ์ฉํ๋ low-level(์๋ฅผ ๋ค๋ฉด pixel values)์ feature๋ฅผ concept์ผ๋ก ๋ณํํ๋ ๊ณผ์ ์ ๋งํ๋ค.
- $e_m$ : input features, neural activation๊ณผ ๊ฐ์ data์ ๊ด๋ จ๋ ๋ฒกํฐ
- $E_m$ : $e_m$ ๋ฒกํฐ๋ค์ ์ํด ๋ง๋ค์ด์ง๋ ๋ฒกํฐ๊ณต๊ฐ
- $e_h$ : human-interpretable concept์ ๊ด๋ จ๋ ๋ฒกํฐ
- $E_h$ : $e_h$ ๋ฒกํฐ๋ค์ ์ํด ๋ง๋ค์ด์ง๋ ๋ฒกํฐ๊ณต๊ฐ
๋ค์๊ณผ ๊ฐ์ด ์ ์๋์์ ๋, CAV๋ ์๋์ ๊ฐ์ ํจ์ g๋ก ํํ๋๊ณ , g๊ฐ linearํ ๋ linear Interpretability๋ผ๊ณ ๋ถ๋ฅธ๋ค.
ํจ์์ ์๋ก, ์ด๋ฏธ์ง์์ color ๋๋ texture, edge์ ๋ณด๋ค์ ์ฌ์ฉํ์ฌ zebra์ "Striped" concept์ ์ ์ํ ์ ์๋ค. ์ด ๋ concept $E_h$๋ input feature๋ training data์ ์ํด ์ ํ๋์ง ์์๋ ๋๊ณ , ๊ธฐ์กด features์ ๊ด๋ จ์ด ์๋ ์๋ก์ด ๊ฐ๋ ์ ์ฌ์ฉํ ์ ์๋ค.
CAV๋ฅผ ์ ์ํ๊ธฐ ์ํด์๋ ํน์ layer $l$์์ ์ฌ์ฉ์๊ฐ ๊ด์ฌ์๋ concept์ ๊ด๋ จ๋ data example๋ค์ activation์ ์ฌ์ฉํด์ผ ํ๊ณ , ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ค.
- Input์ผ๋ก ์ฃผ์ด์ง example์ค์์ concept $C$์ ๊ด๋ จ๋ ๋ฐ์ดํฐ๋ค(concept set)๊ณผ ๊ทธ ๋ฐ์ดํฐ๋ค์ ๋ฐ๋๋๋ ๋ฐ์ดํฐ๋ค(random examples)๋ฅผ ์ ์ํ๋ค.(โ: "striped"์ ๋ํ concept set๊ณผ random examples)
- $P_C$: concept set
- $N$: random examples
- ๋ชจ๋ธ์ ํ์ต์ํจ๋ค. (โ: "zebra" class๋ฅผ classifyํ๊ธฐ ์ํ training data, โ: ํ์ต๋ Network)
- ํน์ layer $l$์์, $P_C$๊ณผ $N$ ๊ฐ๊ฐ์ ์ํด ์์ฑ๋๋ activation์ ๊ณ์ฐํ๊ณ , ์ด ๋ activation space๋ฅผ ๋ถ๋ฆฌํ๋ linear classifier๋ฅผ ํ์ตํ๋ค. (โ: ๊ฐ๊ฐ์ activation space์ linear classifier)
- {$f_l(x): x \in P_C$} vs {$f_l(x): x \in N$}
- ๊ตฌํด์ง linear classifier์ ์ง๊ตํ๋ ๋ฒกํฐ๋ฅผ ํตํด CAV($v^l_C$)๋ฅผ ์ ์ํ ์ ์๋ค.
- $v^l_C \in \Re^m$ : concept $C$์ linear CAV. input $x \in \Re^n$์ด๊ณ layer $l$์ neuron์ ๊ฐ์๊ฐ m๊ฐ์ผ ๋, $f_l : \Re^n \rightarrow \Re^m$
TCAV: Testing with CAV
์ด ๋ ผ๋ฌธ์์ ์ ์ํ๋, CAV๋ฅผ ์ฌ์ฉํ ์๋ก์ด linear interpretability ๋ฐฉ๋ฒ์ TCAV๋ผ๊ณ ํ๋ค. TCAV๋ ๋ฐฉํฅ๋ํจ์๋ฅผ ์ฌ์ฉํ๋ฉฐ CAV์ ์ํด ํ์ต๋ high level concept์ ๋ํ ๋ชจ๋ธ์ prediction์ ๋ฏผ๊ฐ๋๋ฅผ ์ธก์ ํ๋ค. ์๋ฅผ ๋ค์ด "zebra"๋ฅผ ๋ถ๋ฅํด๋ด๋ ๋ชจ๋ธ์ด ์๋ค๊ณ ํ๋ฉด, TCAV๋ ์๋ก ์ ์๋ "striped"๋ผ๋ concept์ด "zebra"๋ผ๋ prediction์ ์ด๋ค ์ํฅ์ ๋ฏธ์น๋์ง ๋ถ์ํ ์ ์๋ค. ์ฆ, TCAV๋ ํน์ Concept์ด ํด๋น Class์ ์ผ๋ง๋ ๊ถํฉ์ด ์ ๋ง๋์ง ๋ถ์ํ๋ค.
TCAV์ 4๊ฐ์ง Goal์ ๋ค์๊ณผ ๊ฐ๋ค. (๋๋ ์ฅ์ ์ด๋ผ๊ณ ํ ์ ์๊ฒ ๋ค.)
- Accessibility : Machine Learning ์ ๋ฌธ๊ฐ๊ฐ ์๋์ฌ๋ ๋ถ์ํ ์ ์๋ค.
- Customization : ์ด๋ ํ Concept์ด๋ ์ ํ ์์ด ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
- Plug-in readiness : ์ด๋ฏธ ํ์ต๋ ML ๋ชจ๋ธ์ ์ฌํ์ตํ๊ฑฐ๋ ์์ ํ ํ์๊ฐ ์๋ค.
- Global quantification : Input data์ ๊ฐ๊ฐ์ ๋ํ ํด์ ๋ฟ๋ง ์๋๋ผ ์ ์ฒด data, ๋๋ ์ ์ฒด class์ ๋ํ ํด์์ ์ ์ํ ์ ์๋ค.
Saliency map์ผ๋ก ์์๋ก ๊ณ์ฐ๋ฒ์ ์ดํด๋ณด๋ฉด, ํน์ class $k$์ ๋ํ ํ๋์ data $x$์ logit๊ฐ์ $h_k(x)$๋ผ๊ณ ํ๊ณ , ํด๋น data $x$์ (a,b)์ขํ์์์ pixel์ $x_{a,b}$๋ผ๊ณ ํ๋ฉด,
pixel (a,b)์ ๊ฐ์ด ๋ณํ์ ๋ class $k$์ ๋ํ ๋ชจ๋ธ์ ๋ฏผ๊ฐ๋๋ ์๋์ ๊ฐ์ ๋ฏธ๋ถ์ ํตํด ๊ตฌํ ์ ์๋ค.
๊ฐ์ ๋ฐฉ์์ผ๋ก CAV์ ๋ฐฉํฅ ๋ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด, ๋ชจ๋ธ์ ๋ฏผ๊ฐ๋๋ฅผ ์๋ฏธํ๋ $S_{C,k,l}(x)$ (Conceptual Sensitivity๋ผ๊ณ ํ๋ค.) ๋ฅผ ๊ตฌํ ์ ์๋ค. ์ฆ, (Activation์ ๋ณํ๋) * (Concept $C$์ CAV์ ๋ณํ๋ logit)์ผ๋ก ๊ณ์ฐ๋๋ค. ์ด ๋ h๋ $h_{l,k} : \Re^m \rightarrow \Re$.
TCAV๋ ์ต์ข ์ ์ผ๋ก ์์์ ๊ตฌํ Conceptual Sensitivity๊ฐ์ ์ฌ์ฉํ๋ค. Supervised task์์ $k$๊ฐ class label์ ์๋ฏธํ๋ค๊ณ ํ ๋, $X_k$๋ ์ฃผ์ด์ง label์ ๊ด๋ จ๋ ๋ชจ๋ input data๋ฅผ ๋ํ๋ธ๋ค. ์ด $X_k$ ๋ฐ์ดํฐ ์ค์์ concept $C$์ ๊ด๋ จ๋ Conceptual Sensitivity์ data์ ๋น์จ์ ๊ตฌํ๋ฉด, ํด๋น label์ ๋ํ concept $C$์ globalํ ์ํฅ๋ ฅ์ ๊ณ์ฐํ ์ ์๋ค.
๋ถ์๋ $X_k$๋ฐ์ดํฐ ์ค positive(์์)ํ Conceptual Sensitivity๋ฅผ ๊ฐ์ง๋ data์ ์งํฉ์ด ๋๊ณ , ๋ฐ๋ผ์ $TCVA_{Q_{C,K,l}}$์ [0,1]์ ๋ฒ์๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค.
Results
- GoogleNet์ ๋ชจ๋ layer์ ๋ํ Relative TCAV์ ๊ฒฐ๊ณผ๊ฐ๊ณผ, Inception V3์ ๋ง์ง๋ง ์ธ ๊ฐ์ layer์ Relativa TCAV๊ฒฐ๊ณผ๊ฐ์ด๋ค. ์ต์ข "Fire engine" class์๋ "Red" Concept์ด ์ค์ํ ์ํฅ์ ๋ฏธ์น๊ณ , "Zebra" class์๋ "Striped" Concept์ด ์ค์ํ ์ํฅ์ ๋ฏธ์น๋ ๋ฑ์ ๊ฒฐ๋ก ์ ํ์ธํ ์ ์๋ค.
- CAV๋ฅผ ์ฌ์ฉํ์ฌ ํน์ Concept์ ๊ด๋ จ๋ ์ด๋ฏธ์ง๋ค์ ๋ถ๋ฅํ๋ ์์
์ ํ ์๋ ์๋ค.
- ์๋ ์์ ์ค ์ผ์ชฝ ๊ทธ๋ฆผ์ ๋ ์ถ์์ ์ธ "CEO"๋ผ๋ Concept์ผ๋ก ํ์ต๋ CAV๋ฅผ ํตํด "Stripes" Concept์ ๋ถ๋ฅํ ๊ฒฐ๊ณผ์ธ๋ฐ, ๊ฐ์ฅ Most similar(Top 3)์ ๊ฒฐ๊ณผ๋ก ๋์จ Stripes๊ฐ CEO๊ฐ ๋ ์์ฃผ ์ ์๋งํ ์ํธ ๋๋ ๋ฅํ์ด์ ์ด์ธ๋ฆฌ๋ Striped ๋์์ธ์ผ๋ก ํด์๋๊ณ , least similar๋ก ๋์จ ๊ฒฐ๊ณผ๋ CEO์ ์ด์ธ๋ฆฌ์ง ์๋ Striped ๋์์ธ์ผ๋ก ํด์๋ ์ ์๋ค.
- ์ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์ "Model Women"์ผ๋ก ํ์ต๋ CAV๋ฅผ ํตํด "Neckties"๋ผ๋ class์ ๋งค์นญ๋๋ ๋ฐ์ดํฐ ์ด๋ฏธ์ง๋ค์ ๋ถ๋ฅํ ๊ฒฐ๊ณผ์ธ๋ฐ, Most similar(Top 3)์ ๊ฒฐ๊ณผ๊ฐ "Neckties"๋ฅผ ํ "Women"์ ์ด๋ฏธ์ง๊ฐ ๋์จ ๊ฒ์ ๋ณผ ์ ์๋ค.
- ๋ ๋ค๋ฅธ CAV์ ํ์ฉ ๋ฐฉ๋ฒ์ผ๋ก Empirical Deep Dream์ ๋ณผ ์ ์๋ค. Empirical Deep Dream์ CAV๋ฅผ ์ต๋ํ ํ์ฑํํ๋ ํจํด์ ์ต์ ํํ๊ณ ํด๋น Concept์ Semanticํ ๊ฐ๋ ๊ณผ ๋น๊ตํ๋ ๋ฐฉ์์ด๋ค. ์ฆ, ํน์ Neuron ๋๋ Neuron์ ์งํฉ์ ์ต๋ํ์ผ๋ก ํ์ฑํํ๋ ํจํด์ Visualizeํ ์ ์๋ค. ๋ค์ ๊ฒฐ๊ณผ๋ "Knitted Texture", "Corgis", "Siberian Huskey"๋ก ํ์ต๋ CAV๋ฅผ ๋ฐ์ํ Deep Dreamed ํจํด์ ์๊ฐํํ ๊ฒ์ด๋ค. ์ด ๊ฒฐ๊ณผ๋ฅผ ํตํด TCAV๊ฐ ํน์ layer์์ ํ์ต๋๋ direction์ด๋ ํจํด์ ์ ์ํ๊ณ ์๊ฐํํ ์ ์์์ ์ ์ ์๋ค.
References