
195
6
장
임베딩을 사용한 감성 프로그래밍
6.3
임베딩 시각화
임베딩을 시각화하기 위해 임베딩 프로젝터
Embedding
Projector
8
를 사용합니다. 여러 가지 데이터셋
에서 사전에 훈련한 임베딩을 기본으로 제공하지만 여기에서는 앞서 훈련한 모델의 임베딩을
이 도구로 시각화해 보겠습니다.
먼저 단어 인덱스를 반대로 매핑하는 함수가 필요합니다.
word
_
index
는 단어가 키
key
이고 인
덱스가 값
value
인 딕셔너리입니다. 임베딩 프로젝트로 시각화하려면 단어를 값으로 가지기 위해
반대로 매핑해야 합니다. 코드는 다음과 같습니다.
reverse_word_index = dict([(value, key)
for (key, value) in word_index.items()])
또한 임베딩 층의 가중치를 추출해야 합니다.
embedding_weights = model.embedding.weight.data.cpu().numpy()
print(embedding_weights.shape)
이 장의 최적화 과정을 따랐다면
(
2000
,
7
)
이 출력됩니다. 어휘 사전 크기가
2
,
000
개이고 임
베딩 층의 차원이
7
이기 때문입니다. 단어와 이에 상응하는 벡터를 확인하려면 다음과 같이 쓸
수 있습니다.
print(reverse_word_index[2])
print(embedding_weights ...