【机器学习】Word2Vec模型
模型归属:领域:机器学习方向:自然语言处理作用:将字词转换为向量,通过文章内容学习到字词的相关性,从而将相似词聚合模型使用:准备一篇文章(中文或英文)用python编写Word2Vec模型(或使用机器学习框架,直接调用word2vec这个包)将准备好的文章作为输入,input进Word2Vec.py这个程序结果模型会将这片文章相关性强的词聚合在一起Word2Vec模型训练好...
·
模型归属:
- 领域:机器学习模型
- 方向:自然语言处理
- 作用:将字词转换为向量,并通过文章内容学习字词之间的相关性,从而将相似的词聚合在一起。
将单词转换为在高维空间中的向量表示的模型。简单来说,就是将每个单词用一个向量来表示,这个向量有很多维度,而不是简单的用一个标签或者编号来表示单词。这样的表示方法可以帮助计算机更好地理解和处理文本数据。
模型使用:
- 准备一篇文章(中文或英文)
- 用python编写Word2Vec模型或者直接调用机器学习框架中的word2vec包
- 将准备好的文章作为输入,传入Word2Vec.py这个程序中
- 模型会将文章中相关性强的词聚合在一起
- 训练好的Word2Vec模型的结果可以通过可视化图表的方式展示
模型的作用:
生活例子:比如【网络舆情监测】我们爬取了某个论坛的网页,想要看看大家交流内容都是什么,有没有什么联系,我们准备好爬取得内容后,就可以使用这个模型,得到大家交流内容的相关性分析,从而知道大家在交流内容的大概。
模型实际应用:
在网络舆情监测中,我们可以使用Word2Vec模型分析论坛内容的相关性,从而了解大家在交流的内容大致情况。这里有一个语义分析系统链接,在这个系统中继承了很多自然语言处理的应用,它将程序做成可视化界面供大家使用,非常方便直观,界面也非常友好!
Word2Vec模型的两种实现方式包括Skip-Gram模型和CBOW模型:
1.Skip-Gram模型:用于预测上下文
2.CBOW模型:给定上下文来预测输入
模型的实现步骤:
- 对训练文档构建词汇表
- 对词汇进行one-hot编码
- 根据数据构建神经网络,并进行模型训练(涉及大量数学计算)
- 获取训练数据过程中的参数(权重矩阵)即word vectors,即模型中的隐层
- 最终的目标就是学习这个隐层的权重矩阵,即一个softmax回归分类器,它可以输出一个在0到1之间的值,代表不同词汇的概率。同时,所有输出层神经元节点的概率之和应该等于1。
在训练过程中,会使用到jieba中文结巴分词、Matplotlib可视化包和scikit-learn机器学习库等工具。
之前有跑过这样的代码,得到的结果:
训练的次数越多,模型的学习效果越好,预测值和真实值之间的差别(损失值)就越小!从可视化的结果就能看出来!
更多推荐
已为社区贡献2条内容
所有评论(0)