"Prior가 뭔지는 알잖아요?"

동의하는척 웃고 넘어간 뒤 한 없이 부끄러워져서 머신러닝 관련 기본적인 통계추론 내용을 정리를 해보았습니다.
논문 읽을 때 자주 나오는 내용인데도 생각보다 간결히 정리하기가 어려웠습니다.
대단한 내용이 있는 건 아니지만 잘 대답할 수 있나 확인해보시면 좋겠습니다.

이 글은 여러 자료를 참조하였습니다.
각 질문과 답에 출처를 적어놓았으니 자세한 내용을 알고 싶으시면 출처를 확인해주세요.

지적, 질문, 의견 환영합니다. 댓글로 달아주세요.

 


질문 리스트

  1. 머신러닝 할 때 통계가 왜 필요할까?

  2. PDF의 값이 1이 넘을 수 있겠는가? 예시를 들자면?

  3. 아는 확률분포와 언제 사용할 수 있는지 말해보라.

  4. 중심극한정리가 무엇이고 어느 맥락에서 사용되는지 설명해보아라.

  5. 모수적 방법과 비모수적 방법의 차이는? 모수적 방법을 사용할 수 없는 경우는 언제인가?

  6. 우도(likelihood)를 설명해 보아라.

  7. 키가 측정할 때 마다 다르다면 어떻게 참값을 추정할 수 있을까?(키가 더이상 크지 않는 상황을 가정하자 ㅠㅠ)

  8. MLE와 MAP차이를 수식으로 쓸 수 있겠는가? 그 의미는? 각 방법의 한계점은 뭐가 있을까? 사전확률(prior)을 설명해 보아라.

  9. MLE 방법과 Mean Squared Error, Cross Entropy를 줄이는 방법이 동치인 경우를 말해보아라.

  10. Log Likelihood를 쓰는 이유는 뭘까? log를 씌우면 MLE의 값이 변하지 않을까?

  11. pure, semi, naive bayesian의 차이가 뭘까? 어떤 장단점이 있을까?

  12. (NLP) MLE와 naive-bayesian을 사용한 Unigram Language Modeling의 학습 방법을 설명해보아라. 이 방법의 문제점은 뭘까?


