位置: IT常识 - 正文

使用 TF-IDF 算法将文本向量化(tf-idf计算)

编辑:rootadmin
使用 TF-IDF 算法将文本向量化

推荐整理分享使用 TF-IDF 算法将文本向量化(tf-idf计算),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:tfidf算法改进,tf-idf方法,tf-idf计算,tfidf算法优点,tfidf算法原理,tf-idf例题,tf-idf例题,在tf-idf算法中,tf指,内容如对您有帮助,希望把文章链接给更多的朋友!

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

TF-IDF 算法前言一、TF-IDF 是什么?含义理解:二、算法步骤1.统计每一篇文档中词的出现次数2.计算词频(TF)3.计算逆文档频率(IDF)4.计算TF-IDF总结前言

提示:这里可以添加本文要记录的大概内容:

TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF是词频(Term Frequency),IDF是逆文本频率指数(Inverse Document Frequency)。

提示:以下是本篇文章正文内容,下面案例可供参考

一、TF-IDF 是什么?

TF-IDF 全称为 term frequency–inverse document frequency 算法分为两部分: 词频(TF) 和 逆文档频率(IDF)

1词频(TF) = 某个词在文章中的出现次数 / 文章总词数 2逆文档频率(IDF) = log( 文章总数 / (包含该词的文章数+1))

使用 TF-IDF 算法将文本向量化(tf-idf计算)

分成两部分理解的话就是,一个词的词频越高说明它越重要,逆文档频率越高说明它越普遍,越普遍则代表性越差。所以,词频与最终的权重呈正比,逆文档频率与最终的权重呈反比。

在使用 TF-IDF 算法之前,需要先对文本进行预处理,如分词、去除停用词。在运算之前,需要先统计每篇文章中的每个词语出现的次数。

含义理解:

就将下面三张图,用代码表示出来

二、算法步骤1.统计每一篇文档中词的出现次数

docList 是一个列表,包含整份数据(包含多篇文章)的信息;其中,列表的元素是字典类型,即列表包含多个字典元素,其中字典的结构为 词语:出现次数 ,所以,每个列表储存着一篇文章中词语出现次数的信息

def countWord(doc): 2 ''' 3 依次对所有文章进行统计,统计每篇文章中每个词的出现次数 4 doc: list 列表中一个元素为一篇文章的文本数据,str类型,空格间隔,含换行符 5 ''' 6 docList = [] 7 for item in doc: 8 wordDic = {} 9 wordList = item.strip().split() #将字符串转换成列表,一个元素一个词10 for word in wordList:11 wordDic[word] = wordDic.setdefault(word, 0)+112 docList.append(wordDic)13 return docList2.计算词频(TF)

词频(TF) = 某个词在文章中的出现次数 / 文章总词数

1例如: 2文章一:‘图书’: 34, ‘评论’: 12, ‘重视’: 2 3文章二:‘评论’: 7, ‘活动’: 4, ‘出版’: 5 4文章三:‘导致’: 2, ‘图书’: 12, ‘评论’: 9 5 6则 词频(TF) 为: 7文章一:‘图书’: 34/(34+12+2), ‘评论’: 12/(34+12+2), ‘重视’: 2/(34+12+2) 8文章二:‘评论’: 7/(7+4+5), ‘活动’: 4/(7+4+5), ‘出版’: 5/(7+4+5) 9文章三:‘导致’: 2/(2+12+9), ‘图书’: 12/(2+12+9), ‘评论’: 9/(2+12+9)

1def computeTF(wordDic): 2 ''' 3 计算一篇文章中每个词的词频 4 wordDic: dict 为 docList 的元素 5 ''' 6 #计算 total 7 total = sum(wordDic.values()) 8 #计算词频 9 tfDic = {}10 for word, value in wordDic.items():11 tfDic[word] = value / total1213 return tfDic14 TF = [] #所有文章的词频15 for wordDic in docList:TF.append(computeTF(wordDic))3.计算逆文档频率(IDF)

计算逆文档频率(IDF)

