Lec 2 | MIT 18.06 Linear Algebra, Spring 2005

https://youtu.be/QVKj3LADCnA

image
image

matrix*vector is linear combination of the columns of the matrix, and vector*matrix is linear combination of the row of the matrix.

image

순서가 바뀌지 않는 한도 내에서 결합법칙은 가능하다. 그러므로 위그림에서는 E32와 E21을 먼저 계산할수 있다.

image
image

참고자료) https://youtu.be/NHAatuG0T3Q

Pi는 각 class에 해당하는 값이 나올 확률

entropy 값이 1인경우 완전히 골고루 펼쳐진 상태. 에너지가 골고루 퍼진 상태. disorder값이 최대인상태

(Info 1.1) Entropy – Definition
https://youtu.be/LodZWzrbayY

X random variable은 conitinuous가 아니고 discrete이다. 

log의 base는 10, e 자연상수를 사용할수도 있으나 information theory에서는 보통 2를 사용한다. 특별한 언급이 없는 경우는 2라고 생각한다. base가 2가 아닌 경우 Hb(X)와 같은 형태(b는 base값)로 표기한다. 

https://youtu.be/YM-uykVfq_E

엔트로피 개념 설명

엔트로피가 낮으면 무질서가 낮다.

엔트로피가 높으면 무질서가 높다.

엔트로피가 낮은 상태에서 높은 상태로 이동한다.

엔트로피가 낮은 상태는 에너지가 집중되어 있는 상태

엔트로피가 높으면 에너지는 퍼져 있는 상태

에너지가 집중된 상태에서 보다 집중된 상태로 갈수도 있고 퍼진 상태로 갈수도 있다. 다만 퍼진 상태로 갈 확률이 크다. 

8 1 Generative vs Discriminative Models
https://youtu.be/YQClUDd9ff4

image
image
image
image
image

8 2 Making features from text for discriminative NLP models
https://youtu.be/MemiaOYSB0k

image
image
image

empirical E() 는 실제 data를 이용해서 계산하고 model expectation은 P() 즉 확률을 이용하는 것 같다. 기대값 구하는 공식중에 확률에 확률값을 곱하면 기대값이 되었던 것을 기억하면 이해가 쉽다.

image
image

8 3 Feature Based Linear Classifiers
https://youtu.be/7-7MlBdy3EE

위 그림에서 location인지 아닌지를 평가하는 feature1의 결과는 1.8 feature2의 결과는 -0.6이다. 그래서 이를 합산하면 1.2가 된다. 

exp 를 함으로써 합산된 features계산 값들이 양수가 되게한다. 

참고) exp 그래프

7 1 What is Sentiment Analysis
https://youtu.be/vy0HC5H-484

image
image
image
image
image

7 2 Sentiment Analysis A baseline algorithm
https://youtu.be/Dgqt62RQMaY

image
image
image
image
image
image

negation을 처리하는 한가지 예이다. 

image

P(cj)는 특정 class의 문서가 출현할 확률이다. P(wi | cj)는 특정 class 문서내에서 단어 w가 출현할 확률이다. 밑의 공식은 add one smoothing을 적용한 것이다.

image

sentiment작업에서는 단어출현 유무는 중요하나 출현횟수를 중요하지 않을때가 많으므로 출현유무만을 가지고 계산한다. 이런 형태를 binarized (boolean feature) multinomial naive bayes라고 한다.

image
image
image
image
image
image

7 3 Sentiment Lexicons
https://youtu.be/wBE0FE_2ddE

이미 연구자들이 단어들을 다양한 기준을 통해 classify 한 자료들이 많이 있는데 아래에서 확인 할수 있다.

image
image
image
image
image
image
image

P(w | c)를 P(w)로 나눠줌으로써 다른 단어와 비교가능하게 할수 있다. 이를 scaled likelihood라고 한다. 

image
image

위 그림을 통해 no, not, never등의 negation 단어들이 negative 문자에 보다 자주 사용된것을 알수 있다. 

7 4 Learning Sentiment Lexicons
https://youtu.be/Z7RxBcpyN1U

여기서는 lexicon을 직접 만드는 과정을 보여준다.

image
image

Hatzivassiloglou and McKeown 이 개발한 방법을 여기서는 예제 방법으로 사용한다. 기본 단어와 and, but으로 연결된 새로운 단어들을 추가로 정리해 가는 것이 기본 원리이다.

image
image
image

플러스는 positive, 녹색은 and로 엮여진 경우, 굵은 선은 많이 엮어진 경우. 적색 점선은 but으로 연결되었던 단어들이다.

image

turney algorithm은 연속된 phrase를 이용하는 방법이다. 

우선 단어들을 phrase로 뽑아내고 이 phrase가 positive 단어중의 하나인 excellent와 얼마나 자주 출현하는지 PMI 값을 확인한다. 또 negative 단어와의 PMI값을 구한다. 

이 두값들의 차가 Polarity 값이 된다. polarity 값은 phrase 가 positive에 가까운지 negative에 가까운지를 말해준다. 문서안의 phrase들의 polarity값을 평규내면 문서가 positive 인지 negative인지 알수 있다. 

image

첫줄 해설. jj (형용사) 와 nn(명사), nns(복수명사)가 연결된 경우 세번째 단어와는 무관하게 모두 phrase로 추출한다. 

