技术领域
本发明涉及到一种云计算模式中融合词嵌入和非负矩阵分解技术的服务建模方法
背景技术
随着云计算的发展和服务计算“服务化”的思想驱动,越来越多的公司将数据、资源或者相关业务通过Web服务的形式发布到互联网上,以提高信息的利用率和自身竞争力。然而传统基于SOAP协议的Web服务,存在技术体系复杂、扩展性差等问题,难以适应现实生活中复杂多变的应用场景。为克服传统服务带来的问题,近年来,互联网上涌现出一种轻量级的信息服务组合模式——Mashup技术,可以混搭多种不同Web API,开发出多种全新的Web服务,以缓解传统服务难以适应复杂多变应用环境的问题。
随着Mashup服务快速增长,如何在众多Mashup服务中找到高质量的服务,已经成为一个大家关注的热点问题。目前现有的方法,主要采用潜在狄利克雷分配(LatentDirichlet Allocation,LDA)得到Mashup服务主题特征后,进一步进行随后的工作,然而Mashup服务文档通常为短文本,LDA和其他传统的挖掘算法对短文本处理能力欠缺,因此无法有效地对Mashup服务进行建模。
发明内容
为了克服现有Mashup服务描述文本简短,特征稀疏带来的建模困难的问题,本发明提出一种融合词嵌入和非负矩阵分解技术的服务建模方法,基于分解SPPMI矩阵求解词嵌入信息,相对于神经网络模型,该方法在模型上能和非负矩阵分解(Non-negativeMatrix Factorization,NMF)有机的统一,并且通过引入词嵌入信息能缓解Mashup服务特征信息稀疏的问题,从而有效地对Mashup服务进行建模。
本发明解决其技术问题所采用的技术方案是:
一种云计算模式中融合词嵌入和非负矩阵分解技术的服务建模方法,包括以下步骤:
第一步:统计每个Mashup服务中单词词频信息,即单词出现的次数,构建文档-词频关系矩阵D;
第二步:统计单词共现信息,从而计算出SPPMI矩阵信息,步骤如下:
2.1统计词共现信息,将整个服务描述文档作为滑动窗口的长度,计算每个单词和其他单词在上下文中共同出现的次数;
2.2点互信息(Pointwise Mutual Information,PMI)计算,当两个单词在文本中共现概率越大时,单词间的相关性就越强,PMI计算公式如下所示:
x和y表示两个单词,P(x,y)表示单词x和y共现的概率,P(x)表示单词x在上下文中出现概率。根据单词w
#(w
2.3计算偏移正点互信息值(Shifted Positive Pointwise MutualInformation,SPPMI)矩阵,SPPMI矩阵通过PMI值计算,SPPMI矩阵的计算方式为:
SPPMI(w
其中κ为负采样系数,通过上述公式得到单词的上下文SPPMI矩阵M;
第三步:基于第一步,第二步得到Mashup服务文档单词的词频信息矩阵D,单词的上下文SPPMI矩阵M,通过分解M得到词嵌入信息矩阵,进一步将上述两种信息进行结合,计算服务的主题信息,步骤如下:
3.1通过由第一步给定全局文档-单词关系矩阵D,通过NMF将其分解为文档-主题矩阵θ和主题-单词矩阵Z乘积。分解矩阵D的目标函数表示为;
subject to:θ≥0and Z≥0,θ∈R
其中
3.2通过第一步,第二步计算得到单词的上下文SPPMI矩阵M,分解矩阵M引入词嵌入信息,分解M的目标函数如下所示:
S是一个额外的对称因子,用于M的近似求解,W为单词的词嵌入矩阵;
3.3利用Mashup服务文档和单词间的关系,可以发现主题信息,通过文档内单词上下文的共现信息,可以学习到词嵌入信息;但是这两个部分并不相互孤立,语义相关的单词通常属于相似的主题,在嵌入空间中也很接近;单词嵌入与它们的主题相关,关系的目标函数如下所示:
3.4结合步骤3.1,3.2和3.3,得到主题模型的目标函数:
subject to:θ≥0and Z≥0
求解该目标函数,使用矩阵迹运算将上述公式展开:
J(θ,Z,W,S,A)=λ
其中J(θ,Z,W,S,A)为J
J(θ,Z,W,S,A)=λ
Tr表示矩阵求迹,λ
其中α,β,γ,
令α⊙θ=0,β⊙Z=0,γ⊙W=0,
-(DZ)⊙θ+(θZ
-(λ
-2(λ
-(Z
进一步更新参数:
通过上述参数更新方式,求解出Mashup服务文档-主题矩阵θ和主题-单词矩阵Z,词嵌入矩阵W,主题嵌入矩阵A。
进一步,所述2.1的过程如下:
2.1.1对于当前Mashup服务,计算该Mashup服务描述文档长度Len,设定滑动窗口长度为Len;
2.1.2统计Mashup服务描述文档中单词和其他单词的共现情况,若当前单词的上下文单词,即该单词前后的单词,在滑动窗口Len的距离内,则该单词和其在滑动窗口内的上下文单词共现次数加1;
2.1.3重复2.1.2直至处理完Mashup中的所有单词;
2.1.4重复2.1.1-2.1.3直至处理完所有Mashup服务。
本发明的技术构思为:Mashup服务描述文档简短,特征信息少,传统的方法无法有效对其建模,进而影响聚类,推荐等功能的精度,使得用户无法得到其期待的结果。为缓解由于Mashup服务中的稀疏性问题,无法良好对其建模的问题。本发明基于NMF,并且通过计算SPPMI矩阵,进而分解得到词嵌入信息,提出了一种融合前嵌入信息的NMF主题模型,求解主题Mashup服务的主题特征。
本发明的有益效果主要表现在要:(1)使用NMF求解Mashup主题特征,能更好地处理简短的文本。(2)在使用NMF求解模型的同时,引入词嵌入信息,不仅有效能有效提高模型的精度,同时缓解Mashup服务描述简短带来的稀疏性问题。(3)使用分解SPPMI矩阵的方式求解词嵌入,能和NMF在模型上有机的统一。
具体实施方式
下面对本发明作进一步描述。
一种云计算模式中融合词嵌入和非负矩阵分解技术的服务建模方法,包括以下步骤:
第一步:统计每个Mashup服务中单词词频信息,即单词出现的次数,构建文档-词频关系矩阵D;
第二步:统计单词共现信息,从而计算出SPPMI矩阵信息,步骤如下:
2.1统计词共现信息,由于Mashup服务描述文档较短,为了能更准确地获取上下文共现信息,本发明将整个服务描述文档作为滑动窗口的长度,计算每个单词和和其他单词在上下文中共同出现的次数,过程如下:
2.1.1对于当前Mashup服务,计算该Mashup服务描述文档长度Len,设定滑动窗口长度为Len;
2.1.2统计Mashup服务描述文档中单词和其他单词的共现情况,若当前单词的上下文单词,即该单词前后的单词,在滑动窗口Len的距离内,则该单词和其在滑动窗口内的上下文单词共现次数加1;
2.1.3重复2.1.2直至处理完Mashup中的所有单词;
2.1.4重复2.1.1-2.1.3直至处理完所有Mashup服务。
2.2点互信息(Pointwise Mutual Information,PMI)计算,PMI被广泛用于计算单词间相似度的关系,当两个单词在文本中共现概率越大时,单词间的相关性就越强,PMI计算公式如下所示。
x和y表示两个单词,P(x,y)表示单词x和y共现的概率,P(x)表示单词x在上下文中出现概率,根据单词w
#(w
2.3计算偏移正点互信息值(Shifted Positive Pointwise MutualInformation,SPPMI)矩阵,SPPMI矩阵可以通过PMI值计算,SPPMI矩阵的计算方式为:
SPPMI(w
其中κ为负采样系数。通过上述公式得到单词的上下文SPPMI矩阵M;
第三步:基于第一步,第二步得到Mashup服务文档单词的词频信息矩阵D,单词的上下文SPPMI矩阵M,通过分解M得到词嵌入信息矩阵,进一步将上述两种信息进行结合,计算服务的主题信息,步骤如下:
3.1通过由第一步给定全局文档-单词关系矩阵D,通过NMF将其分解为文档-主题矩阵θ和主题-单词矩阵Z乘积。分解矩阵D的函数表示为:
subject to:θ≥0and Z≥0,θ∈R
其中
3.2通过第一步,第二步计算得到单词的上下文SPPMI矩阵M,分解矩阵M引入词嵌入信息,分解M的公式如下所示:
S是一个额外的对称因子,用于M的近似求解,W为单词的词嵌入矩阵;
3.3利用Mashup服务文档和单词间的关系,可以发现主题信息,通过文档内单词上下文的共现信息,可以学习到词嵌入信息,但是这两个部分并不相互孤立,语义相关的单词通常属于相似的主题,在嵌入空间中也很接近,可知单词嵌入与它们的主题相关,关系公式如下所示:
3.4在步骤3.3中将主题-单词矩阵Z分解为主题嵌入矩阵A和词嵌入矩阵W的乘积,将词嵌入与主题信息相联系起来,进一步提高了主题建模的准确性;
结合步骤3.1,3.2和3.3,得到主题模型的目标函数:
subject to:θ≥0and Z≥0
为了方便求解该目标函数,使用矩阵迹运算将上述公式展开:
J(θ,Z,W,S,A)=λ
其中J(θ,Z,W,S,A)为J
J(θ,Z,W,S,A)=λ
Tr表示矩阵求迹,λ
其中α,β,γ,
令α⊙θ=0,β⊙Z=0,γ⊙W=0,
-(DZ)⊙θ+(θZ
-(λ
-2(λ
-(Z
进一步更新参数:
通过上述参数更新方式,求解出Mashup服务文档-主题矩阵θ和主题-单词矩阵Z,词嵌入矩阵W,主题嵌入矩阵A。
本说明书的实施例所述的内容仅仅是对发明构思的实现形式的列举,仅作说明用途。本发明的保护范围不应当被视为仅限于本实施例所陈述的具体形式,本发明的保护范围也及于本领域的普通技术人员根据本发明构思所能想到的等同技术手段。
机译: 客户关系管理中的社交网络服务与云计算融合,操作方法的学生关系管理
机译: 客户关系管理中的社交网络服务和云计算融合以及运营方法的学生关系管理
机译: 支付平台,具有外部和内部操作模式的方法和系统,用于从云计算平台的支付网关服务中摄取支付交易数据