대답

  1. 데이터를 다룰 때 통계에서 주로 사용하는 가정을 쓴다. 기본적으로 전체를 알지 못하는 상황에서 샘플링된 데이터만을 보고 모델을 만들기 때문에 기본적으로 불확싱설을 지닐 수 밖에 없기 때문이다. 모델을 만드는 일은 파라미터 추정하는 일이라고 생각해볼 수 있다. 이 과정에서 데이터 분포 또는 모델에 대한 가정을 할 때 통계 지식이 필요한 경우가 많다.

  2. 가능하다. PDF에서는 y축이 확률을 의미하는 게 아니기 때문이다. [0, 0.5] 구간에서 1.5를 주고 나머지 값을 적분했을 때 1이 되게 맞추면 된다.

  3. uniform distribution, 정규분포, 베르누이 분포, 이항분포, 베타분포, 디리클레 분포 등등. 데이터에 대한 정보를 전혀 모를 때 정규분포 가정하는 게 좋다. 분류문제는 베르누이 분포로 가정한다. 베타 분포는 알파베타 값을 바꿔가며 분포모양을 조절할 수 있다.[0]

  4. 샘플 수가 충분히 크다면(보통 n>30) 표본평균의 분포가 정규분포(모집단의 평균을 평균으로 갖고, 모집단의 분산/n의 분산을 갖는다)를 따른다는 정리이다.
    유의성 판별에 사용, 평균에 대한 추정시 사용, SGD의 loss의 분포가 정규분포임을 보일 때 사용. 이외에 여러 확률에 대한 증명을 할 때 사용. 수리통계에서 매일 나온다. [1]

  5. 정의가 좀 갈릴 수 있는데 모델 구성시 알려진 확률분포를 사용하느냐 안하느냐의 차이. K-NN의 경우 확률분포를 전혀 사용하지 않는다. 모집단이 정규분포를 따르지 않고 표본수가 적으면 CLT를 사용할 수 없고 모수적 방법을 사용하기 어렵다. [2]

  6. 데이터가 주어졌을 때 파라미터가 변수인 어떤 값이다. 의미를 생각해 보면 모델이 어떤 파라미터를 따를 때 데이터 값이 나올 상대적인 가능성 정도를 의미한다. 연속확률분포인 경우 확률의 의미와 같지 않다. [3]

  7. 측정 키 값이 정규분포를 이룬다고 가정하자. 이런저런 계산을 하면 샘플의 평균을 평균으로 하는 정규분포일 때의 Likelihood가 가장 크다. MLE에 의해서 측정 값들의 평균을 참값이라고 하는게 가장 합리적이다.[4]

  8. 눈 앞에 있는 형상이 고양이일까 강아지일까 분류하는 상황을 생각해보자. 두 가지 추론 방식이 가능하다. 앞의 형상이 강아지일 확률과 앞의 형상이 고양이일 확률을 비교하는 방법. 강아지가 앞의 형상일 확률과 고양이가 앞의 형상일 확률을 비교하는 방법이 있다. 전자는 MAP이고 후자는 MLE이다. MAP는 P(강아지) 와 P(고양이)도 알고 있어야 하고 이를 사전 확률(prior)라고 한다. MLE는 이 두 확률이 같다고 가정하고 푸는 경우와 같다. MAP가 더 합리적이지만 prior를 모른다면 MLE를 쓴다. [5]

    $$ (a) MLE : c^{\star} =\underset{c}{\mathrm{argmax}} P(z|c) $$

    $$ (b) MAP: c^{\star}=\underset{c}{\mathrm{argmax}}P(c|z)=\underset{c}{\mathrm{argmax}} P(z|c)P(c) $$

  9. label 데이터가 정규분포임을 가정하고 MLE를 추론하는 방법은 MSE를 minimize하는 경우와 같다. 베르누이 분포를 가정하고 MLE를 추론하는 방법은 CE를 줄이는 경우와 동치. [6]

  10. 조건부확률을 계산하는 과정에서 작은 값들을 계속 곱하다보면 언더플로우가 일어날 가능성이 있다. log를 씌우면 더하기 연산으로 바꿔 이런 문제를 예방할 수 있다. log는 단조증가함수이므로 Max값을 추정할 때에 영향을 주지 않는다.[8]

  11. Naive Bayesian은 데이터 피쳐들이 전부 독립변수라는 가정을 하고 확률을 계산한다. 참값에서 멀어지지만 이산 변수의 경우 피쳐들의 조합수가 많이 줄어든다. Pure Bayesian의 경우는 변수들간의 종속성을 고려해서 확률을 계산한다. 피쳐의 종류가 많아질수록 계산해야할 확률값이 지수적으로 늘어난다. [5]

  12. 문장이 주어졌을 때 이 문장이 나타날 확률을 문장 내의 토큰들이 나올 확률의 곱으로 계산한다. 모델은 이 확률 데이터를 관측했을 때 Likelihood가 최대화되는 방향으로 Parameter들을 학습한다(MLE). 모델이 학습한 단어 외에 새로운 단어가 나타날 경우 확률이 0이고 학습하는 말뭉치나 stop words에 영향을 많이 받는다. [7]

 


[0] 확률론 기초
https://ratsgo.github.io/statistics/2017/09/21/prob/

[1] A Gentle Introduction to the Central Limit Theorem for Machine Learning
https://machinelearningmastery.com/a-gentle-introduction-to-the-central-limit-theorem-for-machine-learning/

[2] 모수 모델 vs 비모수 모델
https://brunch.co.kr/@seoungbumkim/7#comment