image
image

P(x, y)는 동시에 출현하는 확률, P(x)P(y)는 두 단어가 독립이라고 보고 출현하는 확률이다. 즉 완전 독립된 단어라고 본경우에 비해 얼마나 동시에 출현하는지를 나타내는 비율이다. 

image
image
image

하나의 문서에 존재하는 다양한 phrase들의 polarity값들을 평균내는 과정이다.

image

7 5 Other Sentiment Tasks
https://youtu.be/3Eo–0_ocIk

어떤 항목 (aspects)에 관한 sentiment인지를 확인해 가는 작업

문서에서 가장 자주 등장하는 단어가 aspect일 가능성이 있다. sentiment 형용사 뒤에 자주 등장하는 단어가 aspect일 가능성이 있다.

aspect를 위위에서 언급한 방법으로 알수 없는 경우. 손수 labeling하는 경우도 있다. 

data가 불균형한경우 일부로 맞춰주는 경우도 있을수 있다. 갯수를 낮추어 맞추기도 한다.

https://youtu.be/VNEdufXVMaU6 1 What is Text Classification
https://youtu.be/kxImnFg4ZiQ

image
image
image
image

6 2 Naive Bayes
https://youtu.be/j39c7Gjx2gE

image
image

감마 기호는 function을 의미한다.

6 3 Formalizing the Naive Bayes Classifier

https://youtu.be/VNEdufXVMaU

image
image
image

d 는 document, c는 class를 의미한다.

P(d|c) 는 likelihood probability, P© prior probability 

image

documents는 x features (단어들)의 연속으로 구성되어있다.

image

P(x1, x2, x3 …….  xn | c)의 경우 conditional 에 conditional에 중첩된 conditional probability 계산이 되는데 이런경우 복잡해지게 된다.

image

계산이 복잡해지는데 이를 간소화 시켜서 계산하는 방법을 사용한다. bag of words를 이용하거나 independent probability를 이용(모든 단어는 서로 independent하다고 가정)한다.

image
image

6 4 Naive Bayes Learning
https://youtu.be/3jR8TZG8T88

image

P(cj)는 전체 문서에서 특정 class의 문서가 나올 확률이다.

P(wi | cj)는 특정 class에서 특정 word가 나올 확률이다. 

image

위의 내용을 간단히 정리하면 특정 class의 모든 문서(시그마부분에 해당)를 하나로 만들고 그 안에서 특정단어들이 나오는 횟수를 이용해 P(wi | cj)를 구한다. 

image

training documents에 fantastic이라는 단어가 한번도 사용되지 않았다. 그런데 새로 주어진 문장에서는 이 단어가 사용되었다고 한다면 이전에는 한번도 나온적이 없었으므로 확률이 0이 되버리게 된다. 즉 새로운 단어에 대한 고려가 전혀 없는 것이다. 이 문제의 해결방법은 아래 그림 참조

image

모든 단어의 출현횟수를 1씩 늘려줌으로써 최소횟수가 0이 아닌 1이 되게된다.

image

우측 하단은 add alpha가 적용된 공식이다.

image

training doc에서 한번도 출현하지 않은 단어는 unknown word로 위와 같이 처리한다.

6 5 Naive Bayes Relationship to Language Modeling
https://youtu.be/LRFdF9J__Tc

image
image
image

6 6 Multinomial Naive Bayes A Worked Example
https://youtu.be/OWGVQfuvNMk

image

P©는 전체 문서들중에 class c 문서가 나올 확률이다. 여기서 사용된 P(w | c)는 add one smoothing이 적용된 특정 class에서 특정 단어들이 나올 확률이다. 

위의 예제는 주어진 training data를 이용해 만든 모델로 test doc의 class를 예상하는 과정이다. 오른쪽 하단의 내용은 주어진 문서 d5가 어떤 클래스인지를 비교 추측하는 것이다. 각 c , j class일 확률을 비교 한다. 이때 d5는 공통으로 들어가는 부분이므로 생략했다.  

image

6 7 Precision, Recall, and the F measure
https://youtu.be/81j2nzzBHUw

참조자료)

andrew ng https://youtu.be/wGw6R8AbcuI

https://youtu.be/W5meQnGACGo

image

위그림이 좀더 이해하기 쉽다.

image

accuracy 측정 방법

image
image

6 8 Text Classification Evaluation
https://youtu.be/TdkWIxGoiak

image
image
image
image
image
image

6 9 Practical Issues in Text Classification
https://youtu.be/uIvSHmsLs-U

text classification에 대한 전반적인 내용을 다루고 있다.

training data가 없는 경우 개발자가 직접 손수 rule을 만든다.

knn k nearest neighbors를 말한다.

보통 training data의 양이 많은 경우 classifier간의 성능차는 별로 없어지게 된다. 

자동, 수동 섞어서 처리한다. 

확률의 곱이 많이 이어지는 경우 그 숫자가 매우 작아지는 경우가 생기는데 이를 underflow라고 한다. 이를 방지 하기 위해 log값을 이용한다. log에서는 두 값이 곱이 합으로 계산되기 때문이다. 

upweighting : 단어의 위치나 사용방법에 따라 가중치를 두는 방법이다.