codestates / codestates/ds-TIL
[TIL] 김민채_201215
- Dominant language
- No language data
- Stars
- 2
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
### Today I Learn_71
**1. vectorization of texts**
- 문서를 벡터화 하는 이유는 컴퓨터가 모델을 학습하고 예측할 수 있도록 하기 위함
일종의 embedding 작업이다.
- 크게 BOW(back of words)와 TF-IDF 벡터화 작업이 있다.
- BOW 는 단순히 토큰의 빈도만을 고려해 벡터화 한다면
- TF-IDF 는 단순히 빈도만 많을 것이 아니라 유의미한 중요도를 가진 단어인지까지 고려해 벡터화 한다.
- BOX 는 Countvectorizer 에 토큰화 작업까지 자동으로 이루어지지만
- TF-IDF 는 토큰화 작업이 자동으로 되지 않아 따로 spacy 모델을 통해 토큰화 작업을 해야 한다.
- 문서 검색을 하고 싶은 경우, 문서와 문서간 유사도를 측정하는 방법으로 할 수 있다.
- 크게 Cosine Similarity 로 전체 문서 대 전체 문서로 거리를 계산하는 것과 K-NN 트리구조로 특정 문서와 제일 가까운 K개의 문서만 거리를 계산하는 방법이 있다.
- Cosine Similarity 는 문서 전체에 관해 조사해볼 수 있지만 그만큼 많은 계산이 소요된다.
- K-NN 트리구조는 특정 K개의 문서만 거리를 계산하기 때문에 Cosine 보다는 계산 소요가 적다.
- 문서를 벡터화 하는 것은 위에서 언급한 BOW 와 TF-IDF 말고도 Word2Vec 모델을 통해서도 가능하다.
- 가장 큰 장점으로는 의미나 구조적으로 비슷한 단어를 통해 '문맥을 학습'하여 강력한 문맥 정보를 보유한 벡터를 가질 수 있다는 것이다. (단순 빈도 내지는 ngram_range() 를 통한 주변부 단어만으로 문서를 벡터화하는 것보다 훨-씬 예측도가 강력하다!)
- Word2Vec 은 Input하는 target 과 Output하는 target labe 을 통해 데이터 학습이 알아서 이루어져 잘 학습된 embedding 이 제공된다. 굿.
- 따라서 들어가는 corpus 는 골고루 많은 것을 학습할 수 있게 큰 것이 작은 것보다 좋다.
(물론 Word2Vec 말고도 spacy 모델도 방대한 corpus 로 학습된 embedding 을 제공하고 있어 매우 유용하다.)
**2. Impression from Today**
- 어제는 좀 꾸역꾸역 과제를 겨우 해내면서 많은 생각이 또 들었지만
- 오늘은 세션1에서 (한참 열정에 불타오르던 시기) 열심히 머리에 넣으려고 애쓰던 정보들과 비슷한 게 많아 재밌었다.
(과제를 잘 해내는 것과 별개)
- 물론 오늘 배운 양이 많아서 어제보다 note를 전체 run 하는 시간이 더 소요되는거 같다.
- 오늘도 열심히 과제를 해서 나에게 좋은 정보를 많이 줘야겠다.
하하..
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.