【机器学习300问】58、什么是词袋模型和N-gram模型?

词袋模型(Bag of Words, BoW)和N-gram模型主要用于早期的自然语言处理任务,上文中我介绍了机器是如何读懂文本的四个阶段,这篇文章带大家来看看在不同阶段中会用到的两个模型------词袋模型和N-gram模型。如果没有读过我之前的文章,可以先去看看哦!

【机器学习300问】57、机器是如何读得懂文本数据的呢?http://t.csdnimg.cn/QJPqB

一、词袋模型

最基本的文本表示模型就是词袋模型,这个模型把一段文本看作一个装满了单词的袋子,袋子中不考虑单词出现的顺序和语法结构,只关注每个单词出现的频率(或是否出现)。

(1)具体步骤

具体来说,就是将整段文本以单词为最小单位切分开,一整篇文章可以表示成一个长向量,向量中的每个维度代表一个单词,而该维度的值则反映了这个词在原文中的重要程度(也就是词频)。步骤如下:

  1. 分词(Tokenization):将文本分割成单个的单词或术语。
  2. 词频统计(Term Frequency):计算每个词在文本中出现的次数,形成词频直方图。
  3. 特征选择与加权:可以选择仅保留最常见的词汇(停用词过滤),并对某些重要性较高的词给予更高的权重,常见的加权方法有TF-IDF(Term Frequency-Inverse Document Frequency)。
  4. 向量化(Vectorization):将文本转化为向量形式,每个维度对应一个词汇,值代表该词汇在文档中的统计值(例如词频、TF-IDF值等)。

【注】术语(Terminology)是在某一特定学科领域或专业背景下使用的、具有特殊意义的词汇或短语。比如在医学领域,"白细胞"是对一类特定血细胞的术语,在法律领域,"合同法"是一个法律术语,在数学领域,"正弦"和"余弦"是数学术语。

(2)TF-IDF值

TF-IDF值是用来计算这个词在原文中的重要程度的(权重)。TF-IDF公式由两部分组成,公式如下:

① 词频(TF)

TF(t,d) = 特定词条t在文档d中出现的次数 / 文档d中词条总数

② 逆文档频率(IDF)

其中df(t)是包含单词t的文章总数,n是文章总数。加1是为了避免分母为0,即避免在所有文档中都没有出现过的词带来的问题。

③ TF-IDF权重

直观的解释是,如果一个单词在非常多的文章中都出现过,那么它可能是一个比较通用的词汇,对于区分某篇文章特殊语义的贡献较小,因此对权重做一定惩罚。在计算时,每个词条的TF-IDF值都会被计算出来,然后可以用于表示文档d在词条t上的重要性。越高的TF-IDF值表示词条在文档中越重要。

二、N-gram模型

(1)词袋模型的局限性

将文章仅仅划分成单词级别有时存在局限性,比如"look up"代表查阅的意思,但如果拆成2个独立的单词就会丧失原有的含义。词袋模型的局限性:忽视单词之间的语法关系和语义搭配、忽视上下文信息、丢失情感色彩和语气等等问题。

于是聪明的人们想到了可以将连续的n个单词(n<N)组成词组(N-gram)也当做一个独立的特征放到向量中去,构成N-gram模型。另外同一个词可能会有词性变化,却拥有相似的含义。在实际应用中,一般会对单词进行词干抽取处理,将不同词性的单词统一成同一个词干的形式。

(2)N-gram模型的定义

在一个文本序列中,一个N-gram是由连续N个项组成的序列。如果N=1,那么就是Unigram(一元模型),包含单独的词或字符;如果N=2,就是Bigram(二元模型),包含相邻的两个词或字符对;N=3时,是Trigram(三元模型),以此类推。

N-gram模型通过计算词语或字符序列在给定上下文中的联合概率来捕捉文本数据中的语言规律。N-gram模型的核心概念是依据马尔可夫假设,即一个词出现的概率仅依赖于它前面有限个数(N)的词。

相关推荐
管二狗赶快去工作!2 分钟前
体系结构论文(五十四):Reliability-Aware Runahead 【22‘ HPCA】
人工智能·神经网络·dnn·体系结构·实时系统
AI绘画君11 分钟前
Stable Diffusion绘画 | AI 图片智能扩充,超越PS扩图的AI扩图功能(附安装包)
人工智能·ai作画·stable diffusion·aigc·ai绘画·ai扩图
AAI机器之心13 分钟前
LLM大模型:开源RAG框架汇总
人工智能·chatgpt·开源·大模型·llm·大语言模型·rag
Evand J34 分钟前
物联网智能设备:未来生活的变革者
人工智能·物联网·智能手机·智能家居·智能手表
HyperAI超神经43 分钟前
Meta 首个多模态大模型一键启动!首个多针刺绣数据集上线,含超 30k 张图片
大数据·人工智能·深度学习·机器学习·语言模型·大模型·数据集
sp_fyf_20241 小时前
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-03
人工智能·算法·机器学习·计算机视觉·语言模型·自然语言处理
新缸中之脑1 小时前
10个令人惊叹的AI工具
人工智能
学步_技术1 小时前
自动驾驶系列—线控悬架技术:自动驾驶背后的动力学掌控者
人工智能·机器学习·自动驾驶·线控系统·悬挂系统
DogDaoDao2 小时前
【预备理论知识——2】深度学习:线性代数概述
人工智能·深度学习·线性代数
牛哥带你学代码2 小时前
交叠型双重差分法
人工智能·深度学习·机器学习