词袋模型与 CountVectorizer:文本也可以做特征表
📅 2026/7/17 23:29:19
👁️ 次浏览
上一课我们讲了 TF-IDF。为了把 TF-IDF 理解得更扎实这一课先回到更基础的表示方法词袋模型。词袋模型听起来有点抽象其实它的想法很朴素不管词在句子里的顺序先统计每个词出现了多少次。什么是词袋模型词袋模型的英文是 Bag of Words。它把一段文本看成一个装满词的袋子只关心袋子里有哪些词、每个词出现了几次。例如两句话我 喜欢 机器学习 机器学习 很 有用如果词表是[我, 喜欢, 机器学习, 很, 有用]那么文档词袋向量我 喜欢 机器学习[1, 1, 1, 0, 0]机器学习 很 有用[0, 0, 1, 1, 1]每个文档变成等长向量长度等于词表大小每个位置的数字就是对应词在这段文本里的出现次数。这就把文本变成了数字。词袋模型丢掉了什么词袋模型有一个明显缺点它会丢掉顺序。我 不 喜欢 这个 功能 我 喜欢 这个 功能 不如果只统计词频两句话包含的词差不多但真实语义可能完全不同。所以词袋模型不是完美的语言理解方法它更像一个简单、稳定、容易解释的文本特征表。入门阶段先掌握它很有价值因为后面的 TF-IDF、文本分类 baseline、模型评估都会建立在这个基础上。CountVectorizer 做了什么在 sklearn 里CountVectorizer就是用来做词袋特征的工具。它主要做两件事从训练文本里建立词表把每条文本转换成词频向量。fromsklearn.feature_extraction.textimportCountVectorizer# 假设文本已经分好词、用空格隔开中文项目里这一步由 jieba 完成texts[我 喜欢 机器学习,机器学习 很 有用,这个 功能 不好用,]vectorizerCountVectorizer()Xvectorizer.fit_transform(texts)print(vectorizer.get_feature_names_out())# 词表print(X.toarray())# 词频矩阵每行一个文档每列一个词词频矩阵里每一行是一个文档每一列是一个词值是这个词在该文档里的出现次数。一个要注意的细节CountVectorizer默认的token_pattern会过滤掉单个字符。中文里我很这种单字词默认会被丢弃需要保留单字时可以设token_patternr(?u)\b\w\b或者在分词阶段就控制好词长。fit_transform 和 transform 的区别这个区别很重要X_train_vecvectorizer.fit_transform(X_train_text)X_test_vecvectorizer.transform(X_test_text)训练集用fit_transform因为要从训练集里学习词表。测试集只用transform因为测试集不能参与词表学习否则就会发生数据泄漏。这和前面讲过的标准化、Pipeline 是同一个原则训练阶段学到的规则测试阶段只能拿来用不能重新学。词表大小会影响模型如果训练文本很多词表可能非常大。词表越大矩阵列数越多模型训练也会更重。常用参数有参数作用建议max_features最多保留多少个词数据量大时必设否则特征爆炸min_df过滤出现太少的词中小数据集设 2过滤只出现 1 次的词max_df过滤出现太多的词0.7 ~ 0.9 之间太常见的词没区分力ngram_range加入连续词组合(1, 2)同时取单词和双词组合例如vectorizerCountVectorizer(max_features5000,min_df2,max_df0.9,ngram_range(1,2),)这表示最多保留 5000 个特征过滤太少见和太常见的词同时加入单词和连续两个词的组合。ngram 是什么ngram_range(1, 2)表示同时考虑 unigram 和 bigram。比如文本机器 学习 很 有用unigram 是机器 / 学习 / 很 / 有用bigram 是机器 学习 / 学习 很 / 很 有用加入 bigram 后模型有机会捕捉机器 学习这种连续搭配而不是只看到机器和学习两个分散的词。词袋和 TF-IDF 的关系词袋模型输出的是词频计数缺点也由此而来顺序丢失我不喜欢你和你不喜欢我的向量完全一样高频词霸权一个词出现 100 次未必比另一个词说一次更重要维度容易爆炸10 万篇文档乘 2 万词汇就是 2 亿维矩阵稀疏矩阵能处理但内存压力大。TF-IDF 可以看成在词频基础上进一步加权当前文本里重要、全局又有区分度的词权重更高。CountVectorizer数一数每个词出现几次 TfidfVectorizer在词频基础上考虑全局区分度两者都能用于文本分类。CountVectorizer 更直观TF-IDF 往往在很多文本分类任务里效果更好。这一课先记住词袋模型是文本特征工程的第一块积木。它会把文本变成样本数 × 词表大小的矩阵每一列代表一个词或词组每个值代表它在文本里的出现次数。max_features、min_df、max_df是控制维度的三件套丢失词序和高频词霸权是它的主要弱点下一步交给 TF-IDF 修正。下一课我们把 TF-IDF 和逻辑回归接起来训练一个真正可运行的中文文本分类 baseline。在线阅读点击这里阅读博客原文原文地址https://bestsdz.xyz/posts/countvectorizer-bag-of-words/
目标: 理解如何基于 FastAPI构建高效的问答系统 API 接口 掌握 WebSocket 流式输出和 HTTP 接口的实现,优化用户交互体验 前后端交互、前端静态文件服务以及日常问候处理的集成 一、开发完RAG系统以后,怎么对外提供服务? 对外: 调用链路: 前端 -> 后端 -> RAG系统 …
📅 2026/7/17 23:28:19
本文还有配套的精品资源,点击获取
简介:用Arduino Leonardo打造的音乐游戏专用外设,自带两个带按压功能的高精度旋转编码器和十四颗独立按键,所有输入都可自由映射。设备通过标准HID协议通信,Windows/macOS/Linux系…
📅 2026/7/17 23:28:19
本项目为计算机本科毕业设计,采用 Java Spring Boot 作为后端框架,Vue.js 作为前端框架,数据库使用 MySQL。系统涵盖用户管理、商家管理、商品管理、订单管理、客服聊天管理、论坛管理、商品资讯管理、购物车等八大功能模块。配套材料包括论…
📅 2026/7/17 23:28:19
通过Garvan的Evercode WT服务,亚太地区的研究人员获得高质量单细胞测序的新选择 QIAGEN旗下公司、可扩展及普及型单细胞测序领域的领军企业Parse Biosciences今日宣布,Garvan Institute of Medical Research旗下的基因组学平台核心设施已加入其认证服务商…
📅 2026/7/18 0:27:46
NIQ最新数据显示,韩妆(K-Beauty)销售额同比增长53%,两年内增长131%。这凸显了区域美妆趋势、社交电商以及成分驱动的创新正在如何重塑全球美妆市场的增长格局。 消费者情报领域的全球领导者NIQ (NYSE: NIQ)今日发布了最新研究结果,显示韩妆已…
📅 2026/7/18 0:27:46
最近很多朋友问我,做AI漫剧不仅视角单一,细节还容易跑偏,最难受的是人物还不统一。那是因为你给AI的指令只有一张正面图,AI不知道其他细节,每个镜头就只能自由发挥。其实只需要一张简单的人物设定三视图就能解决了,那应该怎么制作呢?
我这里整理了全套提示词,想要的宝…
📅 2026/7/18 0:27:46
老板发言、产品经理画饼、程序员排期、设计师改稿、测试定时间……每一个“收到”背后,都有一份没人想写的会议纪要。
今天,我们就用 Claude 的 Skill 能力,把这些重复劳动彻底自动化。一、开不完的会,写不完的“收到”你是不是也…
📅 2026/7/18 0:27:46
搞了半天,地图缺胳膊少腿看着闹心?这篇直接教你怎么把缺失的边界补全,让你不再对着空白区域抓狂。别再问为什么有的省显示正常,有的却像被狗啃过一样。根本原因就俩:数据没对齐,或者坐标系没搞对。今天就把我踩过的坑全掏出来,让你一次看够。记得去年做项目,甲方非要个…
📅 2026/7/18 0:26:45
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 🎁…
📅 2026/7/18 0:26:45
更多请点击:
https://kaifayun.com
第一章:从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则 在Claude驱动的产品需求文档(PRD)生成实践中,原始业务意图往往以自然语言片…
📅 2026/7/18 0:00:33
更多请点击:
https://codechina.net
第一章:Cursor配置生成失效?3大隐藏陷阱4行修复代码,资深工程师连夜整理的紧急补救清单 Cursor 配置生成突然失效,是近期高频报障场景。表面看是 cursor.config.json 未更新或 LSP…
📅 2026/7/18 0:00:33
作者:钟声编辑:Mark出品:红色星际头图:智能驾驶图片据悉,国内某头部智驾公司端到端模型技术大牛Z投身创业,并且已经拿到融资。Z不仅是该头部公司内部最年轻的对标阿里P10级别技术负责⼈,更是业内…
📅 2026/7/18 0:00:33
豆包openclaw最近圈子里都在聊豆包openclaw,我也没忍住,掏腰包入手了一套。说实话,刚拿到手的时候,心里是打鼓的。毕竟市面上类似的智能硬件太多了,有的吹得天花乱坠,用起来却是一堆bug。为了不让大家的钱打水漂,我连续用了半个月。从开箱到日常高频使用,甚至故意测试它…
📅 2026/7/17 2:37:27
SQLyog 13.3.1 社区版在Windows 10/11上的完整安装与连接指南 对于刚接触MySQL数据库管理的开发者和学生来说,选择一个直观易用的图形化管理工具至关重要。SQLyog作为一款轻量级但功能强大的MySQL GUI工具,能够显著提升数据库操作的效率和体验。本文将详…
📅 2026/7/18 0:00:49
SPEC CPU 2006 跨平台基准测试深度实战:ARM/X86/MIPS 架构配置优化与结果分析方法论在当今多元化的计算架构时代,如何客观评估不同处理器平台的真实性能成为系统工程师和性能优化专家的核心挑战。SPEC CPU 2006 作为业界公认的计算密集型基准测试套件&am…
📅 2026/7/17 15:13:18
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/17 6:11:34
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/17 15:13:18
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/17 2:40:57