太乱了,之后再整理 关于词性算法
词性(part-of-speech)是词汇基本的语法属性,一般也称为词性。 词性标注(part-of-speech tagging),又称为词类标注或者简称标注,是指为分词结果中的每一个单词标注一个正确的词性的程序,也即肯定每一个词是名词、动词、形容词或者其余词性的过程。 词性标注是不少NLP任务的预处理步骤,如句法分析,通过词性标注后的文本会带来很大的便利性,但也不是不可或缺的步骤。能够用在句法分析预处理,命名实体识别,信息抽取等。 而且不一样的工具备本身的词性体系。并不惟一。
抄百度百科:网络
词性标注(Part-Of-Speech tagging, POS tagging)也被称为语法标注(grammatical tagging)或词类消疑(word-category disambiguation),是语料库语言学(corpus linguistics)中将语料库内单词的词性按其含义和上下文内容进行标记的文本数据处理技术 。 词性标注能够由人工或特定算法完成,使用机器学习(machine learning)方法实现词性标注是天然语言处理(Natural Language Processing, NLP)的研究内容。词性标注的机器学习算法主要为序列模型,包括HMM、最大熵马尔可夫模型(Maximum Entropy Markov Model, MEMM)、条件随机场(Conditional random fields,CRFs)等广义上的马尔可夫模型成员,以及以循环神经网络(Recurrent Neural Network, RNN)为表明的深度学习算法。此外,一些机器学习的常规分类器,例如支持向量机(Support Vector Machine, SVM)在改进后也可用于词性标注 。 词性标注主要被应用于文本挖掘(text mining)和NLP领域,是各种基于文本的机器学习任务,例如语义分析(sentiment analysis)和指代消解(coreference resolution)的预处理步骤。
词性标注算法dom
词性标注基本能够利用分词的方法(匹配and几率统计),中文多数词语只有一个词性,或者出现频次最高的词性远远高于第二位的词性。听说单纯选取最高频词性,就能实现80%准确率的中文词性标注程序。 基于字符串匹配的字典查找算法: 先对语句进行分词,而后从字典中查找每一个词语的词性,对其进行标注便可。jieba词性标注中,对于识别出来的词语,就是采用了这种方法。这种方法比较简单,通俗易懂,可是不能解决一词多词性的问题,所以存在必定的偏差。 基于统计的词性标注算法: 和分词同样,经过HMM隐马尔科夫模型来进行词性标注。观测序列即为分词后的语句,隐藏序列即为通过标注后的词性标注序列。起始几率 发射几率和转移几率和分词中的含义大同小异,能够经过大规模语料统计获得。观测序列到隐藏序列的计算能够经过viterbi算法,利用统计获得的起始几率 发射几率和转移几率来获得。获得隐藏序列后,就完成了词性标注过程。 (1)基于最大熵的词性标注 (2)基于统计最大几率输出词性 (3)基于HMM的词性标注
难点:机器学习
相对于英文,中文没有词形变化,不能从词形来识别词性。 一词多词性很常见。统计发现,一词多词性的几率高达22.5%。并且越经常使用的词,多词性现象越严重。好比“研究”既能够是名词(“基础性研究”),也能够是动词(“研究计算机科学”)。 词性划分标准不统一。目前尚未一个普遍承认的统一的标准。好比LDC标注语料中,将汉语一级词性划分为33类,而北京大学语料库则将其划分为26类。词类划分标准和标记符号的不统一,以及分词规范的含糊,都给词性标注带来了很大的困难。jieba分词采用了使用较为普遍的ICTCLAS 汉语词性标注集规范。 未登陆词问题。未登陆词的词性也是一个比较大的课题。未登陆词不能经过查找字典的方式获取词性,能够采用HMM隐马尔科夫模型等基于统计的算法。
jieba分词就综合了两种算法,对于分词后识别出来的词语,直接从字典中查找其词性。而对于未登陆词,则采用HMM隐马尔科夫模型和viterbi算法来识别。工具