Transformer 通关秘籍11:Word2Vec 及工具的使用

article/2025/6/29 14:50:02

将文字文本转换为词向量(word embedding)的过程中,一个非常著名的算法模型应该就是 Word2Vec 了。

相信大家或多或少都听说过,本节就来简单介绍一下 Word2Vec 。

什么是 Word2Vec ?

Word2Vec 可以非常有效的创建词嵌入向量,你可以把它理解为是一个算法模型,也可以理解为是一个工具包。

它 2013 年由 Google 推出,自问世以来,一直被广泛的应用在自然语言处理的词嵌入向量的表达过程中,它可以完成文本到词向量的映射,同时保留文本在向量空间的语义关系。

关于文本在向量空间的语义关系,可以参考10、词向量运算:queen=king-man+wowem的内容。

所以我们可以说, Word2Vec 是一个算法模型,人们利用这个模型对大量的文本数据进行训练,从而使模型可以输出训练好的词向量。

在使用 Word2Vec 模型训练时,其内部支持使用两种不同的训练算法进行训练:

    1. 连续词袋算法(Continuous Bag of Words, CBOW):该算法通过给定文本上下文单词,来预测中心词。
    1. 跳元算法(Skip-gram): 该算法通过给定文本中心词,来预测文本上下文词。

什么是上下文词和中心词呢?

假设有如下的句子:We are about to study the idea of deep learning.

如果已知 We are about to 和 the idea of deep learning,去预测 study,那么就相当于通过上下文去预测中心词,此时实用的也就是 CBOW 算法。

反过来,如果给定了单词 study,去预测句子中的其他上下文词(比如 idea),则是使用了 Skip-gram 算法。

这两种算法是 Word2Vec 中支持的两种算法,这里暂时不多介绍两种算法的细节。大家只需要知道,无论是连续词袋算法还是跳元算法,都是用来更好的预测文本中的词,以此来达到对大量单词进行语义学习的目的,从而产生更加有效的词向量。

Word2Vec 工具

Google 将 Word2Vec 进行了开源,并且提供了一套简洁可用的工具包。我们可以非常方便的使用这些工具来进行词向量相关的测试。

开源的源代码仓库 github 链接为:https://github.com/dav/ Word2Vec 。

该仓库为 C++ 源码仓库,使用前需要确保具备 C++ 源码的编译和运行环境。

如何编译?

代码下载之后,在 src 目录下,执行 ‘make’ 命令便可完成代码仓库的编译,编译生成的可执行文件会放在 bin 目录下。

在bin目录下,可以执行对应的可执行程序来测试词向量。

比如可以使用 distance程序来计算单词的相似程度。

例如,你可以执行下面的命令后,进入工具交互界面。

./distance ~/GoogleNews-vectors-negative300.bin

上述命令中的 GoogleNews-vectors-negative300.bin 是需要提前下载到本地中,是一个已经训练好的词嵌入模型(包含了词嵌入向量)文件,该文件的下载方式在10、词向量运算:queen=king-man+wowem有介绍。

需要先将其下载到本地电脑中,再进行使用。

执行完上述命令后,在交互界面输入“compute"单词。

distance 工具会输出该单词在词汇表中所处的位置,下图显示 compute 单词位于词汇表中的第 33688 的位置。
在这里插入图片描述

同时,distance 工具会给出与 compute 单词最接近的其他单词(使用余弦距离表示),比如 computation,calculate等。
在这里插入图片描述

你可以使用该工具测试其他单词。

该源码仓库完成编译后,还包含了很多其他的工具,详细的使用可以参考官方指南:https://code.google.com/archive/p/ Word2Vec /。

本节仅需要知道 Word2Vec 是Google开发的一个用来将文本转换为词向量的算法模型(工具)即可,并且该模型内置支持了两种不同的算法完成文本到词向量的转换,分别是 CBOW 和 Skip-gram 算法。

CBOW 和 Skip-gram 两种算法的细节非本专栏重点,这里就不深入介绍了,感兴趣的同学可以去百度一下。

总结一下

至此,我们把自然语言处理模型需要的预处理预备知识基本介绍完了。

这些知识包括: token 的概念,词汇表, token 转换到词向量的必要性以及一些代码演示。相信看到这里你应该对这些基础概念有了一定的了解。

事实上,以上的预备知识和操作,仅仅完成了一件事,那就是将人类可以理解的文本,转换到了高维空间的词向量。

只有将文本转换为词向量后,才可以输入给自然语言模型进行处理。

另外,对于基于 transformer 架构的模型而言,单有词向量是不够的,还需要使用位置编码来对文本信息进一步处理。这一点可以查看本节最上面的配图以了解这个过程。

