정형데이터를 위한 딥러닝 모델 TabNet 간단하게

1. introduction

 

정형 데이터를 위한 딥러닝 모델

 

테이블 형식의 데이터에 적합한 학습 아키텍처

 

전처리 과정이 필요없음

 

기존에는 feature 선택과 모델 학습 과정이 나누어져 있지만 TabNet은 한번에 가능하게 만듦

 

각 의사결정 단계에서 순차적인 attention으로 추론할 feature를 선택함

 

feature의 선택으로 어떠한 feature가 중요한 특징을 가지는지 설명도 가능함

 

label이 없는 데이터가 많을 때 self-supervised learning으로 representation에 효과적인 성능 향상을 보여줌

 

의사결정 각각 에서 왜 그 feature를 선택했는지 local interpretability와

 

모델이 만들어지면서 어떤 근거로 feature들이 선택되었는지 global interpretability를 제공할 수 있음

 

2. 왜 의미가 있는가?

 

정형데이터에 boosting model이 선점하고 있다고 하지만 점점 규모가 커지면서 한계를 보일 수 있어 딥러닝 모델이 효과적일듯

 

3. 기본 구조

 

1) encoder

 

각각의 decision step에서 feature transformer, attentive transformer, feature masking의 반복으로 이루어짐

 

encoder의 구조

 

 

2) decoder

 

각 decision step에 feature transformer가 있음

 

 

 

3) feature transformer

 

모든 decision step에서 공유하는 block과 각 decision step에 의존하는 block들로 구성

 

fully connected layer, batch normalization, gated linear unit으로 구성

 

$\sqrt{0.5}$는 학습을 안정되게 할려고 사용한 수치라고 함

 

feature transformer의 구조

 

 

4) attentive transformer

 

현재 decision step 이전에 각 feature가 얼마나 많이 사용되었는지 집계한 정보를 단일 layer에 mapping하여 사용하는 prior scale information

 

각 decision 단계에서 가장 두드러지는 feature를 sparse하게 선택하고자 sparsemax를 사용한 학습

 

sparsemax는 softmax보다 0을 더 만들어주는 함수라고 함?

 

 

 

 

4. 성능 비교

 

자기들이 사용한 dataset에 비교 실험을 한 결과 다른 모델에 비해 압도적인 성능을 냄

 

 

 

그런데 이 성능 비교표만 보고 TabNet이 좋구나라고 생각하는 것보다 자기들이 사용한 데이터셋에는 좋구나라고 생각해야함

 

다양한 데이터셋에 적절한 성능을 내는지는 해보지않으면 사실 모름

 

그리고 TabNet은 딥러닝 모델 치고는 hyperparameter가 너무 많아 tuning이 쉽지 않다는 단점도 있다고 함

 

TAGS.

Comments