[3] 최대 우도 추정
https://datascienceschool.net/view-notebook/79140e6a9e364bcbb04cb8e525b9dba4/

[4]확률(Probability) vs 가능도(Likelihood)
http://rstudio-pubs-static.s3.amazonaws.com/204928_c2d6c62565b74a4987e935f756badfba.html

[5]베이지언 확률(Bayesian Probability)
https://darkpgmr.tistory.com/119

[6]머신러닝의 전반적인 흐름(에러 관점, 확률론적인 관점 그리고 MLE와 MAP차이 및 연관성)
https://blogyong.tistory.com/28

[7] 언어모델(Language Model)
https://ratsgo.github.io/from%20frequency%20to%20semantics/2017/09/16/LM/

[8]최대우도추정(Maximum Likelihood Estimation)
https://ratsgo.github.io/statistics/2017/09/23/MLE/

 

달이 떴다고 전화를 주시다니요 - 김용택

달이 떴다고 전화를 주시다니요
이 밤 너무 신나고 근사해요
내 마음에도 생전 처음 보는
환한 달이 떠오르고
산 아래 작은 마을이 그려집니다
간절한 이 그리움들을
사무쳐 오는 이 연정들을
달빛에 실어
당신께 보냅니다

세상에
강변에 달빛이 곱다고
전화를 다 주시다니요
흐르는 물 어디쯤 눈부시게 부서지는 소리
문득 들려옵니다

시집《그대, 거침없는 사랑》(푸른 숲) 中


따로 지정해둔 벨소리가 울린다. 오늘은 무슨 이야기를 할까 설레면서 전화를 받는다. 한껏 들뜬 목소리로 달이 떴다고 좀 보라고 한다. 매일 뜨는 달이 뭐 대수인가 싶으면서도 네가 신나 하니 나도 신이 난다. 한 달 전 이맘때가 추석이니 지금쯤 보름일 테다.엘리베이터를 기다리면서 생각해보니 이건 정말 엄청난 일이다. 달이 떴다고 전화를 하다니. 눈을 감고 근사한 밤하늘을 떠올려 본다. 정말이지 생전 처음 보는 광경이다. 밤인데도 밝고 청명해서 사물들이 또렷이 보이고 강 흐르는 소리마저 들린다. 이렇게 아름다운 세상을 선물해준 네가 사무치게 고맙다.

 

 

'문학' 카테고리의 다른 글

  (0) 2019.11.23
<해방- 술 마시는 인간>, 성석제  (0) 2019.11.01
산문시 1 - 신동엽  (0) 2019.10.29
취하라 - 보들레르  (0) 2019.09.26
이제 며칠 후엔 - 프랑시스 잠  (0) 2019.09.14

Word2Vec(이하 W2V)은 현재(2019.10.14) SOTA에서 사용되는 모델은 아니지만 Motivation이나 학습 방법, NLP에 필요한 기술들을 많이 다루고 있어 꼭 공부하고 넘어가야 하는 모델이 아닌가 싶습니다.

W2V에서 알아둬야 하는 내용들을 체크리스트 형식으로 정리하고 짧은 답변을 달아 보았습니다. 이 글은 Ratsgo님의 글[1], [2]과 Quora글[3]을 참고하여 적었습니다.


1. W2V의 기본 가정은 뭐가 있을까?

distributional hypothesis : 비슷한 맥락에서 나온 단어는 비슷한 의미를 지닌다.

 

2. W2V와 단어 빈도수는 어떤 관련이 있는가?

→ Window Size 안에 있는 단어들을 Context로 사용한다. 이 때문에 함께 많이 나온 단어끼리 학습이 자주 일어난다. 같이 나온 단어는 임베딩 벡터끼리 유사도가 높게 만들고 아닌 단어는 낮게 만든다.

 

3. W2V의 Objective Function을 쓸 수 있는가? 분모와 분자는 어떤 의미를 지니는가?

