[NLP] Maximum Entropy Model

redbeet1007·2023년 7월 24일
3

NLP

목록 보기
3/3
post-thumbnail

Maximum Entropy Model

NLP에서는 다항 로지스틱 회귀를 최대 엔트로피 모델이라고 부른다. 단어 xx가 주어졌을 때 범주 cc가 나타날 확률은 다음과 같이 계산된다.

P(cx)=exp(wcTf)exp(wTf)P(c|x) = \frac{exp(\mathbf{w_c^T} \cdot \mathbf{f})}{\sum exp(\mathbf{w^T} \cdot \mathbf{f})}

위의 식에서 f\mathbf{f}는 단어 xx의 feature vector이다. 이 벡터는 연구자의 언어학적 사전지식을 반영할 수 있다는 점에서 초기값 설정에만 개입할 수 있는 이전의 모델들과 비교하여 가장 크게 나타나는 차이점이라고 할 수 있다.
다음 문장을 보자.

SecretariatNNP isBEZ expectedVBZ toTO race tomorrow.\text{Secretariat}_{\scriptstyle\text{NNP}}\ \text{is}_{\scriptstyle\text{BEZ}}\ \text{expected}_{\scriptstyle\text{VBZ}}\ \text{to}_{\scriptstyle\text{TO}}\ \text{race tomorrow}.

위 문장에서 x=racex=\text{race}이다. 연구자의 언어학적 지식에 따라 C={VB,NN}C= \left\{ \text{VB},\text{NN} \right\}라고 판단했으며, f\mathbf{f}를 다음과 같이 정의했다고 가정하자.


위 함수에 따라, f\mathbf{f}는 다음과 같다.

f( VB , race )=[0,1,0,1,1,0]f( NN , race )=[1,0,0,0,0,1]f(\text{ VB , race }) = [0,1,0,1,1,0] \\ f(\text{ NN , race }) = [1,0,0,0,0,1]

ww가 모두 학습이 끝났다고 가정하면, 위의 식을 이용하여 'race'의 범주를 계산할 수 있다.

참고 자료

[1] ratsgo, 최대엔트로피모델(Maximum Entropy Models)[online]

profile
KAIST 24

0개의 댓글