网站开发怎么才能接到私活,wordpress 添加微博话题墙,做网站 公司 个体,用php做网站要用构架吗ELMO
前情回顾
NNLM模型#xff1a;主要任务是在预测下一个词#xff0c;副产品是词向量Word2Vec模型#xff1a;主要任务是生成词向量 CBOW#xff1a;训练目标是根据上下文预测目标词Skip-gram#xff1a;训练目标是根据目标词预测上下文词
ELMO模型的流程
针对Wor…ELMO
前情回顾
NNLM模型主要任务是在预测下一个词副产品是词向量Word2Vec模型主要任务是生成词向量 CBOW训练目标是根据上下文预测目标词Skip-gram训练目标是根据目标词预测上下文词
ELMO模型的流程
针对Word2Vec模型的词向量不能表示多义词的问题产生了ELMO模型模型图如下 通过不只是训练单单一个单词的Q矩阵而是把这个词的上下文信息也融入到这个Q矩阵中从而解决一词多义的问题注意左侧的LSTM是融入上文信息右侧的LSTM是融入下文信息。E已经是将独热编码经过一层Q矩阵得到的在我们做具体任务T时会先将E1、E2、E3三层的特征信息做一个叠加之后得到新的词向量K其中E2、E3为双向的句法和语义特征所以K1为第一个词的词向量且包含了这个词的单词特征、句法特征、语义特征注意在Word2Vec中只是单纯将几个连续的单词按顺序拼接输入所以只有这个单词的词向量并没有上下文信息的叠加
ELMO模型怎么使用
虽然同一个词的单词特征相同但是在不同句子中的上下文信息会不同也就代表着最后的词向量K会不同如下 我们可以用训练好的ELMO模型去掉该模型针对任务的改造部分比如只选用T层往下的部分用它来替换下图其他任务中的W到e的这一部分即替换之前Word2Vec预训练部分从而实现ELMO模型的预训练效果解决一词多义问题
Attention注意力机制
我看这张图注意力可以被可视化为下图 其中想要查询这张图中的部分原始图像查询对象Q这张图中红色的部分Key红色部分所具体指的在原图中的部分Value 注意Key和Value有着某种联系是可以做对应的。如由于原图中有很多的信息Values这些Values可以拆分为Key-Value键值对所以查看哪些V对Q比较重要即哪些V与Q相似就可以转换成查看哪些K与Q相似而计算相似度我们一般采用点乘的方法所以QK点乘才能近似于QV点乘即才能知道哪些V比较重要 上图的流程为传入一个查询Q计算Q和K的点乘sK与V有对应关系进行softmax归一化得到对应概率a乘上对应V最后做一个汇总得到整体的V’即最后的注意力V‘公式如下 V ′ ( a 1 a 2 ⋯ a n ) ∗ ( v 1 v 2 ⋯ v n ) ( a 1 ∗ v 1 a 2 ∗ v 2 ⋯ a n ∗ v n ) V (a_1a_2\cdotsa_n)*(v_1v_2\cdotsv_n) (a_1*v_1a_2*v_2\cdotsa_n*v_n) V′(a1a2⋯an)∗(v1v2⋯vn)(a1∗v1a2∗v2⋯an∗vn)而这个新的V’就包含了原图中哪些重要哪些不重要的信息最后就可以用带有注意力的图来代替原图 这里softmax要除 d k \sqrt{d_k} dk 是因为在softmax中如果两个数的差距比较大那么归一化后概率差距会特别大这很不合理所以我们通过除 d k \sqrt{d_k} dk 来缩小两个数之间的差距这样能减小它们之间的概率差距如下图
参考文献
08 ELMo模型双向LSTM模型解决词向量多义问题09 什么是注意力机制Attention