组件名称

  Word2Vec [版本号:1] [更新时间:2018-05-08]

简介

  题,如:机器翻译,标注问题,实体识别等问题中具有非常重要的作用。Word2Vec具有两种模型,其一是 CBOW ,其思想是通过每个词的上下文窗口词词向量来预测中心词的词向量。其二是 Skip-gram,其思想是通过每个中心词来预测其上下文窗口词,并根据预测结果来修正中心词的词向量。该组件目前只支持后者。

1.算法简介

spark中的Word2Vec实现,使用的是skip-gram模型。skip-gram的目标函数是学习擅长预测同一个句子中词的上下文的词向量表示。用数学语言表达就是,给定一个训练单词序列:w1, w2, …, wT, skip-gram模型的目标是最大化平均log似然函数(log-likelihood): 即1/Tt=1Tj=kj=klogp(wt+jwt)1/T\sum _{t=1}^{T}\sum _{j=-k}^{j=k}log p(w_{t+j}|w_{t}) 其中k是训练窗口的大小,也就是给定一个词,需要分别查看前后k个词。 在skip-gram模型中,每个词w跟两个向量uw和vw关联:uw是w的词向量表示,是vw上下文。给定单词wj,正确预测单词wi的概率取决于softmax模型: p(wiwj)=exp(uwiTvwj)l=1Vexp(ulTvwj)p(w_{i}|w_{j})=\frac{exp(u_{wi}^{T}v_{wj})}{\sum _{l=1}^{V}exp(u_{l}^{T}v_{wj})}

输入和输出

  输入端口个数:1

  输出端口个数:1

参数配置

参数名称 参数说明 参数默认值 是否必填
全量模型词典向量数据表名 全量模型词典向量数据表名,表名可以是中文 可选 -
截断句子长度 输入数据中每个句子的最大长度(以词为单位)。任何比这个阈值长的句子都会被截断分割可选 1000 -
窗口大小 模型训练的窗口大小,例如5表示考虑每个词上下文前5个词与后5个词可选 5 -
步长 每次迭代优化的步长大小(>=0)可选 0.025 -
种子数 设置随机种子数值,大于0的整数. 默认是空 可选 -
最大迭代次数 1 -
输出的词的向量维数 默认为100。大的size需要更多的训练数据,但是效果会更好. 推荐值为几十到几百。 可选 100 -
截断词频 对word2vec模型词典做截断. 词频少于min_count次数的单词会被丢弃掉, 默认值为5。 可选 5 -
全量文本向量数据保存 节点输出的全量文本向量数据是否保存至数据库;若保存,会增加时间及存储资源开销可选 No -
全量文本向量数据表名 全量文本向量数据表名,表名可以是中文 可选 -
全量模型词典向量数据数据保存 节点输出的模型词典向量数据是否保存至数据库;若保存,会增加时间及存储资源开销可选 No -

字段配置

字段名称 字段说明 字段默认值 是否必配
选择字段列 选择需要转换Word2Vec特征的字段 必填
原样输出列 推荐添加id列,方便评估 必填

输出节点的字段配置说明

  运行后不生成新字段。后续节点可以直接选择字段。

results matching ""

    No results matching ""