例如: 2文章一:‘图书’: 34, ‘评论’: 12, ‘重视’: 2 3文章二:‘评论’: 7, ‘活动’: 4, ‘出版’: 5 4文章三:‘导致’: 2, ‘图书’: 12, ‘评论’: 9 5 6则 逆文档频率(IDF) 为: 7’图书’: log(3/(2+1)), ‘评论’: log(3/(3+1)), ‘重视’: log(3/(1+1)), ‘活动’: log(3/(1+1)), ‘出版’: log(3/(1+1)), ‘导致’: log(3/(1+1)) 8 9针对 ‘评论’: log(3/(3+1)) 这个数据: 10分子 3 是一共有三篇文章;分母 3 是其中有三篇文章包含了词语 ‘评论’;分母 1 是防止分母为 0 的一种做法,如果能保证分母不为 0,此处不加一也无妨。

def computeIDF(docList): 2 ''' 3 计算每个词的逆文档频率 4 docList: list 5 ''' 6 #计算 total 7 total = len(docList) 8 #计算逆文档频率 9 idfDic = {}10 for wordDic in docList:11 for word, value in wordDic.items():12 if value > 0:13 idfDic[word] = idfDic.setdefault(word, 0)+114 for word, value in idfDic.items():15 idfDic[word] = math.log(total/value+1) #要先引入 math 库1617 return idfDic4.计算TF-IDF

TF-IDF = 词频(TF) * 逆文档频率(IDF)

对于每篇文章,将文章中的每个词对应的词频和逆文档频率相乘,结果就是 TF-IDF 的值

TF_IDF = []for i in TF: s = [] for j in i.keys(): if j in IDF.keys(): s.append({j:i[j]*IDF[j]}) TF_IDF.append(s)TF_IDF总结

相关参考链接: TF-IDF算法介绍及实现 TF-IDF算法详解 百度百科——tf-idf

本文链接地址:https://www.jiuchutong.com/zhishi/300332.html 转载请保留说明!

上一篇:如何在vscode里面快速运行html代码(包含如何在vscode里面编写html代码)(vscode nasm)

