"alpha" 和 "start_alpha" 之间的区别
Difference between "alpha" and "start_alpha"
我想使用“gensim”训练 Word2Vec 模型。我想确定初始评级率。然而,据记载,“alpha”和“start_alpha”参数都可以用于此目的。它们之间有什么区别?它们是一样的吗?
参数alpha
用于the constructor:
classgensim.models.word2vec.Word2Vec(sentences=None, corpus_file=None,
vector_size=100, alpha=0.025, window=5, min_count=5,
max_vocab_size=None, sample=0.001, seed=1, workers=3,
min_alpha=0.0001, sg=0, hs=0, negative=5, ns_exponent=0.75,
cbow_mean=1, hashfxn=, epochs=5, null_word=0,
trim_rule=None, sorted_vocab=1, batch_words=10000, compute_loss=False,
callbacks=(), comment=None, max_final_vocab=None)
而参数 start_alpha
用于 train 方法:
train(corpus_iterable=None, corpus_file=None, total_examples=None,
total_words=None, epochs=None, start_alpha=None, end_alpha=None,
word_count=0, queue_factor=2, report_delay=1.0, compute_loss=False,
callbacks=(), **kwargs)
至于用哪个:
start_alpha
(float, optional) – Initial learning rate. If supplied,
replaces the starting alpha
from the constructor, for this one call
totrain()
. Use only if making multiple calls to train(), when you
want to manage the alpha learning-rate yourself (not recommended).
它们本质上是一样的。如果在构造函数中指定非默认值:
它们在模型中缓存为 alpha
& min_alpha
如果您还选择了在构造函数中指定训练语料库的选项 (sentences
/corpus_iterable
/corpus_file
),则 alpha
& min_alpha
将成为自动 .train()
的 start_alpha
、end_alpha
如果您改为显式调用 .train()
:
- 您可以指定一个
start_alpha
和 end_alpha
,仅用于该调用,它将用于代替构造函数期间设置的值(但不会缓存在模型中以备将来使用电话)
如果 你在同一个模型上多次调用 .train()
出于某种原因——这通常是一个不必要的坏主意,除了一些非标准的专家——使用情况——您可能希望在每次调用中正确选择 alpha
范围的正确进展(这样它就不会无意义地上下跳动)。
专家使用是单独的非缓存 start_alpha
和 end_alpha
参数存在的真正原因。大多数用户应该坚持使用默认值(因此不要使用其中任何一个),如果他们真的到了修补的地步,只需在构造函数中尝试不同的 alpha
值,仔细监控它是否有帮助。
我想使用“gensim”训练 Word2Vec 模型。我想确定初始评级率。然而,据记载,“alpha”和“start_alpha”参数都可以用于此目的。它们之间有什么区别?它们是一样的吗?
参数alpha
用于the constructor:
classgensim.models.word2vec.Word2Vec(sentences=None, corpus_file=None, vector_size=100, alpha=0.025, window=5, min_count=5, max_vocab_size=None, sample=0.001, seed=1, workers=3, min_alpha=0.0001, sg=0, hs=0, negative=5, ns_exponent=0.75, cbow_mean=1, hashfxn=, epochs=5, null_word=0, trim_rule=None, sorted_vocab=1, batch_words=10000, compute_loss=False, callbacks=(), comment=None, max_final_vocab=None)
而参数 start_alpha
用于 train 方法:
train(corpus_iterable=None, corpus_file=None, total_examples=None, total_words=None, epochs=None, start_alpha=None, end_alpha=None, word_count=0, queue_factor=2, report_delay=1.0, compute_loss=False, callbacks=(), **kwargs)
至于用哪个:
start_alpha
(float, optional) – Initial learning rate. If supplied, replaces the startingalpha
from the constructor, for this one call totrain()
. Use only if making multiple calls to train(), when you want to manage the alpha learning-rate yourself (not recommended).
它们本质上是一样的。如果在构造函数中指定非默认值:
它们在模型中缓存为
alpha
&min_alpha
如果您还选择了在构造函数中指定训练语料库的选项 (
的sentences
/corpus_iterable
/corpus_file
),则alpha
&min_alpha
将成为自动.train()
start_alpha
、end_alpha
如果您改为显式调用 .train()
:
- 您可以指定一个
start_alpha
和end_alpha
,仅用于该调用,它将用于代替构造函数期间设置的值(但不会缓存在模型中以备将来使用电话)
如果 你在同一个模型上多次调用 .train()
出于某种原因——这通常是一个不必要的坏主意,除了一些非标准的专家——使用情况——您可能希望在每次调用中正确选择 alpha
范围的正确进展(这样它就不会无意义地上下跳动)。
专家使用是单独的非缓存 start_alpha
和 end_alpha
参数存在的真正原因。大多数用户应该坚持使用默认值(因此不要使用其中任何一个),如果他们真的到了修补的地步,只需在构造函数中尝试不同的 alpha
值,仔细监控它是否有帮助。