Gensim列车不更新权重

在Gensim中,如果你的训练后的词向量没有得到更新,可能是因为以下几个原因:

1. 训练参数设置不当:例如,你可能会设置不同的迭代次数或使用不同的优化器。

2. 模型的收敛速度过慢:你可以尝试增加更多的训练轮数或者减小学习率来帮助模型更快地收敛。

3. 数据集的问题:如果你的数据集非常小,那么可能没有足够的数据让模型学习到新的词向量。

下面是一个使用Gensim的Word2Vec模型进行训练的基本步骤,包括设置训练参数、训练模型以及获取词向量。

```python
from gensim.models import Word2Vec
from gensim.test.utils import common_texts, get_tmpfile
from gensim.models.word2vec import LineSentence

# 创建一个tmp文件,用于存储训练数据
output = get_tmpfile("vectors.txt")

# 使用LineSentence函数读取训练数据
sentences = LineSentence('mytextfile.txt')

# 设置训练参数
model = Word2Vec(sentences, size=100, window=5, min_count=1, workers=4)

# 保存模型到文件
model.save("word2vec.bin")

# 加载模型
model = Word2Vec.load("word2vec.bin")

# 获取词向量
print(model['computer'])
```

在这个例子中,我们首先创建了一个tmp文件,用于存储我们的训练数据。然后,我们使用LineSentence函数读取我们的训练数据。接着,我们设置了模型的参数,包括词汇表的大小、窗口大小、最小出现次数和工作线程数。最后,我们保存了模型到文件中,并加载了模型,以便我们可以获取词向量。

注意,这个例子假设你的训练数据存储在一个名为"mytextfile.txt"的文件中。你需要根据你的实际情况来修改这个文件名。

如果你需要测试这个例子,你可以创建一个简单的文本文件,然后使用这个文件作为你的训练数据。例如:

```
apple banana orange
grape banana apple
orange banana grape
```

这将创建一个包含三个句子的文件,每个句子中都有三个不同的单词。然后,你可以运行上述代码来测试它。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潮易

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值