下一篇:最全面试题CSS(含答案)(css面试题及答案)

  • ps4手柄如何连接win10蓝牙(ps4手柄如何连接ps4)

    ps4手柄如何连接win10蓝牙(ps4手柄如何连接ps4)

  • 垂直对齐方式怎么设置(垂直对齐方式设置为居中)

    垂直对齐方式怎么设置(垂直对齐方式设置为居中)

  • 定向流量是哪些app可以用(移动的动感地带定向流量是哪些)

    定向流量是哪些app可以用(移动的动感地带定向流量是哪些)

  • 荣耀30青春版的像素是多少(荣耀30青春版的膜和别的型号通用)

    荣耀30青春版的像素是多少(荣耀30青春版的膜和别的型号通用)

  • windows操作系统属于应用软件吗

    windows操作系统属于应用软件吗

  • asp木马不具有的功能是(木马不具备什么功能)

    asp木马不具有的功能是(木马不具备什么功能)

  • 抖音可以卖酒吗(抖音可以卖酒吗2021)

    抖音可以卖酒吗(抖音可以卖酒吗2021)

  • 系统测试的基本方法有什么

    系统测试的基本方法有什么

  • 腾讯会议开视频时候可以切出去吗(腾讯会议开视频人数上限是多少)

    腾讯会议开视频时候可以切出去吗(腾讯会议开视频人数上限是多少)

  • fitpro手环是什么牌子(fitpolo手环)

    fitpro手环是什么牌子(fitpolo手环)

  • 声卡的主要性能指标有哪些(声卡的主要性能参数)

    声卡的主要性能指标有哪些(声卡的主要性能参数)

  • 荣耀20pro耳机孔插哪(荣耀20pro耳机孔啥样)

    荣耀20pro耳机孔插哪(荣耀20pro耳机孔啥样)

  • word咋新建图片样式(word2016怎么新建图片样式)

    word咋新建图片样式(word2016怎么新建图片样式)

  • 怎么将爱奇艺的视频下载到本地(怎么将爱奇艺的视频保存到相册)

    怎么将爱奇艺的视频下载到本地(怎么将爱奇艺的视频保存到相册)

  • 苹果xr微信声音怎么设置(苹果xr微信声音很小怎么回事)

    苹果xr微信声音怎么设置(苹果xr微信声音很小怎么回事)

  • 手机双模和单模的区别(手机双模和单模有什么区别)

    手机双模和单模的区别(手机双模和单模有什么区别)

  • wps怎么绘制表格线(wps怎么绘制表格然后打印)

    wps怎么绘制表格线(wps怎么绘制表格然后打印)

  • 手机怎么免费开淘宝店(手机怎么免费开启一百二十帧啊)

    手机怎么免费开淘宝店(手机怎么免费开启一百二十帧啊)

  • maya属性编辑器在哪里(maya属性编辑器旁边的不见了)

    maya属性编辑器在哪里(maya属性编辑器旁边的不见了)

  • 联想拯救者y7000p键盘灯怎么开(联想拯救者y7000p2023)

    联想拯救者y7000p键盘灯怎么开(联想拯救者y7000p2023)

  • win10无法正常启动你的电脑0xc0000001(Win10无法正常启动你的电脑0xc0000225)

    win10无法正常启动你的电脑0xc0000001(Win10无法正常启动你的电脑0xc0000225)

  • 摄像头6毫米啥意思(摄像头的6毫米和4毫米)

    摄像头6毫米啥意思(摄像头的6毫米和4毫米)

  • 微信群发所有人怎么发(微信群发所有人怎么撤回)

    微信群发所有人怎么发(微信群发所有人怎么撤回)

  • koreader是什么(korea是什么牌子)

    koreader是什么(korea是什么牌子)

  • 硬盘维护:整理磁盘碎片(硬盘的日常维护需要做到什么?)

    硬盘维护:整理磁盘碎片(硬盘的日常维护需要做到什么?)

  • 计提企业所得税会计分录怎么做
  • 筹建期间发生的开办费计入什么科目
  • 注册公司工贸和商贸区别
  • 长期待摊费用的账务处理
  • 编制初始计量有什么要求
  • 营业额和合同额的区别
  • 核定征收的收入总额包括营业外收入吗
  • 无形资产建造期间的摊销记在哪里
  • 新会计准则科目编码
  • 自制原始凭证和原始凭证的区别
  • 个体工商户申报年报
  • 企业政策性搬迁所得税
  • 银行小额代款怎么办理
  • 公司注销实收资本可以退回股东吗?
  • 过路费发票可以抵扣增值税吗
  • 生产过程中产品的质量保证体系
  • 专项产资金支出要怎么做分录?
  • 个税多交了怎么退税
  • 材料入库时实收什么意思
  • 已付款货物还未付款
  • 单位承租个人房屋交哪些税2020年
  • 附税分录怎么做?
  • 二甲醚增值税税率9%
  • 资产改变用途的法律规定
  • 转让地下建筑物交土地增值税吗
  • 商业企业向供货方收取的返还收入
  • 腾讯电脑管家开机加速在哪里
  • 如何限制某台设备上网
  • 清除不必要的内存
  • php登录注册
  • vue前端代码实例
  • win10电脑电源选项怎样设置最好
  • 应付股利属于债务吗
  • 高薪员工辞退补偿金
  • html下划线怎么设置
  • js怎么制作
  • 办理完税证明需要什么资料
  • 客户借款怎么做账
  • 报个税收入需要减去扣款金额吗
  • 个人以不动产投资入股土地增值税
  • 应收款挂账会计分录
  • 11月资产负债表
  • sql语句优化实例
  • 公司性质不一样的重名可以吗
  • 销售增长率计算公式财务管理
  • 公司组织出国旅游很差吗
  • 土地租金计入什么会计科目
  • 超市返利账务处理
  • 货款客户给的电话怎么查
  • 交纳增值税的账务处理PPT
  • 收到工程进度款怎么做分录
  • 付国外客户佣金怎么代扣代缴增值税
  • 未发生账务类交易
  • 经营活动产生的现金净流量怎么算
  • 多计提的税款会计处理
  • 费用多计提了怎么办
  • 股东之间转让股权有优先购买权吗
  • mysql导入导出sql文件
  • mysql多表查询方式
  • win8怎么锁定屏幕
  • 快速删除指定位置的结点用单链表还是双链表
  • redhat系列
  • 浏览器8系统怎么打不开主页
  • linux系统的安全机制有哪些
  • win内存占用率过高
  • win7怎么修改开机启动
  • perl获取文件名
  • perl 教程
  • cocoscreator lua
  • python多进程模块
  • ubuntu20.04中文
  • listview item
  • unity延迟执行方法
  • [置顶]津鱼.我爱你
  • Android优化蓝牙
  • 群租房怎么举报电话
  • 提问:请问海淀区各税务所管辖范围都是哪里?
  • 重庆车位过户需要多久时间
  • 烟酒税收占比
  • 土地分割抵押 如何实现抵押权
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设