一种基于语义计算的分类器构建方法、分类器与流程

文档序号:15145462发布日期:2018-08-10 20:23阅读:198来源:国知局
本发明属于信息检索及其数据库结构
技术领域
,尤其涉及一种基于语义计算的分类器构建方法、分类器。
背景技术
:目前,业内常用的现有技术是这样的:伴随着全球化进程的不断深化和互联网的迅速发展,文本数据正呈现出爆炸式的增长,但数据来源各异、形式多样,为文档的管理和使用带来了极大的挑战。文本分类技术是利用机器学习方法对文本集按照一定的分类体系或标准自动进行分类标记,从而实现对海量数据的归类存档和快速查询检索。目前,文本分类技术已经相对成熟,也在很多领域得到了广泛的应用。文本分类最原始的方法是对各个分类定义一些关键词规则,然后利用文本和分类的关键词匹配程度来进行分类。随着机器学习的发展,诞生了许多基于机器学习的文本分类器,如朴素贝叶斯(bayes)和支持向量机(svm)等。目前,深度学习的流行使文本分类的性能得到了极大的提高,例如基于长短时记忆网络(lstm)或卷积神经网络(cnn)等神经网络模型在很多文本分类任务中都能达到90%以上。综上所述,现有技术存在的问题是:现有基于机器学习的文本分类方法通常是监督学习的,其往往需要繁重的人工标注去产生优良的训练分类器,这就导致如下两个问题的产生:(1)人工标注数据往往需要繁重的人工劳动,标注准确率要求高,这往往要求三个人去标注同一个文本,从而标注工作周期长,人工成本高,上线投产速度慢;(2)在缺乏语料的情况下,分类器训练的模型较差,往往不能满足系统应用的实效性要求。解决上述技术问题的难度和意义:非监督的文本分类只需要用户为每个分类定义一些启发式的关键词,来自动完成分类任务,极大较少人工参与的工作量,加快分类器的构建速度。技术实现要素:针对现有技术存在的问题,本发明提供了一种基于语义计算的分类器构建方法、分类器。本发明是这样实现的,一种基于非监督学习的文本所属分类方法,所述基于非监督学习的文本所属分类方法利用神经网络模型在维基百科数据上训练词向量,获得词的分布式表征;通过分类标签获得分类的向量表示,同时利用加权平均的方法获得文本的向量表示;通过计算分类向量和文本向量之间的语义关系来获得文本所属的最可能的分类。进一步,非监督分类直接从类别的内在特征出发,进行分类类别的特征表示,通过特征词和预先训练的词向量,利用向量加权平均的方法计算出类向量,计算方法为:其中vectorrw为排斥特征词向量,ω3为惩罚权重;vectorc为要求的类向量,是一个n维的浮点向量,vectorcw和vectorfw分别为分类类名和分类特征词的词向量,ω1和ω2分别为两类特征词分别表示的权重,n表示每个类别特征词的数量。进一步,文本正文的语义向量通过计算文章所含词的词向量的加权平均和得到,利用textrank算法对文本中字符进行重要性排序,一个字符的权重计算公式为:其中d为阻尼系数,in(wi)为指向当前字符的字符集合,out(wj)为当前字符指向的字符集合,ωji为两个字符共现权重;通过加权平均和的方式获得文本语义向量,用公式表示为:其中,vector(s)表示标题或者正文的向量,vi表示标题或正文中第i个字的向量,ws(wi)是计算好的第i个字的重要性权重。本发明的另一目的在于提供一种应用所述基于非监督学习的文本所属分类方法的分类器。本发明的另一目的在于提供一种利用所述的基于非监督学习的文本所属分类方法的基于语义计算的分类器构建方法,所述基于语义计算的分类器构建方法包括:(1)半监督阶段,从训练数据中自动提取出类别特征加入到非监督学习模型;(2)监督学习阶段,引入了监督学习方法,,训练好后将监督学习接口迁移到分类接口上,经过用户确认后替换原来非监督的分类方法。进一步,所述半监督阶段利用textrank算法从类别下标注数据中提取特征词,将特征词加入到非监督分类中的类特征词池中,类向量计算方法更新为:其中vectorhw为非监督提取出特征词向量,ω4为非监督学习指导权重,ws(wi)为非监督提取出特征词权重。本发明的另一目的在于提供一种应用所述基于语义计算的分类器构建方法的分类器。本发明的另一目的在于提供一种所述基于语义计算的分类器构建方法的基于语义计算的分类器构建系统,所述基于语义计算的分类器构建系统包括:非监督学习模块,用于获得文本所属的最可能的分类;半监督模块,用于从训练数据中自动提取出类别特征加入到非监督学习模型;监督学习模块,用于训练好后将监督学习接口迁移到分类接口上,经过用户确认后替换原来非监督的分类方法。综上所述,本发明的优点及积极效果为:在不需要训练分类器的情况下,能够对分类和文本进行语义表征,并通过计算分类和文本之间的语义关系来实现分类的功能。包含了非监督阶段、半监督阶段和监督学习阶段,各个分类阶段能够满足各个阶段要求,可以灵活切换,各个阶段实时在线学习,可以做到无缝切换,提高了现场运行性能。本发明的非监督学习阶段无需标注数据,仅仅需要用户定义少量特征词即可完成分类器的创建,因此上线速度快,无需等待漫长的标注数据积累;非监督学习阶段可以充分利用现有的有限标注数据,通过提取有效特征词来指导和提高非监督分类能力;监督学习阶段利用丰富的标注数据,训练优良的分类模型,在线上达到预期效果后可以灵活进行上线。为了验证非监督学习方法的有效性,本发明采用公开的清华数据集作为测试集进行实验对比,我们从清华数据集中14个分类中的每一个分类中随机抽取100个文档,然后运行监督的svm方法和本发明阐述的非监督分类方法,最后将获得的准确率、召回率和f1等参数统计如下:方法/参数准确率(%)召回率(%)f1(%)监督svm方法86.182.384.2本非监督方法82.579.380.9从上表可以看出,本发明中的非监督学习方法,在f1值上达到了80.9%,比监督的svm方法仅仅低了3%左右,这充分说明了非监督学习方法在容错允许的范围内能够达到监督学习方法的相当效果。附图说明图1是本发明实施例提供的基于语义计算的分类器构建方法流程图。图2是本发明实施例提供的基于语义计算的分类器构建方法实现流程图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。为了快速构建分类器,并在使用过程中逐步提升分类效果,本发明提出了一种渐进式的分类器构建技术;只需要用户为每个分类定义一些启发式的关键词,自动完成分类任务,极大较少人工参与的工作量,加快分类器的构建速度。如图1所示,本发明实施例提供的基于语义计算的分类器构建方法包括以下步骤:s101:非监督学习阶段(无训练数据阶段),利用神经网络模型在维基百科数据上训练词向量,获得词的分布式表征;然后通过分类标签(包括分类名和用户自定义的一些关键词)来获得分类的向量表示,同时利用加权平均的方法获得文本的向量表示;最后通过计算分类向量和文本向量之间的语义关系来获得文本所属的最可能的分类;s102:半监督阶段(训练数据积累阶段),随着分类器的使用,用户不断积累数据,并不断的对数据进行人工纠正,形成少量的训练数据,从训练数据中自动提取出类别特征加入到非监督学习模型中,指导非监督学习,提高分类的准确率;s103:监督学习阶段(训练数据阶段),当日积月累,训练数据已经足够丰富时,本发明引入了监督学习方法,如支持向量机(svm)进行模型的训练,训练好后将监督学习接口迁移到分类接口上,经过用户确认后替换原来非监督的分类方法。本发明的核心技术是基于语义计算的非监督分类方法,依赖的最基础的算法是词向量的训练。词向量通俗的讲就是词的分布式表征(distributedrepresentation)方法,即将自然语言中的抽象的词转化为容易计算的n维向量,并且词之间蕴含的深度语义关联也可以通过计算词向量间的相似度获得。目前词向量的训练方法主要是谷歌的word2vec(google发布的一个工具包,利用神经网络为单词寻找一个连续向量空间中的表示)和斯坦福的全局向量模型glove(globalvectorsforwordrepresentation,斯坦福发布的词向量训练工具)。非监督分类的非监督性表现在无需利用类别的标注数据,而直接从类别的内在特征出发,进行分类类别的特征表示,内在特征主要是指分类本身的名称和人工定义的分类特征词。通过这些特征词和预先训练的词向量,利用向量加权平均的方法可以计算出类向量,其计算方法为:其中,vectorc为要求的类向量,是一个n维的浮点向量,vectorcw和vectorfw分别为分类类名和分类特征词的词向量,ω1和ω2分别为两类特征词分别表示的权重,n表示每个类别特征词的数量。类别特征转化为类向量,而不是直接用特征词词典组成的优势是,类向量本身蕴含了丰富的语义,并采用数学向量表示,便于进行数学运算。本发明引入了排斥特征词概念,排斥特征词指的是那些虽然可以作为该类别的特征词,但是它更能代表另一个语义相似类的类别,因此需要将这类词在该类中进行惩罚,在另一个类中进行加权,从而使语义空间上相似类能够明显区分。基于排斥特征词思想,上式将被改写为:其中vectorrw为排斥特征词向量,ω3为惩罚权重。为了达到非监督分类的目的,需将预分类的文章进行语义向量表征,这样才能通过计算文章向量和类向量之间的语义相似度来区分类别。文章正文的语义向量可以通过计算文章所含词的词向量的加权平均和来得到,具体步骤为:首先,利用textrank算法(textrank是在google的pagerank算法启发下,针对文本里的词或句子设计的权重算法)对文本中字符进行重要性排序,一个字符的权重计算公式为:其中d为阻尼系数(一般取值为0.85),niw(i)为指向当前字符的字符集合,out(wj)为当前字符指向的字符集合,ωji为两个字符共现权重。然后通过加权平均和的方式获得文本语义向量,用公式表示为:其中,vector(s)表示标题或者正文的向量,vi表示标题或正文中第i个字的向量,ws(wi)是计算好的第i个字的重要性权重。非监督分类对于无训练数据、急需上线应用的情况是一种非常有效的手段,但非监督分类的缺点是用户自定义特征太少,分类准确率太低。因此,在线上运行系统提供一种在线数据标注工具,供用户实现在线人工标注数据,随着项目的线上运行,标注数据逐渐积累,但是这些少量的标注数据仍然达不到训练模型的量。为了利用这些数据提高非监督分类的准确率,本发明提出一种半监督方案,其基本思想是,首先利用textrank算法从类别下标注数据中提取特征词,然后将这些特征词加入到非监督分类中的类特征词池中,从而达到提高类特征表示能力,此时类向量计算方法更新为:其中vectorhw为非监督提取出特征词向量,ω4为非监督学习指导权重,ws(wi)为非监督提取出特征词权重。随着标注数据的积累,当达到设定的阈值量时,系统启动监督学习,学习训练模型,本框架采用最经典的支持向量机(svm)方法训练分类器模型。在训练完成模型后将监督学习和半监督学习两个分类器同时上线运行,比较两种分类器性能,当监督学习性能优于非监督学习预先设计比例时,监督学习替代非监督学习进行线上运行,反之则继续积累数据训练模型,直到监督学习达到预设效果。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1