ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 텍스트마이닝_GloVe
    Text Mining 2019. 12. 18. 15:11

    GloVe

    GloVe에 대해 알아보기 전에 GloVe보다 더 상위의 개념인 Embedding에 대해서 알아보고자 한다.

    Embedding이란 말은 어디서 온 것일까? Embed의 뜻은 끼워 넣다. 박아 넣다. 이런 뜻이다. 벡터의 공간 안에 단어를 벡터로 변환시켜 끼워 넣는 다라고 생각하면 될 것이다.

    수학적으로 표현하자면 X라는 공간의 데이터에서 원하는 정보를 잘 저장하여, Y라는 새로운 공간으로 보내는 과정이다.

    그런데 X라는 공간의 데이터들은 각 단어별로 높은 차원을 이루고 있다. Y라는 새로운 공간으로 보낼 때는 차원을 축소하게 된다.

     

    차원축소, Dimensionality Reduction는 크게 1) Freature subset selection2) Feature extraction으로 나눌 수 있다.

    머신러닝을 할 때, 우리는 Feature Engneering이란 과정을 거친다. 이 과정은 preprocessing과 modeling 사이에 있는 과정이다. 이 과정의 목적은 데이터가 너무 많을 때 적당한 데이터를 가지고 모델링 하기 위해 도메인의 특성에 따라 새로운 입력 데이터를 만드는 것이다. 차원 축소라고 이야기 할 수 있는데, 이는 차원을 축소하여 데이터 안에 잠재된(축약된) 공간을 이끌어 내기 때문이다. 

     

    1) Freature subset selection

    : 가장 빈번한 것을 뽑는 과정, 가장 정보적으로 관련성 있는 것을 뽑는 과정을 갖는다.

    "The key difference between feature selection and extraction is that feature selection keeps a subset of the original features while feature extraction creates brand new ones."

    elitedatascience blog에서 가져온 글에서 나와있듯이 selection이 extraction과 다른 점은 기존 feature의 subset을 보존한다는 것이다. extraction은 반대로 새로운 것을 만들어낸다.

     

    2) Feature extraction

    : 크게 supervised(PCA)와 unsupervised(LDA)로 나눌 수 있다.

     

    GloVe를 다루기 전에 Word Representation tree를 한번 살펴보고 가자.

    위 tree를 살펴보면 크게 discrete representation과 distributed representation을 볼 수 있다.

    1) discrete representation

    : dictionary(사람이 이해 가능한 형태)기반, one-hot(binary로 간단한 구조) 기반이다.

    그러나 단어와의 관계를 측정할 수 없다. 사람이 직접 구축해야한다. 그래서 주관적인 판단이 개입될 수 있다. 새로운 단어가 나올 경우 일일이 대응해야 한다. 뉘앙스와 같은 것들을 표현하기 어렵다.

     

    2) distributed representation

    : 단어의 관계를 측정, 표현 할 수 있다. 비지도 학습이 가능하다. 새로운 단어가 나올 경우에는 Corpus만 제공하면 된다. 또한 다른 모델들과 결합해서 추가적인 정보를 제공할 수 있다.

    그러나 성능을 측정하기 어렵다는 단점이 있다.

     

    """

    GloVe는 사실 내가 비정형데이터분석 수업 때 개인발표로 준비했던 주제이다. 알고리즘을 100% 이해하지는 못했지만 논문을 한줄 씩 읽어 내려가고, 수식을 하나씩 뜯어가며 발표를 준비했었다. GloVe를 준비 할 당시의 텍스트에 대한 나의 지식 수준은 어린이와 같아서 사실 전체적인 흐름을 제대로 몰랐었다. 그러나 이제는 GloVe가 어떤 이유에서 등장했고 어떤 역할을 하는지, 그리고 한계점은 무엇인지 보이는 것 같다.

    """

     

    GloVe(Global Vectors for Word Representation)의 장점은 무엇일까?

    GloVe가 등장하기 전에 Word2VecLSA가 있었고 이 둘은 각각 장단점을 가지고 있었다. Word2Vec(skip-gram) 같은 경우에는 단어의 유사도를 잘 측정하여 유추하는 것에는 강점을 보였다. 그런데 문서 안에서 동시로 발생하는 단어의 정보를 파악하기에는 어려움이 있었다. 반대로 LSA는 SVD를 사용하는 방법으로 단어-문서 간 동시출현을 기반으로 matrix를 구축하여 일반적인 주제 분류에 적합한 기술이기에 통계적으로 강점이 있었다. 이 둘의 장점을 모두 가져와 적용시킨 것이 GloVe이다.

    단어 동시 발생 확률

    식을 도출하는 과정은 내가 발표 자료로 사용했던 PPT파일을 첨부하여 설명한다.

     

     

     

    참고자료

    1. 이영훈. 비정형데이터분석. [Graduate Class at Seoultech]
    2. Elitedatascience. Dimensionality Reduction Algorithms: Strengths and Weaknesses. [Online].Available at: https://elitedatascience.com/dimensionality-reduction-algorithms#feature-selection [Accessed 18 Dec. 2019]

     

     

    댓글

Designed by Tistory.