NLP

[Day35] NLP Intro (word embedding) 필기

김다응 2022. 6. 23. 07:52
728x90

Natural language processing (ACL, EMNLP, NAACL)

  • Low level parsing
    • tokenization, stemming
  • Word and pharse level
    • NER(하나의 고유명사로 인식), POS tagging, noun-pharse chunking, dependency parsing, conference resolution
    • Semantic relation extraction
  • Sentence level
    • sentiment analysis, machine translation (각 단어별로 적절한 번역 어순 고려)
  • Multi-sentence and paragraph level
    • Entailment prediction
    • 기존에는 키워드가 포함된 웹페이지 리스트가 띄워짐
    • 문서로 부터 답에 해당하는 것을 찾아 나가는 것
  • Text mining
    • 상품 소비자 정보 추출 (topic modeling
    • document clustering
    • text mining 은 social science 분야와 밀접한 관련이 있음 (SNS)
  • Information retrieval (정보 검색 분야)
    • 구글이나 네이버에서 사용하는 기술
    • 검색 엔진 성능 고도화로 인해 어느정도 성숙한 상태임

trends of NLP

  • 숫자가 아니라 벡터 형태로 표현된 각 단어를 받아들임 (embedding vector)
  • 단어의 sequence 를 다룰 수 있는 모델 RNN LSTM GRU 같은 모델이 자연어 처리에 활용이 됨
  • RNN 은 self attention, bert 등등...

BAG OF WORDS

  • Word Embedding

  • 순서를 고려하여 언어가 얼마나 자연스러운지 확률 값을 분류하는 것이다.

Word Embedding

  • 백오브워즈 가정 : 저자의 의도가 단어 사용 여부나 그 빈도에서 드러난다고 보는 가정
    • Deep averaging network (순서 X 등장 유무)
  • 언어 모델
    -dl model
  • 분포 가정
    • PMI P(A) P(B) = log x = 0 (두단어 A,B가 얼마나 자주 같이 등장하는지에 관한 정보 수치화)
    • word2vec


Bag of word Representation

  • Bag of Word
    1. vocablary with unique words
    2. Encode each word with one-hot vector
    3. Represent text data as a sum of one-hot vectors.
  • TF-IDF

  • word 개수 11개 단어 개수 3개라고 하였을 때 i 번째 단어와 j 번째 comment 는 i 번째 단어가 j 번쨰 comment 에 얼마나 등장하는지
  • term frequency : 한 단어가 전체 documentrs 에서 등장하는 빈도

  • TF(is) = 4, DF(PS) = e
  • TF(good) = 1, DF(good) = 1
  • TF-IDF(is) = 4 x log 3/3
  • TF-IDF(good) = 1 x log(3/1) = log3
  • good 이 더 중요한 정보를 갖고 있다는 것을 알 수 있음

naive bayes classifier

  • 어떠한 확률을 가지는지 알 수 있게 됨
  • bayes 분류 모델은 모든 feature 가 독립이라는 가정 아래 적용
  • naive bayes classifier
    • posterior 를 (likelihood * prior) / evidence

  • chain rule 을 사용하여 marginal pdf 처럼 보이게 할 수 있음
  • p(wn | Wn-1 ... W1, C) x P(W-1, W-2, ... , W1, c) x P(c)
  • naive : 모든 feature 가 독립이라는 것에서 나옴 -> 모든 단어 in seq 가 독립하다는 뜻

  • index 값에만 변화가 발생

naive bayes classifier Example

  • spam 이 등장할 확률
  • inbox 가 등장할 확률

  • 값들을 모두 곱하면 spam 6 /1000 spam 아닐 확률 0 으로 나와 spam 으로 처리한다.