在spaCy中修剪矢量时,我得到“警告:未命名的矢量-这将不允许加载多个矢量模型。(形状:(20000,300))”:
import spacy # I'm running 2.0.12
nlp = spacy.load('en_core_web_lg')
nlp.vocab.vectors.name
# Output:
'en_core_web_lg.vectors'
nlp.vocab.vectors.n_keys
# Output:
684830
len(nlp.vocab.vectors)
# Output:
684831
n_vectors = 20000 # number of vectors to keep
removed_words = nlp.vocab.prune_vectors(n_vectors)
# Output:
# Warning: Unnamed vectors -- this won't allow multiple vectors models to be loaded. (Shape: (20000, 300))
nlp.vocab.vectors.name
# Output:
'spacy_pretrained_vectors'
nlp.vocab.vectors.n_keys
# Output:
684755
len(nlp.vocab.vectors)
# Output:
20000
我在源代码中找到错误消息的唯一位置是here。 .prune_vectors()的来源为here。我看不到两者之间的相关性,也看不到为什么 nlp.vocab.vectors.name 在修剪过程中发生了变化。
也不知道修剪会错放75个按键...