只有将词向量和位置编码结合起来,才能作为真正的输入给到 transformer 架构(大模型)。

这一部分内容,为了逻辑连贯,并且更好理解,在后面介绍 transformer 技术细节时,再进行位置编码的相关介绍,主要会包括:transformer 的输入为什么需要位置编码,以及相关的算法和原理。


http://www.hkcw.cn/article/mKBqBkinrf.shtml

相关文章

数组做函数参数,嵌套调用与链式访问

文章目录 前言一、数组做函数参数二、嵌套调用和链式访问2.1 嵌套调用2.2 链式访问 前言 这一块内容是衔接上一节函数内容,从更层次分析函数之中的细节 一、数组做函数参数 在平时用函数解决问题的时候,难免会将数组作为参数传递给函数,在函…

央行降息 普通人该做什么 调整投资组合应对变化

2025年5月7日,央行宣布实施“双降”政策,“降准0.5%+ 降息0.1%”,释放长期流动性约1.2万亿元。这是继2024年9月后又一次超预期的货币政策调整。此次政策的核心目标是降低实体经济融资成本,刺激居民消费,稳定楼市,实现经济“软着陆”。“双降”政策对投资者会产生影响。主…

北京多区居民被巨响惊醒 系火流星 夜空奇观点亮京城

2025年5月31日凌晨2时51分,一颗火流星划过北京夜空。凌晨3时左右,北京通州、顺义、怀柔等多区居民在睡梦中被一声巨响惊醒,少数居民目击了漆黑夜空被“点亮”的奇观。中国科学院大学流星多站视频监测网的兴隆流星观测站成功捕捉到这次天文现象,记录下明亮的火流星照亮北京夜…

油价要涨!5月31日92号汽油价格 预计下周上调

今日最新油价调整资讯显示,5月31日的油价预计将在6月3日晚进行调整,上调幅度约为80元/吨(0.05元/升-0.07元/升)。这意味着刚刚在5月大幅下跌的油价将重新上涨。截至5月31日0时,国际原油市场的最新情况是纽约商品交易所(WTI)原油价格下跌0.44%,每桶报价60.67美元;布伦特原…

美的集团董事长方洪波再谈小米 战略上不惧竞争

5月30日下午,美的集团在佛山总部召开2024年度股东大会。今年小米在空调市场掀起低价竞争,其大家电业务一季度收入同比翻倍增长。此前,方洪波在访谈中提到“在战术上重视小米、在战略上不惧怕小米”。有投资者在美的股东大会上追问这句话的含义。方洪波解释说,家电业是高度竞…

龙舟赛上划最快的原来是救援队 去年也是他们最快

端午佳节,山东济南大明湖景区举行了一场盛大的龙舟赛,吸引了众多游客前来观赛。上午9时39分许,两只龙舟敲鼓出发进行比拼。然而比赛刚开始不久,围观人群中就传来呼声,一艘龙舟翻船了。现场目击者称,刚一开始,比赛就结束了。翻船的是落后的那只龙舟,但船员们都穿着救生衣…

古画里的端午氛围感拉满 解锁千年仪式感

端午节作为中国四大传统节日之一,在2000余年的历史长河中积累了丰富的仪式感。端午节前夕,山东博物馆通过古画和年画展示了多样的节俗。在文物鉴赏室,山东博物馆书画部研究馆员鲍艳囡展示了清朝大臣蒋溥所绘的《天中五瑞图》。这幅1米多长的画轴上,蜀葵、菖蒲、石榴花、枇杷…

“车圈恒大论”之下汽车行业谁最焦虑 负债真相解析

长城汽车董事长魏建军近期关于“汽车行业‘恒大’已经出现,只不过没爆”的言论引起了广泛关注。这一观点不仅揭示了新能源转型过程中部分企业的焦虑,也引发了对车企资产负债结构和盈利能力的深入讨论。将汽车行业简单类比为房地产行业的高杠杆模式并不准确。作为技术密集型制…

媒体人:杨瀚森第2站试训情况非常好 获积极反馈

北京时间5月31日,杨瀚森完成了NBA单独试训的第二站。据媒体人周鹏透露,杨瀚森的试训反馈非常不错,得到的消息是“非常不错!Good job!”这让人们感到踏实。在完成前两支球队的单独试训后,杨瀚森将先返回洛杉矶稍作休整,之后继续从洛杉矶出发,前往后续几支球队进行试训。…

四川通报59名医疗机构人员违规收费 廉洁整治行动展开

