본문 바로가기

NLP-CS224N

CS224N - lecture 3 “Neural net learning: Gradients by hand (matrix calculus) and algorithmically (the backpropagation algorithm)”

728x90
반응형

참고:

Classification setup and notation

  • Xi: inputs, indices 나 vectors 형식의 단어, 문장, 문서 등이 될 수 있음. input 의 차원 수는 보통 dimension d 로 표현.
  • Yi: 우리가 예측하고자 하는 labels, classes.
    • ex> Class 에는 sentiment(감정), named entities (naming 된 개체), buy/sell decision 이 있을 수 있고 other words 와 multi-word sequences 가 올 수 있음.

Classification intuition

  • 전통적인 ML 과 통계에서는 위의 그림과 같이
    • Xi 벡터를 고정하고
    • softmax 와 Logistic regression 으로 가중치를 학습 한 후
    • Hyperplane 이라고 불리우는 최적의 decision boundary 를 결정함.

Training with softmax and cross-entropy loss

  • training 을 통해 올바른 클래스를 예측하기를 원함.
  • training (x, y) 에 대하여
    • 올바른 클래스 y 가 올 확률을 최대화 해야 함.
    • 해당 클래스의 음수 로그 확률(negative log probability) 를 최소화

Deep learning CLF Task: NER (Named Entity Recognition)

  • 주어진 텍스트에 대해서 이름을 찾아서 분류: 해당 이름을 people, places, organiation 등으로 분류
    • 해당 단어의 카테고리를 명명해주는 거네.
  • process
    • 각 단어에 한번씩 접근하면서 classifier 를 통해 class 를 할당
      • 여러개의 단어로 구상된 이름의 경우, 연속적으로 동일한 class 를 부여한 경우 하나의 entity 로 인식
      • 한계점: ambigous 한 단어들이 많기 때문에 실제로 entity 확인 과정에 어려움이 있음. 예를 들면 “First national bank” 전체가 은행 이름인지, “national bank” 만 은행 이름인지 확실치 않음.
    • context 내에서 동작하는 word classifier 를 사용
      • 인접한 단어들을 통해서 단어의 ambiguity 를 해결
      • 한 윈도우 내에 위치하는 단어들의 word vector 들을 concatenate 함. 이때 한 word vector 가 d-dimension 인 경우, 새로 생성한 벡터는 5d-dimension 이 된다.(그림 참고)
      • 예시> 3 - layer neural network. 중간층(a) 를 통해서 단어들 사이의 non-linear 한 관계를 학습한다
  • 새로 생성한 벡터를 softmax 의 입력으로 제공해서 probability 를 계산한다. cross-entropy loss 도 함께 사용.
  • 가운데 위치하는 단어(center word)가 location entity 면 high score, 아닌 경우 low score 를 제공함.
  • SGD 를 적용해서 new theta 를 계산해서 파라미터를 업데이트 한다.
728x90
반응형

'NLP-CS224N' 카테고리의 다른 글

CS224N - lecture 2 “Word Vectors and Word Senses”  (0) 2022.08.28
CS224N - lecture 1 “Word Vectors”  (0) 2022.08.21