自然语言处理概览

自然语言处理研究的是词、句、文档等几个层次的内容。

一、发展历史(前两个是理论、后一个是经验)

1、形式语法(复杂特征集)

2、词汇主义方法(WordNet、ConceptNet、FrameNet), 人工总结和整理概念、层次、结构等 

3、统计语言模型(语言有统计规律性,让机器去自己学习规律)

词汇向量化表示 CBOW skip-gram word2vec (Gensim来训练)

语句描述为词向量的序列构成的向量

抽象含义?言外之意?推理规则?

 

二、预处理

1、去除html tag 

2、编码 

3、doc --》句子--》单词(词性tag等)

4、去掉标点、太短的单词

5、去掉停用词 

6、抽取词干(stemming )分词,原型,过去式,近义词 统一成一个

 

二、分析(拆分,之后汇总理解):

1、分词、标注、统计词频等

2、信息提取(识别短语+识别entity+提取关系),非结构化->结构化(知识表达)

3、自动抽取 关键词、摘要;相似度比较(文档层面)

4、主题抽取(单文档)

5、分类、聚类(多文档)

6、情感分析

7、消除歧义

8、句法分析(谓词逻辑(sql)-》 问答和翻译)

 

概括:摘要、主题、情感、知识表达

 

三、应用

推荐系统

问答系统

对话系统

机器翻译

 

四、基本概念

1、TF(词频):某个单词在整个文档中出现的频率

2、IDF(逆向文件频率):总文件数目除以包含该词语之文件的数目,之后取对数,(描述是否在比较少的文件中存在)

TF-IDF(term frequency–inverse document frequency):TF与IDF的乘积,可以作为文件的特征。TFIDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。

3、命名实体识别(Named Entity Recognition,简称NER),又称作“专名识别”,是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等。三大类(实体类、时间类和数字类)、七小类(人名、机构名、地名、时间、日期、货币和百分比)命名实体。

4、n-gram 搜索n个词的上下文来确定词性和含义,即下一个词与前面的n-1个词有关系

5、wordnet 近义词典

五、相关库

snownlp

NLTK 

Word2Vec(词这个级别)

LDA(文章的这个级别)

全文和文章元数据抽取开源Python库:newspaper

https://github.com/rockingdingo/deepnlp/tree/master/deepnlp/textsum

 



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐
  • —软件人才免语言低担保 赴美带薪读研!—



你可能感兴趣的:(自然语言)