목록Research (68)
숟가락 그만 얹어

Mutual information (MI)는 두 확률 변수 간의 mutual dependency를 나타낸다. 정의는 각 확률 변수의 marginal probability의 곱에 대한 joint probability의 비이다. Joint distribution을 안다면 non-linear dependency를 계산할 수 있어 단순 correlation을 계산하는 이상의 의미를 가질 수 있다. 그러나 각 확률 변수가 pmf form이거나 잘 알려진 pdf form이 아니라면 exact computation이 어렵다. 본 논문은 KL-divergence 정의를 relax하고 neural networks로 approximate하는 방법을 제안한다. Relax KL-divergence Form MINE 위 rep..

Distributional uncertainty는 categorical distribution으로부터 추정되는 uncertainty로, Dirichlet distribution을 따른다고 가정한다. Dirichlet distribution은 k개 class에 대한 확률 값을 (0~1) 표현한 분포로 out-of-distribution example에 대해서는 분산이 커진다. (hyper-parameter인 alpha를 NN의 output으로 학습한다) Uncertainty를 measure하는 metric 중에 Mutual Information (MI)은 다음과 같이 정의될 수 있다. 위 식은 MI의 정의인 H(y) - H(y|theta)와 같다. 앞 term은 theta가 marginalized out ..
One-hot encoding된 y_train에 대해 factor = 0.2 # 적당한 값으로 y_train = (1 - factor) * y_train + (factor / num_classes) References [1] C. Szegedy et al., Rethinking the Inception Architecture for Computer Vision, CoRR 2015

그나마 건진 것들. 데이터셋에 따라 anomaly 종류에 따라 성능 잘 나오는 모델이 다르다. Classification approach와 reconstruction approach를 함께 활용해야 할 듯. Generalization이 잘 되면 오히려 detection 성능을 떨어뜨릴 수도 있기 때문에 여러 모델에 대해 실험을 해보고 판단하자. References [1] L. Ruff et al., A Unifying Review of Deep and Shallow Anomaly Detection, arXiv 2020

Convolution에서 batch normalization (BN)을 위한 parameter 추정 시 activation shape이 (B, W, H, C)라면 mean과 variance는 tf.reduce_mean_var(input, [0, 1, 2])으로 계산된다. 위 방법은 batch size에 따라 statistics가 크게 영향을 받으므로 one sample을 이용한 layer normalization (LN), instance normalization (IN)이 제안되었고, one sample에 대해 channel group을 나누고 각 group에 대한 statistics를 계산하는 group normalization (GN)도 소개되었다. 그런데 충분한 크기의 batch가 가능한 경우에는..

어떤 모델 f를 선형 모델 g로 근사하면 g는 아래와 같이 표현될 수 있다. z'는 variable이고 phi는 z'의 contribution인데 phi를 Shapley value로 간주하고 아래와 같이 계산할 수 있다. Variable i의 contribution은 i의 포함 여부에 따른 output 차이의 기댓값으로 계산할 수 있다. 한 variable에 대해 정확한 Shapley value를 구하려면 2^F 번을 시행해야 하기 때문에 논문에서는 linear regression을 활용하는 Kernel SHAP, DeepLift의 특성을 활용하는 Deep SHAP 등 approximation 방법을 제안하고 있다. 논문을 다시 보며 생각한 것들 1) 위 Shapely value equation에서 분모..

WaveNet paper만 봐서는 어떻게 동작하는지 잘 모르겠어서 이것저것 찾아보았다. 1-D convolution에서 causal을 구현하려면 zero padding을 input의 왼쪽 side에만 붙이면 된다. (output[t]가 input[t+1:]에 영향을 받지 않게 된다) Stride가 1이면 input과 output의 shape이 같다. 논문에서의 dilation과 Pytorch에서의 dilation의 의미가 조금 다른 것 같은데, 전자는 두 step 사이의 거리를 2^(dilation)으로 정의한 것 같고 후자는 (dilation - 1)이다. Input의 양 side에 padding을 붙이고 convolution 계산 후에 오른쪽 side를 제거할 수도 있다. References [1] ..

Deep SVDD의 semi-supervised setting이다. Unlabeled data는 대부분 normal인 것으로 가정하고 latent space에서 normal을 대표하는 centroid와 거리가 가까워지도록 모델을 학습한다. Centroid는 학습시킨 Autoencoder를 이용하여 training data에 대한 initial pass의 mean으로 설정한다. (왼쪽 term) Abnormal로 label된 data는 centroid에서 멀어지도록 학습한다. (중간 term) 이는 normal sample에 대해서는 entropy를 낮추는 효과가 있고 abnormal sample에 대해서는 entropy를 높이는 효과가 있다고 하는데, 사실 latent space를 Gaussian으로 가..

딥러닝 모델을 더 robust하고 generalizable하게 만드는 방법은 여러 단계에서 분포를 부드럽게 하는 것이다. 예를 들어 1) data space에서는 augmentation, calibration, pre-training, 2) parameter space에서는 ensemble, stochastic apporach, weight average, 3) feature space에서는 fit on Gaussian prior, information theoretic approach 등을 사용할 수 있다. (내 뇌피셜) Mixup은 augmentation 방법의 일종으로 data sample을 weighted average하여 smoothed sample을 생성하는 방법이다. 이때 weight lam..

One-class classification, self-supervised learning, metric learning의 총집합. 1) One-class classification: 정상 데이터만으로 모델을 학습시켜 feature 공간에 투영시키는 사상. 2) Self-supervsied learning: input data에 transformation m을 가하고 어떤 m을 적용했는지 맞추는 self-supervised 모델을 학습한다. General data에 적용하기 위해 domain knowledge 기반의 transformation이 아닌, 학습되지 않는 random W와 b를 두고 Wx + b를 적용한다. Adversarial attack에 더 robust한 결과를 보여준다. (그냥 Gaus..