爱笑的小姐姐 · 2021年06月04日

深度学习-10.理解word2vec

本文转自:知乎
作者:djh

1、网络结构

其实是一个很简单的两层的wb模型。可以这么简单的认为。比较特殊的是,这边输入的矩阵w,和context(w)是一对关系。context表示的一种函数关系。一般来说是w的前后或者其他位置表示关系。

2、参数运算

3、模型的运用

4、模型的训练

首先从官网上下载word2vec的源码:http://word2vec.googlecode.com/svn/trunk/

对语料进行训练,在Word2Vec文件夹下会有一个word2vec程序,执行

./word2vec sougo.txt vertors.bin
./word2vec -train resultbig.txt -output vectors.bin -cbow 0 -size 200 -window 5 -negative 0 -hs 1 -sample 1e-3 -threads 12 -binary 1

这里我就有困惑了,训练的cbow语料格式如下

是 中国 发展 历史 上 非常 重要 的 很 不 平凡 的 一 年 。
中国 人民 决心 继承 邓小平 同志 的 遗志 ,
继续 把 建设 有 中国 特色 社会主义 事业 推向 前进 。
中国 政府 顺利 恢复 对 香港 行使 主权 ,

就是分好词的普通语料,输入给cbow是这些,难么预测是是什么呢?后面才知道是从句子中选取一个窗口,或者取一个目标进行预测。

ok,模型训练完成以后,就可以加载模型,进行预测,y输出的维度由size控制,也就是ouput层最后的输出个数。

skip\_gram 的训练就不多写了,他的输入输出刚好相反。例子如下:

Training Samples(输入, 输出)

其他

关注我不迷路,目前只是一些入门级的小文章,后面会有AI系列文章推送。

https://github.com/yazone/ai_learning_path
更多嵌入式AI技术相关内容请关注嵌入式AI专栏。
推荐阅读
关注数
16328
内容数
1218
嵌入式端AI,包括AI算法在推理框架Tengine,MNN,NCNN,PaddlePaddle及相关芯片上的实现。欢迎加入微信交流群,微信号:aijishu20(备注:嵌入式)
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息