DL Project(总目录)
models(子目录)
存放所有模型
model1.py
1 | # 存放配置参数 |
untils.py
1 | # 存放各种工具函数 |
train.py
1 | # 损失函数 |
run.py
1 | from importlib import import_module |
About this Post
+This post is written by Kjr, licensed under CC BY-NC 4.0.
+diff --git "a/2023/11/07/\345\205\263\344\272\216\344\275\277\347\224\250SVM\350\277\233\350\241\214\345\236\203\345\234\276\347\237\255\344\277\241\345\210\206\347\261\273\347\232\204\345\233\236\351\241\276/index.html" "b/2023/11/07/\345\205\263\344\272\216\344\275\277\347\224\250SVM\350\277\233\350\241\214\345\236\203\345\234\276\347\237\255\344\277\241\345\210\206\347\261\273\347\232\204\345\233\236\351\241\276/index.html" index 9663cfa..3c70794 100644 --- "a/2023/11/07/\345\205\263\344\272\216\344\275\277\347\224\250SVM\350\277\233\350\241\214\345\236\203\345\234\276\347\237\255\344\277\241\345\210\206\347\261\273\347\232\204\345\233\236\351\241\276/index.html" +++ "b/2023/11/07/\345\205\263\344\272\216\344\275\277\347\224\250SVM\350\277\233\350\241\214\345\236\203\345\234\276\347\237\255\344\277\241\345\210\206\347\261\273\347\232\204\345\233\236\351\241\276/index.html" @@ -165,17 +165,18 @@
一个概念:词袋:一张由训练语料得到的词汇表(词典)
一个操作:在给出一篇文本后,需要把文本转换(编码)成数值,才能汇编成词典。用数值表示文本的方法有很多,例如最常见的One-Hot表示法,此外还有TF表示法、TF-IDF表示法。
文本向量化就是指用数值向量来表示文本的语义,即,把人类可读的文本转化成机器可读形式。
-如何转化成机器可读的形式?这里用到了信息检索领域的词袋模型,词袋模型在部分保留文本语义的前提下对文本进行向量化表示。
+ 文本向量化就是指用数值向量来表示文本的语义,即,把人类可读的文本转化成机器可读形式。
+ 如何转化成机器可读的形式?这里用到了信息检索领域的词袋模型,词袋模型在部分保留文本语义的前提下对文本进行向量化表示。
1 | 1 Jane wants to go to Shenzhen. |
将所有词语装进一个袋子里,不考虑其词法和语序的问题,即每个词语都是独立的。例如上面2个例句,就可以构成一个词袋,袋子里包括Jane、wants、to、go、Shenzhen、Bob、Shanghai。假设建立一个数组(或词典)用于映射匹配:
+ 将所有词语装进一个袋子里,不考虑其词法和语序的问题,即每个词语都是独立的。例如上面2个例句,就可以构成一个词袋,袋子里包括Jane、wants、to、go、Shenzhen、Bob、Shanghai。假设建立一个数组(或词典)用于映射匹配:
1 | [Jane, wants, to, go, Shenzhen, Bob, Shanghai] |
(如果是One-Hot表示则,不统计出现的次数,只统计是否出现:1 [1,1,1,1,1,0,0] 2 [0,1,1,1,0,1,1])
+如果是One-Hot表示则,不统计出现的次数,只统计是否出现:
+1 | 1 [1,1,1,1,1,0,0] |
那么上面两个例句就可以用以下两个向量表示,对应的下标与映射数组的下标相匹配,其值为该词语出现的次数:
1 | # 词典的key值: |
这两个词频向量就是词袋模型,可以很明显的看到语序关系已经完全丢失。CountVectorizer默认采用的是TF表示法,TF表示法的数值计算规则为:词语序列中出现的词语其数值为词语在所在文本中的频次,词语序列中未出现的词语其数值为0。
+ 这两个词频向量就是词袋模型,可以很明显的看到语序关系已经完全丢失。CountVectorizer默认采用的是TF表示法,TF表示法的数值计算规则为:词语序列中出现的词语其数值为词语在所在文本中的频次,词语序列中未出现的词语其数值为0。
词袋模型的构建步骤主要包括以下几个环节:
TF-IDF是NLP中一种常用的统计方法,用于评估一个词语对于一篇文档或一个语料库中的其中一篇文档的重要程度,通常用于提取文本的特征,即关键词。词语的重要性与它在文档中出现的次数成正比,但同时与它在语料库中出现的频率成反比。TF-IDF的计算如下:
+ TF-IDF是NLP中一种常用的统计方法,用于评估一个词语对于一篇文档或一个语料库中的其中一篇文档的重要程度,通常用于提取文本的特征,即关键词。词语的重要性与它在文档中出现的次数成正比,但同时与它在语料库中出现的频率成反比。TF-IDF的计算如下:
TF为词频,即一个词语在文档中的出现频率,假设一个词语在整个文档中出现了m次,而整个文档有n个词语,则TF的值为m/n。
IDF为逆文本频率,假设整个语料有n篇文档,而一个词语在k篇文档中出现,则某个单词w的IDF值为
CountVectorizer是属于常见的特征数值计算类,是一个文本特征提取方法。对于每一个训练文本,它只考虑每种词汇在该训练文本中出现的频率。CountVectorizer会将文本中的词语转换为词频矩阵,它通过fit_transform函数计算各个词语出现的次数。
CountVectorizer 类接受多个参数,用于配置文本特征提取的各种参数。以下是一些常用的参数:
CountVectorizer是属于常见的特征数值计算类,是一个文本特征提取方法。对于每一个训练文本,它只考虑每种词汇在该训练文本中出现的频率。CountVectorizer会将文本中的词语转换为词频矩阵,它通过fit_transform函数计算各个词语出现的次数。
CountVectorizer 类接受多个参数,用于配置文本特征提取的各种参数。以下是一些常用的参数:
from sklearn.feature_extraction.text import CountVectorizer
`# 创建CountVectorizer对象,配置小写化和停止词`
-vectorizer = CountVectorizer(lowercase=True, stop_words='english')
# 拟合文本数据并转化为词频矩阵
corpus = ["This is a sample sentence.", "Another example sentence.", "And one more sentence."]
X = vectorizer.fit_transform(corpus)
`# 输出词频矩阵`
-print(X.toarray())
Pipeline 机制是一种用于将多个数据处理和机器学习步骤有序组合在一起的机制,以形成一个整体工作流程。
-Pipeline 机制是一种用于将多个数据处理和机器学习步骤有序组合在一起的机制,以形成一个整体工作流程。它在机器学习中非常有用,可以简化代码、提高可读性,还可以避免一些常见的错误。在 scikit-learn(一个常用的 Python 机器学习库)中,Pipeline 由 **sklearn.pipeline.Pipeline** 类实现。
-
+1 | from sklearn.feature_extraction.text import CountVectorizer |
Pipeline 机制是一种用于将多个数据处理和机器学习步骤有序组合在一起的机制,以形成一个整体工作流程。它在机器学习中非常有用,可以简化代码、提高可读性,还可以避免一些常见的错误。在 scikit-learn(一个常用的 Python 机器学习库)中,Pipeline 由 sklearn.pipeline.Pipeline 类实现。
Pipeline 机制的关键特点包括:
1 | from sklearn.pipeline import Pipeline |
参考文章:
【NLP】词袋模型(bag of words model)和词嵌入模型(word embedding model)
@@ -261,7 +242,16 @@Next
+存放所有模型
1 | # 存放配置参数 |
1 | # 存放各种工具函数 |
1 | # 损失函数 |
1 | from importlib import import_module |
This post is written by Kjr, licensed under CC BY-NC 4.0.
+