워드 임베딩 시각화와 비교
워드 임베딩은 차원이 높아 바로 해석하기 어렵습니다. 이 연습에서는 몇 개의 단어 벡터를 주성분 분석(PCA)으로 2차원에 투영해 시각화해 보겠습니다. 이를 통해 임베딩 공간에서 단어 간 의미적 군집이나 유사성을 확인할 수 있어요. 그런 다음 두 모델의 임베딩 표현을 비교합니다: 변수 model_glove_wiki로 제공되는 glove-wiki-gigaword-50과, model_glove_twitter로 제공되는 glove-twitter-25입니다.
이 연습은 강의의 일부입니다
Python으로 배우는 Natural Language Processing (NLP)
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
words = ["lion", "tiger", "leopard", "banana", "strawberry", "truck", "car", "bus"]
# Extract word embeddings
word_vectors = [____[____] for word in words]
# Reduce dimensions with PCA
pca = PCA(n_components=2)
word_vectors_2d = pca.____(____)
plt.scatter(word_vectors_2d[:, 0], word_vectors_2d[:, 1])
for word, (x, y) in zip(words, word_vectors_2d):
plt.annotate(word, (x, y))
plt.title("GloVe Wikipedia Word Embeddings (2D PCA)")
plt.show()