## 如何用word2vec 训练词嵌入模型
**一、应用场景**
假设你有一个商品的数据库,比如:
![](https://img-blog.csdnimg.cn/2020112714190259.png)
现在通过用户的输入来检索商品的价格。
**方法一:直接匹配法**
最简单的方法就是通过字符串进行匹配,比如,用户输入“椅子”,就用“椅子”作为关键字进行搜索,很容易找到椅子的价格就是200元/个。
**方法二:语义相似法**
但有时用户输入的是“凳子”,如果按照字符串匹配的方法,只能返回给用户,没有此商品。但实际上可以把“椅子”的结果返回给用户参考。这种泛化的能力,通过简单的字符串匹配是显然不能实现的。
“凳子”跟“椅子”的语意更相近,跟“香蕉”或“冰箱”的语意相对较远。在商品搜索的过程中,可以计算用户输入的关键字与数据库中商品名间的相似度,在商品数据库中找出相似度最大的商品,推荐给用户。
这种相近的程度就是词语的相似度。在实际的工程开发中可以通过word2vec实现词语相似度的计算。
**二、使用gensim自带的word2vec包进行词向量的训练步骤**
**1、下载安装gensim,pip install gemsim**
```
# 载包
from gensim.models import Word2Vec
from gensim.models.word2vec import LineSentence
```
**2、输入分词之后的维基语料进行词向量训练。**
```
# 训练模型
sentences = LineSentence('