文本相似性实验2|学习笔记

简介: 快速学习文本相似性实验2

开发者学堂课程【高校精品课-华东师范大学 - Python 数据科学基础与实践文本相似性实验2】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1067/detail/15505


文本相似性实验2

 

内容介绍:

一、简介

二、词的相似性

三、文本相似性

 

一、简介

现在看一下中文的例子,中文数据下面有一个文件,大家应该在D盘或者E盘上面建一个目录,比如叫iPython,下面再放我们课程的名字,ipython下面可以放自己找的一些例子和项目,然后数据放在相似性数据下面;还有data程序这个文件,老师建议大家安装一个程序叫Notepad++,它就是一个编辑器,比记事本强大,然后用它打开一下,就是打开了原始数据,里面是一篇篇文章,我们把它放在data数据里面,有时候可以用它看一些数据、改代码。

前面做的国王、女王的语料数据就是text8,后面还要做的电子小说案例放在book目录下。

 

二、词的相似性

接下来看代码,加载数据simdata/data.txt,就是Python位置打开的文件的函数,要注意编码utf-8。读进来以后是jieba.cut,它就去分词,分好词的结果放在data里面,这是一个列表;join函数括号里面放的是一个列表或者原子,它把列表里的每个元素用空格装起来。现在运行一下代码,正在做jieba分词处理,因为这个数据还有内容,所以需点时间去做一下。

做好了可以显示一下data,它的内容比较多,就是把文本分成词了;内容很多,所以老师把它注释掉。

接下来把刚分好词的内容保存到文件里,再用分好词的语料去构建词向量。

如果要做词向量,一定要用分好词的语料;英文语料自然就隔开使用,不需要做处理,而中文要先分好词,用空格隔开再给word2vec.Text8函数去做语料处理,把它处理变成需要的语料模式,再去训练词向量,这个300位的词向量,需要点时间去训练一下。做好的词向量模型可以把它保存,方便以后使用。

还有另外一种保存方式,用C语言的一种支持格式——二进制的格式保存(binary=2),保存好以后可以用load加载。接下来里面显示的是经济管理学部的学科论文,看一下经济的词向量,这是300位的词向量,然后查中文的相似性。

这些就是和经济相似的。

 

三、文本相似性

接下来的实验内容是文本相似性,文本是很多词构在一起。

这里给大家介绍一个工具叫text2vec,它整个把文字转成向量,是一个文本向量化的工具;它可以做词向量、句子向量,我们关键是要用它的句子向量。

这里面的粒度可以到字词、句子、整篇文章,在text2vec里面全部把模做好了,另外它可以直接调词向量,不需要我们先训练了,因为这个工具用到的腾讯AI实验室,里面有大规模的高质量的数据,还有800万的中文词,所以它已经训练好,直接调用就可以。

如果我们想自己做,可以用gensim包里面的word2vec,它里面也有doc2vec,但平时用的不是很多,如果有兴趣可以去用一下,它可以把整篇文章、一个段落转成词向量。那么text2vec做的是一句话的词向量,它把句子里面的所有词向量做平均值,所有单词词嵌入就是词向量,它是求平均值的。

前面讲的一个中文的词向量,比如300位,那么一句话里面也分词,分完词这句话里含有很多词,但这句话的词向量还是300位,因为它是把每一个词的词向量求平均值,再判断两个句子的词嵌入(词向量)之间的相似度,就是相似度计算。

如果更复杂一点,可以用词移距离(Word Mover`s Distance),就是使两个文本间的词向量,测量其中一个文中的词向量,然后它的语义空间移到另外一个文本单词所需要的最短距离。因为向量是在空间里面,向它移动、靠近的时候需要最短距离。

相关文章
|
3天前
|
数据采集 人工智能 安全
|
12天前
|
云安全 监控 安全
|
4天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1080 151
|
18天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1750 9
|
9天前
|
人工智能 自然语言处理 API
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸
一句话生成拓扑图!next-ai-draw-io 结合 AI 与 Draw.io,通过自然语言秒出架构图,支持私有部署、免费大模型接口,彻底解放生产力,绘图效率直接爆炸。
690 152
|
11天前
|
人工智能 安全 前端开发
AgentScope Java v1.0 发布,让 Java 开发者轻松构建企业级 Agentic 应用
AgentScope 重磅发布 Java 版本,拥抱企业开发主流技术栈。
658 12
|
6天前
|
SQL 自然语言处理 调度
Agent Skills 的一次工程实践
**本文采用 Agent Skills 实现整体智能体**,开发框架采用 AgentScope,模型使用 **qwen3-max**。Agent Skills 是 Anthropic 新推出的一种有别于mcp server的一种开发方式,用于为 AI **引入可共享的专业技能**。经验封装到**可发现、可复用的能力单元**中,每个技能以文件夹形式存在,包含特定任务的指导性说明(SKILL.md 文件)、脚本代码和资源等 。大模型可以根据需要动态加载这些技能,从而扩展自身的功能。目前不少国内外的一些框架也开始支持此种的开发方式,详细介绍如下。
423 4