近期,相关部门收到关于某药企涉嫌向医生输送商业贿赂的举报信。对此,调查组迅速成立并展开调查核实工作。以下是调查处置进展情况。举报信涉及125名医疗机构人员,其中6人信息重复,1人信息不实,最终核实为118人,分布在36家医疗机构。经逐人核实,59人因参加病例收集、科普…

吉林通报李德明花千万建10个厕所 豪华公厕引争议

刚摘掉深度贫困县帽子的通榆县,时任县委书记李德明便斥资上千万元建设了10个豪华水冲公厕。日前,吉林省纪委监委公开通报了4起形式主义、官僚主义典型问题,其中就包括李德明搞劳民伤财的“形象工程”。2023年,李德明升任省农业农村厅厅长,直至2025年1月主动投案。在他主政…

乐高中国已终止与涉事博主合作 回应不友好言论争议

五月天主唱阿信与乐高品牌合作,但有网友发现,曾推广过乐高产品的博主周紫复曾发表对阿信的不友好言论,引发热议。5月30日深夜,乐高中国发布回应称,已启动调查程序,并决定立即终止与第三方合作公司的合作关系,对于涉及机构和博主永不合作。据第三方数据显示,截至5月31日…

【嵌入式Linux】zlog日志库

zlog日志库 1 简介1.1 核心特点1.2 核心概念 2 zlog日志库部署到项目工程2.1 下载zlog源码2.2 交叉编译zlog源码2.3 拷贝生成的静态库文件 3.zlog日志使用 1 简介 zlog是轻量级,高性能的C语言日志库,专为Linux/Unix系统设计(也支持Windows系统…

韩大选进入白热化阶段 谁的胜算更大 悬疑反转不断

这场韩国大选的悬疑色彩比连续剧还狗血,现在谁稳赢还真不好说。大选还有一周就揭晓谜底,表面上看似波澜不惊,实际上暗流涌动。媒体们嘴上喊着李在明胜券在握,但实际数字显示,李在明和金文洙的支持率差距已缩小到12个百分点,一顿饭的工夫可能就没了。围观群众不能掉以轻心…

马克龙到访新加坡品尝小吃 总统夜市接地气体验

马克龙携夫人结束了对印尼的访问后,前往新加坡,这是他们在东南亚访问的最后一站。在前两站的访问中,马克龙和夫人引起了网友们的广泛关注和讨论。特别是在越南时,法国夫人疑似打了马克龙一巴掌,但在抵达印度尼西亚时,两人已经和好如初,还挽着胳膊下飞机,画面十分浪漫。…

坠海漂流7小时获救男子发声 争分夺秒的救援奇迹

近日,珠海万山海域上演了一场争分夺秒的海上救援行动。5月25日,万山区海上搜救分中心接到紧急通报,称有人员穿着救生衣在海面上漂浮。万山区迅速组织救援力量前往事发海域展开搜救。经过一个多小时的努力,救援人员成功将落水男子救起。据了解,当天中午该男子划乘的皮划艇被…

马克龙对华发出不切实际威胁想干嘛 法国版特朗普?

马克龙近期公开威胁中国,声称如果中国继续购买俄罗斯石油,将对中国买家实施制裁,甚至提出征收500%的关税。这一举动引发了外界的广泛讨论,有人质疑马克龙是否想让法国变成第二个特朗普。实际上,中国买不买俄罗斯石油,并不是马克龙一句话能决定的。这样的表态只会让法国在…

“苏超”把江苏踢“散”了吗 草根足球的硬核浪漫

当苏州码农用一脚世界波绝杀无锡程序员,当徐州外卖小哥与宿迁快递员在绿茵场上展开“楚汉争霸”,这个夏天,江苏人用脚下的足球点燃了一场全网瞩目的狂欢盛宴。“苏超联赛”不仅是一场草根足球的较量,更是一次城市文化与网络热梗的深度融合,重新定义了年轻人眼中的足球文化…

207. 课程表

我们需要判断是否能完成所有指定课程的学习,其中numCourses表示课程总数,prerequisites表示先修关系(例如[0,1]表示学习课程0前需先完成课程1)。 能完成课程学习的情况: 当课程的先修关系可以形成有效的拓扑排序时&…

vue3 ElMessage提示语换行渲染

在 ElMessage.error 中使用换行符 \n 并不会实现换行&#xff0c;因为 ElMessage 默认会将字符串中的换行符忽略。要实现换行显示&#xff0c;可以使用 HTML 标签 <br> 并结合 ElMessage 的 dangerouslyUseHTMLString 选项。以下是实现换行提示的代码示例&#xff1a; i…