Skip to content

Sensitivity Analysis of CNN for Sentence Classification

hyerim1048 edited this page Jan 18, 2018 · 1 revision

https://www.evernote.com/l/Aj7wJlfRbmRD5pNbehBn5rOEXi_BGWdaZ2Y


##Sensitivity Analysis of CNN sentence classification paper review

이론적인 부분에 대한 이야기 보단, sentence classification을 하는데 그 중 좋은 성능이 무엇인지에 대해 다룬 논문이다.

###abstract

CNN 1layer로 svm과 logistic보다 성능이 좋다

###introduction

CNN은 머신러닝 모델보다 느리지만 성능이 좋음

하지만, hyperparameter 와 architecture setting이 어려움

따라서 성능이 좋은 조건을 찾기 위한 연구를 해봤음

CNN을 문장에 넣을때는, 문장같은 경우 단어들이 고정된 길이가 잇다보니까 filter이 (region 사이즈*단어벡터)로 사이즈를 만든다. 각각의 region size를 통하고(2,3,4) 그중 (tanh나 Relu를 통해) feature를 뽑고 max pooling을 통해 조합을 하고 문장 분류를 하는 형식.

one hot vector보다 성능이 좋았다./ filter size도 다양하게 해봐라.

•number of feature map 도 중요하다. 근데 수가 증가하면 training이 느려진다.

•다른 pooling stretegies보다 1-max pooling이 제일 성능이 좋다

•Regularization 이 크게 성능에 영향을 주지는 않았다(L2 등 다양한 regularization을 해봤으나 성능에 크게 영향 X)

구현해볼 사람들을 위해서는 table2에서 제시된 결과를 기본으로 사용하길 추천

filter size(3,4,5). 6이상 일때는 크게 성능이 좋아지지 않으나 많이 느려졌다.

filter region 은 1 ~ 10 이면 된다. 하지만 너무 긴 데이터 셋이면 더 큰 region이 필요할 수도 있다. 조정은 데이터셋 마다 최적의 사이즈가 다르니 이걸 정해야 한다.


-Q. 1-max pooling이란?

-A. 최대값 하나만을 뽑는 것. 여기서 여러 가지를 해봤지만 이게 최고엿다고한다

-Q: 다른 pooling 방법은?

-A: k-max pooling strategy:하나만 뽑는 게 아니라 여러 개를 뽑는 pooling 방식인 듯하다. 논문 확인해보니 맞음. 논문에서는 k를 5,10,15,20개를 사용해봤다.

-Q single region size는?

-A 이미지 인식과는 다르게 여기서는 단어의 길이가 정해져 있으니 ‘열길이’는 정해져 있다. 즉 filter size와 비슷하지만 ‘행길이’만을 의미한 단어이다.

-Q. layer 몇 개로 실험했는가?

-A 1개로만 하였다.

-Q. SVM을 tf에서 어떻게 사용하는가?

-A 논문에서는 scikit-learn을 사용햇다. SVM이 정확도가 몇 나오는지를 먼저 봐보고, 그 후 CNN을 시작하였다

Clone this wiki locally