노드 4번
노드 5번
DTM, TF-IDF 공통점, 차이점
1. 공통점
- 문서 벡터 크기 = 단어장의 크기
- 희소벡터
- 차이점
- 가중치 부여 여부
from tensorflow.keras.preprocessing.text import Tokenizer
from tensorflow.keras.utils import to_categorical
차원의 저주
출처
정보의 밀도가 작아짐
단어 벡터 간 유사도 구할 수 없음
대안: 워드 임베딩
✔✔✔🤔 밀집벡터
출처: 아이펠 노드 그런데 그 벡터의 길이를 일정하게 정해줍니다. 더 많은 단어가 있다고 해서 벡터의 길이가 길어지지 않습니다. 여기서 일반적으로 벡터의 길이가 단어장 크기보다 매우 작기 때문에 각 벡터 값에 정보가 축약되어야 하고 결국 밀집 벡터(dense vector) 가 됩니다.
핵심 아이디어
분포가설: 주변 단어를 보면 그 단어가 어떤 단어인지 알 수 있다는 생각에서 비롯됨.
= 비슷한 문맥 상에서 함께 등장하는 경향이 뚜렷한 단어들은 비슷한 의미를 가진다.
CBoW (Continuous Bag of words)
출처
은닉층에서 다수의 벡터의 덧셈과 평균을 구하는 과정이 없어짐
Negative Sampling
✔✔✔🤔
다중 클래스 분류 문제를 시그모이드 함수를 이용한 이진 분류 문제로 변경함
⇒ 관련있으면 1을 라벨링. 관련 없는 단어를 무작위로 가져와 0을 라벨링함.
이전 | 변경 |
---|---|
중심단어, 주변 단어를 입력값으로 받음. 해당 쌍이 positive인지 negative인지 확인함
ex) partial, n = 3인 경우
<pa, art, rti, tia, ial, al>, <partial>
스탠포드 대학에서 개발한 워드 임베딩 방법론
카운트 기반의 방법론 + 예측 기반의 방법론(손실 함수를 통해 모델을 학습시키기 때문)
출처
1. 특징
어제 진행하던 노드를 마무리 하고 진행했다. 처음 배우는 개념들이라 다 알고 넘어가자는 생각보다는 단어 자체에 익숙해지는 걸 목표로 하고 있는데 주말을 이용해서 지속적인 복습을 해야할 거 같다. 그리고 마지막에 나온 GloVe는 이해가 안돼서 일단 표시만 해두고 넘어갔다. 중요한 개념이고 다시 활용하게 된다면 나중에라도 나오겠지 하는 생각이다..