Dense Embedding
- 50 - 1000 차원의 고밀도 임베딩 크기
- 어휘 크기 10,000 개 또는 문서 말뭉치 크기 100만개 와 동일한 차원의 희소 임베딩 보다 Dense Embedding
- NLP 작업에서는 Spare 임베딩 보다 더 잘 작동한다.
- 모델은 더 적은 무게 (fewer features) 를 요구하므로 과적합될 가능성이 적다.
- 거리 측정 metrics 는 저 차원에서 더 잘 작동한다.
- 유사한 단어는 저차원에서 더 명확하게 관련된다.
Word2Vec
- Static Embedding 을 학습한다.
- 각 단어는 그것이 나타나는 맥락과 관계없이 동일한 벡터 임베딩을 갖는다.
- self-supervision 을 갖는다. (no supervised signal)
- 실행 중인 텍스트의 다음 단어를 supervisory signal 로 사용한다.
- 전체 과정
- 대상 단어와 인접 문맥 단어를 Positive Examples 로 다루자
- 어휘에서 랜덤으로 다른 단어를 추출하여 Negative sample(대상 단어, 무작위 다른 단어)을 얻는다.
- 로지스틱 회귀 분석을 사용하여 분류자를 훈련시켜 두 경우를 구별한다.
- 학습된 가중치를 다른 NLP 작업에서 단어 임베딩으로 사용한다.
Negative Sampling 을 포함한 Skip-gram (SGNS)
- High-level 과정
- 어휘의 각 단어에 무작위 임베딩 벡터 지정(예: 어휘의 크기는 N)
- 각 단어의 임베딩을 동시에 발생하는 단어의 임베딩과 더 비슷하도록 전환을 시작한다. (Context words), 그리고 동시에 발생하지 않는 단어의 임베딩에서 벗어나기 시작한다.
- 아래 사항을 구별하기 위해 Logistic classifier 훈련하기
- Positive Examples: 1 개의 컨텍스트 워드를 가진 대상의 워드의 쌍(해당 워드와 동시에 발생하는 것으로 확인)
- Negative Examples: 1 개의 잡음 단어가 포함된 대상 단어 쌍(어휘에서 무작위로 선택됨)
- Negative 단어 수는 Positive 단어의 수이다, k 는 hyper-parameter 이다.
- 노이즈 워드는 Weight Unigram 빈도에 따라 선택한다.
Learning task formulation
- Target 단어 w 와 context 단어 cpos 쌍 (w, cpos) 의 유사성 최대화(Positive Example)
- P(+ | w, cpos) - (w, cpos) 쌍이 Positive 클래스에 속할 확률
- Target 단어 w 와 noise 단어 cneg 쌍 (w, cneg) 의 유사성을 최소화(Negative Example)
- P(- | w, cneg) - 최소화 되어야한다, (w, cneg) 쌍이 negative 클래스에 속할 확률
- k 개의 Negative Example 을 가지고 있기 때문에 다음 식을 최소화 해야한다.
- 사전에 무작위로 이것들을 이끌어 내기 때문에 독립성을 가정한다.
- 위 두 목표를 모두 달성하기 위해, 그것들을 최소화할 수 있는 손실 함수 L 로 결합할 수 있다.
- 즉 L 을 최소화 하고 싶다는 표시에 마이너스 부호가 추가된다.
- 그리고 계산을 단순화하기 위해 로그를 취한다.
- 두 확률이 동시에 참이기를 원하기 때문에 두 확률을 곱하고 그것들을 독립적이라고 가정한다.
- Word 와 Context 가 Similar 가 될 확률은 벡터의 Dot 곱에 기초하여 계산된다. (Similar는 벡터 Dot 곱에 비례한다 - Recall Cosine Similarity Discussion)
- 확률 값 결과를 얻기 위해 Dot 곱 위에 Sigmode 를 사용하고 + 와 - 확률을 1이 되도록 만든다.
- 손실 함수 공식의 값을 대체할 수 있다.
- 마지막으로, 기울기 강하를 사용하여 로지스틱 회귀 분석의 LCE 값이 최소인 Parameters 의 변수 벡터를 찾는다.
- Target Embedding wi 으로 단어를 나타낼 수 있다.
- Context Window size 는 좋은 값을 찾기 위해 다양하다. ( 범위를 높이면 결과 단어 벡터의 품질이 향상되지만 계산 복잡성도 증가한다. )
일반적으로 사용되는 Static Embedding
- fasttext
- 잘 알려지지 않은 단어, 드물게 발생하는 단어들을 잘 다룬다.
- 단어와 일부 문자 n-gram 을 저장한다.
- 예를 들어 'where' 라는 단어에 대해 사용할 수 있다: wh, the, her
- 각 n-gram 에 대해 별도의 임베딩이 학습되고 단어 자체는 이러한 n-gram 의 합으로 표현된다.
- Glove
- 단어 - 단어 동시 발생 메트릭스의 일부 전역 말뭉치 통계를 통합한다.
시각화
- 주어진 단어와 가장 유사한 벡터(Cosine Similarity) 를 가진 모든 단어의 정렬된 목록 표시
- 임베딩의 계층적 클러스터링을 사용하여 단어 관계를 설명한다.
벡터 임베딩의 Semantics 와 Association Properities
- Syntactic VS Topical Similarity
- 임베딩 알고리즘에 의해 사용되는 짧은 Context Window 는 단어가 예를 들어 특정 언어의 동일한 부분인 경향이 있는 구문적 의미에서 더 유사한 벡터 임베딩을 초래한다.
- 긴 Context Window 는 주제와 관련은 있지만 반드시 유사하지 않은 단어에 대해 유사한 임베딩을 초래한다.
- First-order VS Second-order association
- First-order co-occurrence (Suyntagmatic association) 은 일반적으로 서로 가까이 있는 단어에 적용된다.
- 예: 'book' 과 'poem' 은 'wrote' 근처에 있는 경향이 있다.
- Second-order co-occurrence (paradigmatic association) 은 단어가 유사한 이웃을 가질 때, 예를 들어, 'wrote 는 'said' 나 'remarked' 의 second-order associate 이다.
- Analogy-based/relational similarity
- 벡터 임베딩 (특히 밀도가 높은 것)은 유사 문제에 매우 능숙하다.
- Analogy Problems: a 는 b 에게 a* 와 같은가?
- 남자는 여자에게 왕과 같은가?
벡터 모델 평가
- 가장 중요한 평가는 end-to-end/extrinsic (NLP 작업이 얼마나 잘 되는가, 예 특정 임베딩 표현을 사용할때 감정 분류)
- Intrinsic 평가 방법들
- 인간이 표시한 레이블로 표시된 단어 유사성 데이터 사용
- 기본적인 Similarity: Context 를 고려하지 않은 단어의 Similarity
- 레이블이 지정된 단어 쌍, 동의어를 식별하기 위한 다중 선택
- 문장의 의미적 유사성
- 유사 작업
- 인간이 표시한 레이블로 표시된 단어 유사성 데이터 사용
Word2Vec
- Word2Vec 과 같은 알고리즘이 작동하는 이유를 완전히 이해하지 못한다.
- 특정 말뭉치의 특정 알고리즘이 특정 의미 관계를 캡처할 것이라는 보장은 없다.
- 동일한 데이터 세트에 대해 훈련된 알고리즘도 다른 임베딩을 생성할 수 있다.
- 예: 초기화 중 임의성, 음성 샘플링 중 임의 선택 차이
- 단어 임베딩은 편향될 수 있다, (데이터로부터 성별과 인종적 편견을 포착한다.)
Embedding 의 Bias
- 임베딩들이 성별 편향을 나태낸 다는 것을 보여주었다.
- 이것은 할당의 폐해를 초래할 수 있는데, 예를 들어 지원자를 모집하는 것은 남성 지원자를 더 높게 평가하고 그들이 더 많은 일자리를 할당받는 결과를 초래할 수 있다.
- 뉴스에 대한 교육을 받을 때, 유추에 사용되는 word2vec 임베딩은 다음과 같은 결과를 낳는다.
- 'man'-'computer programmer' + 'women' 이라는 유사어에서 알고리즘은 'home maker' 를 출력한다.
- 'father' - doctor' + 'mother', 에서는 'nurse' 를 출력한다.
- 임베딩은 실제 노동 고용 통계의 통계적 차이를 넘어 편향을 증폭시키는 것으로 나타났다.
- 표현적 해로움 - 사람들의 그룹을 비하하거나 무시하게 만든다.
- 아프리카계 미국인 이름은 불쾌한 단어와 Glove 코딩 유사성이 높은 반면, 즐거운 단어를 가진 유럽계 미국인 이름은 정서 분석을 사용하는 어플리케이션에 영향을 미치는 것으로 밝혀졌다.
- 임베딩 공간을 변형하여 편향성을 제거하려는 데바이싱은 활발한 연구 영역이다.
'AI Master Degree > Natural Language Processing' 카테고리의 다른 글
Long Shorter-Term Memory 네트워크란? LSTM이란? (0) | 2022.10.13 |
---|---|
Recurrent Neural Network란? (0) | 2022.10.13 |
Logistic Regression 이란? (0) | 2022.10.10 |
Model Evaluation란? 모델 평가란? (0) | 2022.10.10 |
Semantic Vector Embeddings 의미 벡터 임베딩이란? (0) | 2022.10.09 |