def __init__(self, path, words=[], dim=300, normalize=True, **kwargs):
seen = []
vs = {}
for line in open(path):
split = line.split()
w = split[0]
if words == [] or w in words:
if len(split) != dim+1:
continue
seen.append(w)
vs[w] = np.array(map(float, split[1:]), dtype='float32')
self.iw = seen
self.wi = {w:i for i,w in enumerate(self.iw)}
self.m = np.vstack(vs[w] for w in self.iw)
if normalize:
self.normalize()
评论列表
文章目录