20210104 nlp

1、语音识别

2、文本分类

3、信息抽取

4、声纹识别

5、语音合成

6、情感分类

7、知识图谱

8、智能推荐

9、智能搜索

10、主题提取

十一、关键词提取

1、无监督关键词提取

1>基于统计特征的关键词提取(TF、TF-IDF)   https://blog.csdn.net/asialee_bird/article/details/81486700

 TF-IDF的主要思想是:如果某个单词在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。

 

词频(TF)表示词条(关键字)在文本中出现的频率。   通常会归一化,  词数/文章总词数

公式:20210104 nlp

逆向文件频率 (IDF) :某一特定词语的IDF,可以由总文件数目除以包含该词语的文件的数目再将得到的商取对数得到。如果包含词条t的文档越少, IDF越大,则说明词条具有很好的类别区分能力。

   公式:20210104 nlp       

 某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF-IDF。因此,TF-IDF倾向于过滤掉常见的词语,保留重要的词语。

       公式:20210104 nlp

 

2>基于词图模型的关键词提取(PageRank,TextRank)

TextRank算法的基本思想是将文档看作一个词的网络,该网络中的链接表示词与词之间的语义关系。

3>基于主题模型的关键词提取(LDA)

主题模型是一种统计模型用于发现文档集合中出现的抽象“主题”。主题建模是一种常用的文本挖掘工具,用于在文本体中发现隐藏的语义结构。

LDA也称三层贝叶斯概率模型,包含词、主题和文档三层结构;利用文档中单词的共现关系来对单词按主题聚类,得到“文档-主题”和“主题-单词”2个概率分布。

4>word2vec    https://www.jianshu.com/p/695eb0fd3745

特征词向量的抽取是基于已经训练好的词向量模型。

需要加载模型训练

import numpy as np
import gensim
model = gensim.models.word2vec.Word2Vec.load('./word2vec_c_from_weixin/word2vec_c')

#此函数计算某词对于模型中各个词的转移概率p(wk|wi)
def predict_proba(oword, iword):
    #获取输入词的词向量
    iword_vec = model[iword]
    #获取保存权重的词的词库
    oword = model.wv.vocab[oword]
    oword_l = model.trainables.syn1[oword.point].T
    dot = np.dot(iword_vec, oword_l)
    lprob = -sum(np.logaddexp(0, -dot) + oword.code*dot)
    return lprob

#各个词对于某词wi转移概率的乘积即为p(content|wi),
#如果p(content|wi)越大就说明在出现wi这个词的条件下,此内容概率越大,
#那么把所有词的p(content|wi)按照大小降序排列,越靠前的词就越重要,越应该看成是本文的关键词。

from collections import Counter
def keywords(s):
    # 抽出s中和与训练的model重叠的词
    s = [w for w in s if w in model]
    ws = {w:sum([predict_proba(u, w) for u in s]) for w in s}
    return Counter(ws).most_common()

import pandas as pd
import jieba
#这里我们随便去弄一篇微博
#之前说过使用word2vec不需要去除停用词

w1 = u'美对华商品将大规模加征关税 我驻美大使:奉陪到底。当地时间22日,美国总统特朗普宣布将对从中国进口的商品大规模征收关税,涉税商品达600亿美元。我驻美大使崔天凯回应:中国从来不想与任何国家进行贸易战,但若其他国家非要对中国施加贸易战,中国一定会予以还击、奉陪到底。'
x = pd.Series(keywords(jieba.cut(w1)))
#输出最重要的前13个词
print (x[0:13])

 

2、有监督关键词提取   

1>信息增益关键词提取   https://blog.csdn.net/asialee_bird/article/details/81084783

2>互信息关键词提取算法及实现

3>卡方检验关键词提取算法及实现

4>基于树模型的关键词提取算法及实现

 

 

 

 

一、面试实例   nlp工程师简历

https://blog.csdn.net/xiaosa_kun/article/details/84868465

二、实战

1、达观杯NLP智能处理           https://www.bilibili.com/video/BV1fV411y76E?p=5

三、hanlp   信息抽取   关键词和句提取

https://blog.csdn.net/weixin_40605573/article/details/108316742

 

 

上一篇:嵌入式Linux设备驱动程序:用户空间中的设备驱动程序


下一篇:一个例子来使用sklearn中的TfidfVectorizer