Gensim学习
来源:互联网 发布:网络安全产品分类 编辑:程序博客网 时间:2024/06/07 04:57
本文属本人理解和感悟,详情请参见https://radimrehurek.com/gensim/intro.html
TF-IDF : term frequency-inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF指的是词频,IDF指的是逆向文件频率。通俗的说,它是一种统计方法,用来评估一字词对于一个文件集或者一个语料库中的一份文件的重要程度,字词的重要性会随着他在文件中出现的次数成正比增加,同时也会随着他在语料库中出现的频率成反比下降。TF-IDF的主要思想是如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
特征
内存独立
- 不需要把整个训练语料库都放到RAM中(意味着他可以处理大型的,网络级全集)
- 高效实现了几个特别流行的向量特征算法,包括TF-IDF,分布式增量型的Latent Semantic Analysis,Latent Dirichlet Allocation(LDA)或者Random Projection;而且想要添加新的算法真的很容易!(???)
- 几种流行的数据格式的I/O封装器和转换器
- 文档的相似性查询
核心概念
Corpus(语料库)
数字文件(纯文本)的集合,这个集合用来自动推断文章的结构或者标题等信息。所以他也被称作训练语料库。被推断出来的潜在的结构将会用在后来推断新的文档上面。这个过程中没有类似于标记文档等的人工干预。
vector(向量)
在VSM(Vector Space Model)中,每个文档都用一系列标记来代替。举个例子,我们的特征由问题对来决定:
1.“猪”这个单词在文章中出现了多少次?0次
2.文章中有多少段落?2段
3.文章用了多少种字体?5种
所以这篇文章就表示为(1,0.0)(2,2.0)(3,5.0),如果我们事先知道了所有的问题,我们可以把他简化为(0.0,2.0,5.0),这个答案的序列就可以称作vector。注意,只有答案是实数的问题才可以。
对于每个文档来说问题都是一样的,所以我们直接观察两个文档的vector,我们希望得到一个这样的结论:如果两个vector中的数据相似那么他们对应的源文档也是相似的。当然,实际情况中这取决于我们选择的问题是好是坏。
Sparse Vector(稀疏向量)
由于很多问题的答案都是0.0,所以为了节约空间,我们把其中的0都省略了,只写成(2,2.0),(3,5.0)。由于我们事先知道问题,所以空着的特征我们都默认为0。
Gensim并没有事先规定任何特定的语料库的格式。例如((((2,2.0),(3,5.0)),((0,1.0),(3,1.0))))是两个文件的语料库,每个都省略了两个0。
Model(模型)
我们这里的模型是一个抽象的概念,指的是一个文档到另一个文档的转化。在Gensim中文档是由向量代替的,所以模型就是两个向量之间的转换关系,具体的细节是从语料库中学习得到的。
例如,假设这个转换是从单词出现次数到有权重的单词计数之间的转换,也就是说频繁出现的单词会被discounted,罕见的单词会被promoted。每个具体的单词的权重是由他在语料库中的(相对出现频率)决定的。当我们运用这个模型时,就会将包含原始计数的向量转换成另一个包含权重计数的向量
全集和向量空间
- Gensim学习
- gensim学习之Dictionary
- gensim python 学习
- Gensim学习笔记
- GENSIM
- GENSIM
- gensim
- gensim学习笔记之基本概念
- gensim-5个学习阶段
- gensim学习之corpora.Dictionary
- Gensim学习笔记-2-理解Gensim中的Corpus对象
- Gensim学习笔记-1--理解corpora.Dictionary
- 深度学习:使用 word2vec 和 gensim
- Gensim学习笔记-3--理解Topics和Transformation
- gensim学习笔记(一)- Vector space model
- gensim学习笔记(三)- 计算文档之间的相似性
- 深度学习:基于 Gensim 的 Yelp 评论文本分类实例
- 深度学习 —— 使用 gensim 实现 word2vec
- 交换两个数
- 深入探究C++的new/delete操作符
- 利用Pandas读取文件路径或文件名称包含中文的csv文件
- mapreduce-常见的inputformat实现类和outputformat实现类
- ionic侧拉
- Gensim学习
- 一个整数的各位数之和
- 列指针遍历二维数组(简单粗暴)
- 百度面试题
- Windows下登录smtp服务发送邮件
- Fragment详解
- Mac adb 命令配置
- CoreJava_IO
- php在win下操作telnet发邮件