Embedding And Word2vec

Embedding与向量数据库:

Embedding 简单地说就是 N 维数字向量 ,可以代表任何东西,包括文本、音乐、视频等等。要创建一个Embedding有很多方法,可以使用Word2vec,也可以使用OpenAI 的 Ada。创建好的Embedding,就可以存入向量数据库中

这里举个例子,比如"你好",用W2做Em后,可以表示为0.1,0.5,0.7,而"嗨"用W2做Em后,可以表示为0.2,0.5,0.6,我们可以使用余弦相似度的方法来计算他们的相似度:

Cosine Similarity(A,B) = A·B / |A|*|B|,其中A和B分别表示两个不同维度的embedding,|A|和|B|分别表示A和B的模长

余弦相似度的值越接近1,表示两个向量的方向越接近,即两个embedding越相似。大概就如下图所示

word2Vec:

  • Word2Vec是语言模型中的一种,它是从大量文本预料中以无监督方式学习语义知识的模型,被广泛地应用于自然语言处理中。
  • Word2Vec是用来生成词向量的工具,而词向量与语言模型有着密切的关系。
  • Word2Vec是轻量级的神经网络,其模型仅仅包括输入层、隐藏层和输出层,模型框架根据输入输出的不同,主要包括CBOW和Skip-gram模型

CBOW:

就是"完形填空",知道词w上下文的情况下,预测w是什么词。

1.简单CBOW,输入一个词,预测输出一个词

从上图可以看出,实际上是很简单的一个BP神经网络,输入就是一个一维的向量,然后和第一个权重矩阵w进行乘法,获取隐含层的值h,然后h再和第二个权重矩阵W',相乘后得到输出(有多少个字,就有多少种输出),最后的输出经过softMax函数,就可以得到每个字的概率,概率最大的,就是我们预测的字。

2.复杂CBOW,输入多个词,预测一个词

和simple CBOW不同之处在于,输入由1个词变成了C个词,每个输入到达隐藏层都会经过相同的权重矩阵W,隐藏层h的值变成了多个词乘上权重矩阵之后加和求平均值。

3.CBOW的训练

CBOW模型的训练目标是最大化给定上下文时中心单词出现的概率,即最大化yt。这等价于最小化交叉熵损失函数

交叉熵损失函数可以通过反向传播算法来求导,并通过随机梯度下降法来更新参数。参数包括输入层到隐藏层之间的权重矩阵W(大小为V×N),以及隐藏层到输出层之间的权重矩阵U(大小为N×V)。

Skip-gram Model:

Skip-gram model是通过输入一个词去预测多个词的概率。输入层到隐藏层的原理和simple CBOW一样,不同的是隐藏层到输出层,损失函数变成了C个词损失函数的总和,权重矩阵W'还是共享的

相关推荐
jinggongszh3 小时前
使用AI协同开发产品条码规则功能——从“理解方案、原型、接口文档”到“落地真实前端代码”
前端·人工智能·mes系统·mes工程架构
宋哥转AI3 小时前
深入理解 AI Agent · MEMORY #02:记忆的工程机制
人工智能·agent·ai编程
一名普通的电源工程师3 小时前
WRF2424S‑3WR2 适配优选 钡特电源 VF3‑24S24S|3W 工业 DC‑DC 模块电源选型拆解
人工智能·电源模块·工业电源
野三关彭于晏3 小时前
Agent 时代,如何用 AI 重塑教育信息化
人工智能·agent
哔哩哔哩技术3 小时前
IndexTTS 2.5 让声音跨越语言
人工智能
Mr_凌宇3 小时前
codex开启1M上下文
人工智能·程序员
AI英德西牛仔3 小时前
豆包导出 pdf 颜色不一样怎么办,选用 AI 导出鸭优化文档导出,结合行业白皮书数据解析色彩失真成因
人工智能·ai·chatgpt·pdf·deepseek·ai导出鸭
神奇小汤圆4 小时前
RAG检索优化实战:从67%到92%,我做了这4步
人工智能
老司机张师傅4 小时前
让 AI 之间自动对话:基于 TRAE Solo 的多智能体团队协作系统设计与实现
人工智能·aiaitrae
一知半解仙4 小时前
大国博弈与机器人纪元:我们正站在怎样的历史拐点?
大数据·人工智能·机器人