→ 중심 단어가 주어졌을 때 Context Word가 나올 조건부 확률로 정의된다. 분모는 Train Corpus 전체의 유사도 합이고 분자는 Context와의 유사도를 나타낸다. 분자는 높이고 분모는 낮추는 식으로 Maximizing 하는 게 목표다.

 

4. CBOW와 Skip-Gram의 차이와 장단점은 무엇일까? Rare Words를 잘 학습하려면 어떤 방식이 좋을까?

→ CBOW는 문맥이 주어지면 중심 단어를 맞추고 Skip-Gram은 중심 단어가 주어지면 문맥을 맞추는 식으로 학습한다. CBOW에서 Rare Words의 경우 자주 나오는 단어에 비해 확률이 낮게 계산되므로 학습이 잘 안된다.

 

5. Sub-Sampling과 Negative-Sampling은 왜 필요하고 어떻게 다른가?

→ 원래대로 계산하려면 (단어수) * (임베딩 차원수) * 2 만큼의 Parameter가 필요하다. 단어 수가 엄청 많기 때문에 계산량이 폭증하여 계산을 줄일 필요가 있다.
Sub-Sampling은 자주 등장하는 단어를 학습에서 제외하는 방법이다. 제외 확률을 sqrt(빈도수)에 반비례하게 만들어 드물게 나오는 단어는 기회가 있을 때 꼭 학습하고 자주 나오는 단어는 드물게 학습하는 방법이다.
Negative-Sampling은 모든 단어 쌍의 유사도를 계산하는 대신 후보군을 추려서 계산하는 식으로 소프트맥스 계산량 자체를 줄이는 방법이다. 컨텍스트에 등장하는 단어(Positive Sample)와 등장하지 않는 단어(Negative Sample) 5~20개 정도를 빈도수^r 에 비례하게 확률적 뽑아 이 단어들에 대해서만 소프트맥스를 계산하는 방법이다.

 

6. Glove, fastText와의 차이점은 무엇인가?

→ 큰 구조는 같다. 대신 Glove는 유사도 대신 동시 등장 확률 보존을 Objective로 삼고 fastText는 Token을 subword단위로 사용한다.

 

7. W2V의 한계점은 무엇인가? 이 한계점을 극복하는 다른 모델은 무엇이 있을까?

→ distributional hypothesis의 한계점과 유사하다. 반의어 관계에 있는 두 단어가 비슷한 맥락에서 사용할 경우 두 단어를 비슷한 벡터로 임베딩 한다.


[1] Word2Vec의 학습 방식 : https://ratsgo.github.io/from%20frequency%20to%20semantics/2017/03/30/word2vec/

[2] 빈도수 세기의 놀라운 마법 Word2Vec, Glove, Fasttext : https://ratsgo.github.io/from%20frequency%20to%20semantics/2017/03/11/embedding/

[3] In Word2vec, why is the skip-gram model preferred over CBOW? : https://www.quora.com/In-Word2vec-why-is-the-skip-gram-model-preferred-over-CBOW

"언니 결혼식에는 내가 사회 보고", "너 결혼할 때는 내가 축가 반주하고"

"내가 지금까지 중요하다고 생각했던 것들이 하나도 안 중요해"

"나에게 중요한 것들이 너무 많아졌어"

"현재에 집중하다보니 과거와 비교할 겨를도 없었던"


좋은 관계는 서로에게 영향을 주고 그로 인해 변하는 모습이 마음에 드는 관계가 아닐까. 김민지 아나운서는 방송일을 할 때 다른 사람의 시선에 신경을 많이 썼다고 한다. 영국에서 결혼생활, 육아를 하면서 일을 그만두었지만 중요한 것들이 많아지면서 대중의 평가가 중요해지지 않았다. 덕분에 다시 유튜브 채널을 통해 영상을 찍는다. 박지성 선수를 만나서, 아이를 낳아서 김민지 아나운서에게 변화가 생겼지만 이런 변화를 꽤 좋게 받아들이는 것처럼 보인다.

