关键词短语生成的无监督方法03——Extract.py

本文详述了Extract函数的代码解析,涉及doc2vec模型用于文档向量生成,解释了如何构建候选关键词短语库,以及如何使用numpy的reshape和dot函数进行嵌入相似性计算。此外,还探讨了TFIDF融合和排名的过程。
摘要由CSDN通过智能技术生成

2021SC@SDUSC


本篇博客接上一篇,对Extract.py中Extract()函数剩余部分展开分析。

一、Extract函数部分解析说明

部分代码分段解析:

		doc_emb = model.infer_vector(pre_list)  
        doc_emb = doc_emb / math.sqrt(sum([doc_emb[k]*doc_emb[k] for k in range(300)])) 
        rank=[]
        rank2 = []
        l = len(pre.split('.'))
        absent_can = set()  #声明absent关键词短语集合
        for phrase in can_set:
            phrase = phrase.split()
            flg = 0
            for w in phrase:
                if w not in pre_list:
                    flg = 1
                    break
            if flg==0:
                absent_can.add(phrase) #构建absent关键词短语集合

解析:

  • model.infer_vector()函数,推测文本向量。此处是使用gensim的doc2vec生成文档向量的应用。
    doc2vec是word2vec的延伸,同样使用无监督方法利用上下文对词语和文档向量进行训练。
    doc2vec的输入是TaggedDocument向量,它包括word_list和tags两部分,word_list是文档的分词列表,如[‘火箭’,‘是’,‘总冠军’,]。tags是文档的标签列表。

使用doc2vec训练过程如下:

document = TaggedDocdument(word_list,tags=label) # 创建TaggedDocument对象

model = Doc2Vec(dm=1, min_count=1, window=3, size=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值