【技术实现步骤摘要】
开源许可证法律条款识别方法与装置
[0001]本专利技术属于计算机
,涉及一种开源许可证法律条款识别方法及装置,特别涉及一种用于识别开源许可证法律条款内容及其约束倾向的深度学习文本分类算法。
技术介绍
[0002]当前,开源已经成为软件创新和软件产业发展的主要趋势。与此同时,开源软件的开发和使用也伴随着多种风险,其中最大的风险就是潜在的知识产权风险。通常情况下,软件开发者会为软件或组件选择不同的开源许可证(允许在既定的法律条款下使用、修改或共享源代码的许可证)来约束软件或组件的使用条件,保护自己的知识产权,维护软件的长远发展。
[0003]现有的开源许可证风险分析,大多集中在许可证的合规性风险分析和兼容性风险分析。其中,许可证的合规性风险主要针对某一单独的许可证进行评估。许可证中声明的约束越多,使用该许可证的软件或组件合规的难度就越大,许可证的合规性风险就越高。许可证的兼容性风险主要针对两个不同的许可证进行判定。通常情况下,开源许可证可大致分为2类:permissive许可证(宽松自由许可证)和copyleft许可证(著佐权许可证)。Apache,MIT,BSD都是permissive许可证,GPL则是典型的copyleft许可证。两类许可证最大的区别是:copyleft许可证规定修改和扩展软件必须使用相同的许可证,即要求使用相同许可证进行修改和扩展后的分发;而permissive许可证则没有这项规定,即不要求使用相同许可证进行修改和扩展后的分发。因此,若某一个开源软件或组件同时声明使用Apache和G ...
【技术保护点】
【技术特征摘要】
1.一种开源许可证法律条款识别方法,其特征在于,所述方法包括:将开源软件的许可证文本切分成若干个语句;对每一语句进行法律条款的多标签分类,以获取包含法律条款的语句以及该语句中的法律条款;对包含法律条款的语句进行约束倾向的分类,得到所述许可证文本中法律条款对应的约束倾向;基于所述法律条款及该法律条款对应的约束倾向,得到所述许可证文本中法律条款的识别结果。2.如权利要求1所述的方法,其特征在于,所述将开源软件的许可证文本文件切分成若干个语句,包括:获取开源软件的许可证文本;基于所述许可证文本包含的句号、分号和冒号,对所述许可证文本切分,以得到若干个语句。3.如权利要求1所述的方法,其特征在于,所述对每一语句进行法律条款的多标签分类,以获取包含法律条款的语句,包括:对所述语句进行分词;识别每一个法律条款标签的英文描述,并构建标签句子向量矩阵C;基于预训练词向量模型计算每一个词的词向量,并构建第一语句词向量矩阵;将所述第一语句词向量矩阵输入至一个单层的Bi
‑
LSTM神经网络,得到所述语句的句子矩阵H;利用自注意力机制对所述语句的句子矩阵H进行特征提取,得到所述语句的特征矩阵M
(s)
;基于所述标签句子向量矩阵C,对所述语句的句子矩阵H进行标签注意力机制的特征提取,得到所述语句的特征矩阵M
(l)
;根据所述特征矩阵M
(s)
和所述特征矩阵M
(l)
,得到融合矩阵M;使用sigmoid函数对融合矩阵M进行计算,得到所述语句的法律条款标签;其中,所述法律条款标签包括K个维度,每一维度表示对应一法律条款的类型。4.如权利要求3所述的方法,其特征在于,所述将所述第一语句词向量矩阵输入至一个单层的Bi
‑
LSTM神经网络,得到所述语句的句子矩阵H,包括:计算第p个时间戳的正向传播状态其中,表示第p
‑
1个时间戳的正向传播状态,W
p
表示所述语句中第p个词的词向量;计算第p个时间戳的反向传播状态其中,表示第p
‑
1个时间戳的反向传播状态;基于各时间戳的正向传播状态构建正向传播矩阵其中,n表示所述语句中词的数量;基于各时间戳的反向传播状态构建反向传播矩...
【专利技术属性】
技术研发人员:党蓉,吴敬征,罗天悦,杨牧天,武延军,王旭,
申请(专利权)人:中国科学院软件研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。