박지성 선수는 자신을 믿고 와준 김민지 아나운서에게 고마움과 미안함을 느끼는지 만두랑 제작을 적극적으로 지원한다고 한다. 박지성 선수 이야기도 나오는데 결혼과 선수 은퇴 이후 삶의 변화의 방향이 김민지 아나운서와 비슷하다.

내가 맺는 동료, 친구, 애인, 부모-자식 관계도 이랬으면 좋겠다. 같이 보내는 시간이 좋고 내 생각과 감정을 전했을 때 상대방이 변하고 그 방향이 괜찮다고 느껴졌으면 좋겠다. 즐겁게 지낼 수 있는 사람을 많이 만나면 좋겠다. 미처 내가 하지 못한 생각, 세심한 감정들을 듣고 더 넓은 사람이 되었으면 좋겠다. 그러려면 내가 지금 중요하다고 생각하는 일을 열심히 해야겠다.

 

'일상' 카테고리의 다른 글

그러니 계속 그림을 그려야겠다  (1) 2019.11.16
<Serenity Prayer>, Reinhold Niebuhr  (0) 2019.11.05

취하라 - 보들레르

언제나 취해 있어야 한다. 모든 것이 거기에 있다. 그것이 유일한 문제다. 그대의 어깨를 짓누르고, 땅을 향해 그대 몸을 구부러뜨리는 저 시간의 무서운 짐을 느끼지 않으려면, 쉴새없이 취해야 한다.

그러나 무엇에? 술에, 시에 혹은 미덕에, 무엇에나 그대 좋을 대로. 아무튼 취하라.

그리하여 때때로, 궁전의 섬돌 위에서, 도랑의 푸른 풀 위에서, 그대의 방의 침울한 고독 속에서, 그대 깨어 일어나, 취기가 벌써 줄어들거나 사라지거든, 물어보라, 바람에, 물결에, 별에, 새에, 시계에, 달아나는 모든 것에, 울부짖는 모든 것에, 흘러가는 모든 것에, 노래하는 모든 것에, 말하는 모든 것에, 물어보라, 지금이 몇시인지. 그러면 바람이, 물결이, 별이, 새가, 시계가, 그대에게 대답하리라. "지금은 취할 시간! 시간의 학대받는 노예가 되지 않으려면, 취하라, 끊임없이 취하라! 술에, 시에 혹은 미덕에, 그대 좋을 대로."


_샤를 피에르 보들레르 산문시집 <파리의 우울>
불문학자 황현산 번역, 문학동네 (2015)
프랑스어 원문


시인은 단호하다인생의 모든 유일한 문제를 취했는지로 일축한다시간의 무게가 우리를 누르기 때문이다
오늘아침잠은 깼지만 자리에서 일어나기 싫었다하루를 어떻게든 채워야하는데 기대가 안 됐다
인생노잼 시기가 이런거구나 싶었다새로운 목표를 잡았을 모든게 흥미로웠는데 익숙해지니까 무뎌졌다
모든게 재미 없어지면 '살지'라는 생각이 떠오른다수십 번 질문해도 답이 없었기에 이젠 이렇게 대응한다
취하자그러나 무엇에뭐든 떠올렸다
기술로 이뤄낼 있는 , 좋은 회사, 김동률 콘서트, 주말 약속부모님 걱정 덜기, 보고싶은 영화가고싶은 여행먹어본 맛집 등등
취기가 가시고 다시금 권태가 스멀스멀 올라 인생의 의미를 찾는다면 또 다시 몰입해보자.

'문학' 카테고리의 다른 글

  (0) 2019.11.23
<해방- 술 마시는 인간>, 성석제  (0) 2019.11.01
산문시 1 - 신동엽  (0) 2019.10.29
달이 떴다고 전화를 주시다니요 - 김용택  (0) 2019.10.14
이제 며칠 후엔 - 프랑시스 잠  (0) 2019.09.14

+ Recent posts