Katse Glove vektoritega
Allikas: Lambda
#!/usr/bin/python3
# https://medium.com/analytics-vidhya/basics-of-using-pre-trained-glove-vectors-in-python-d38905f356db
import numpy as np
from scipy import spatial
import matplotlib.pyplot as plt
from sklearn.manifold import TSNE
def find_closest_embeddings(embedding):
return sorted(embeddings_dict.keys(),
key=lambda word: spatial.distance.euclidean(embeddings_dict[word], embedding))
embeddings_dict = {}
with open("glove.6B.50d.txt", 'r', encoding="utf-8") as f:
for line in f:
values = line.split()
word = values[0]
vector = np.asarray(values[1:], "float32")
embeddings_dict[word] = vector
#print(find_closest_embeddings(
# embeddings_dict["twig"] - embeddings_dict["branch"] + embeddings_dict["hand"]
#)[:5])
print(find_closest_embeddings(
embeddings_dict["king"] - embeddings_dict["man"] + embeddings_dict["woman"]
)[:20])
#print(find_closest_embeddings(
# embeddings_dict["king"]
#)[:100])
"""
John sat on a bike and started ....
car and drove
house water I car
"""