文本分析之gensim处理文本【语料库与词向量空间】
共 3260字,需浏览 7分钟
·
2021-06-01 14:01
文章源自【字节脉搏社区】-字节脉搏实验室
作者-S0u1
扫描下方二维码进入社区:
文本分析是指对文本的表示及其特征项的选取;文本分析是文本挖掘、信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息。文本(text),与 讯息(message)的意义大致相同,指的是由一定的符号或符码组成的信息结构体,这种结构体可采用不同的表现形态,如语言的、文字的、影像的等等。文本是由特定的人制作的,文本的语义不可避免地会反映人的特定立场、观点、价值和利益。因此,由文本内容分析,可以推断文本提供者的意图和目的。
首先我们会用到jieba、gensim
jieba 是目前最好的 Python 中文分词组件,它主要有以下 3 种特性
支持 3 种分词模式:精确模式、全模式、搜索引擎模式
支持繁体分词
支持自定义词典
1 |
|
Gensim是一款开源的第三方Python工具包,用于从原始的非结构化的文本中,无监督地学习到文本隐层的主题向量表达。
支持流式训练,并提供了诸如相似度计算,信息检索等一些常用任务的API接口
1 |
|
基本概念
语料:一组原始文本的集合,用于无监督地训练文本主题的隐层结构。语料中不需要人工标注的附加信息。在Gensim中,Corpus通常是一个可迭代的对象(比如列表)。每一次迭代返回一个可用于表达文本对象的稀疏向量。
向量:由一组文本特征构成的列表。是一段文本在Gensim中的内部表达。
稀疏向量:通常,我们可以略去向量中多余的0元素。此时,向量中的每一个元素是一个(key, value)的元组
模型:是一个抽象的术语。定义了两个向量空间的变换(即从文本的一种向量表达变换为另一种向量表达)。
1 2 3 4 |
|
主要使用统计学的词向量转化。在进行中文的处理时需要提前进行分词,有时候还需要设置自己的专属名词以保证分词的准确性。这个不是重点,假如我们已经有了一个处理好的中文分词的文档语料。在此基础上进行后续操作。
将对应得text转化二位的list数据,以方便gensim生成向量
1 2 3 4 5 6 |
|
将分词之后的数据转化为字典文件
1 2 3 |
|
这个字典有着非常重要的作用,每一个词都有一个固定的id,可以使用下面的代码进行查询
1 |
|
为了字典后续的应用可以将字典存储成文本文件
1 |
|
同时也可以将生成的词袋模型保存起来
1 2 |
|
通知!
公众号招募文章投稿小伙伴啦!只要你有技术有想法要分享给更多的朋友,就可以参与到我们的投稿计划当中哦~感兴趣的朋友公众号首页菜单栏点击【商务合作-我要投稿】即可。期待大家的参与~
记得扫码
关注我们