当前位置: 首页 > news >正文

网站域名com和cn的差别在哪里加工订单网

网站域名com和cn的差别在哪里,加工订单网,织梦做的网站有哪些,品牌推广理论和各位小伙伴分享一下使用sklearn进行文本摘要的思考。 第一版本 原理 提取式文本摘要的基本原理是: 将文本分割成句子 计算每个句子的重要性(权重) 选择权重最高的几个句子组成摘要 常用的句子权重计算方法: TF-IDF:基于词频-逆文档频…

和各位小伙伴分享一下使用sklearn进行文本摘要的思考。

第一版本

原理

提取式文本摘要的基本原理是:

  1. 将文本分割成句子

  2. 计算每个句子的重要性(权重)

  3. 选择权重最高的几个句子组成摘要

常用的句子权重计算方法:

  • TF-IDF:基于词频-逆文档频率

  • 文本相似度:计算句子与全文的相似度

  • 句子位置:考虑句子在文中的位置(开头/结尾通常更重要)

  • 句子长度:适中的句子长度可能更重要

代码实现

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
import numpy as np
import nltk
from nltk.tokenize import sent_tokenize
​
nltk.download('punkt')
​
class SklearnSummarizer:def __init__(self, language='english'):self.language = languagedef summarize(self, text, num_sentences=3):"""基于TF-IDF和余弦相似度的文本摘要参数:text: 要摘要的文本num_sentences: 摘要中包含的句子数量返回:摘要文本"""# 分割句子sentences = sent_tokenize(text, self.language)if len(sentences) <= num_sentences:return text# 计算TF-IDF矩阵tfidf = TfidfVectorizer(stop_words=self.language)tfidf_matrix = tfidf.fit_transform(sentences)# 计算句子相似度矩阵sim_matrix = cosine_similarity(tfidf_matrix, tfidf_matrix)# 计算句子重要性得分(与所有其他句子的平均相似度)scores = np.zeros(len(sentences))for i in range(len(sentences)):scores[i] = sim_matrix[i].mean()# 获取得分最高的句子索引top_sentence_indices = scores.argsort()[-num_sentences:][::-1]top_sentence_indices.sort()  # 保持原文顺序# 生成摘要summary = ' '.join([sentences[i] for i in top_sentence_indices])return summary
​
# 使用示例
if __name__ == "__main__":text = """Natural language processing (NLP) is a subfield of linguistics, computer science, and artificial intelligence concerned with the interactions between computers and human language. It focuses on how to program computers to process and analyze large amounts of natural language data. The result is a computer capable of "understanding" the contents of documents, including the contextual nuances of the language within them. The technology can then accurately extract information and insights contained in the documents as well as categorize and organize the documents themselves. Challenges in natural language processing frequently involve speech recognition, natural language understanding, and natural language generation."""summarizer = SklearnSummarizer()summary = summarizer.summarize(text, num_sentences=2)print("摘要结果:")print(summary)

优化

  1. 加入句子位置特征

    # 在计算得分时加入位置权重
    position_weights = [1/(i+1) for i in range(len(sentences))]  # 前面的句子权重更高
    scores = scores * position_weights
  2. 加入句子长度特征

    # 过滤掉过短或过长的句子
    avg_length = np.mean([len(s.split()) for s in sentences])
    length_weights = [1 - abs(len(s.split())-avg_length)/avg_length for s in sentences]
    scores = scores * length_weights
  3. 使用更复杂的特征

    • 命名实体数量

    • 包含数字或特定关键词

    • 句子与标题的相似度

第二版本

第一个版本还是有点问题的:

  • 只是简单提取句子,无法生成新句子

  • 对长文档效果可能不佳

  • 依赖句子分割质量

所以后续又采用Transfromaer进行了重新思考和编写,后续再分享吧。嘿嘿嘿

http://www.dtcms.com/a/441172.html

相关文章:

  • 网站怎么做动态切图连云港seo
  • 昆明做网站找启搜网络wordpress导航栏透明
  • 哪个网站是做韩国化妆品正品市场营销模式有哪些
  • 专业单位网站设计企业58同城类似的网站怎么做
  • 天津seo网站管理抖音代运营方案计划书
  • php众筹网站程序源码静态网站建设的主要技术
  • 邢台建站详情页设计 制作
  • 网站建设数据库怎么传送优秀的网页网站设计
  • 网站内容设计遵循的原则有网站注册地址
  • 医疗机械网站怎么做wordpress深度开发
  • 外汇申报在哪个网站上做做众筹的网站有几个
  • 山西省建设厅网站官网仿团购网站模板
  • ps彩屏做的好的网站企业网站建设的基本原则有哪些?
  • 南阳网站开发网站建设费放什么科目
  • 网站开发建设公司电话公司网页如何建立
  • 情侣做记录网站源码全网营销和网站建设
  • 可以做外链的网站平台延庆网站制作
  • 深圳市盐田区住房和建设局网站电商网站制作
  • 网站后台注入wordpress用什么服务器
  • 网站源码建站磁力天堂
  • 做的比较好的二手交易网站有哪些网站建设开票
  • 郑州做供暖的公司网站电商网站的银行支付接入该怎么做
  • 做做网站app下载2023网页素材网
  • 宁波网站排名方法网上书店网站建设毕业设计
  • 建设实验教学网站的作用上海青浦做网站公司
  • 关于建设公司网站的议题网线制作图解
  • 长春seo网站建设费用wordpress广告栏
  • 苏州网站开发网站开发费用多平台管理系统
  • 服务器做两个网站十大微信小程序游戏
  • 专业手机网站建设平台重庆企业网站开发