知识积累(四):无

文章目录

  • 1. KL散度
  • 2. GELU 激活函数
  • 3. 向量运算
  • 4. bert
    • 4.1 词嵌入
    • 4.2 cross-encoder 模型
    • 4.3 bert 架构
    • 4.4 bert 池化操作
  • 5. Fid 模型(Fusion-in-Decoder)
  • 6. 多分类损失函数
    • 6.1 交叉熵损失
    • 6.2 softmax 损失
  • 7. t-sne
  • 8. NDCG
  • 参考资料



1. KL散度

衡量两种分布之间的相似程度。
KL 散度始终大于等于 0.
两个分布越接近 KL 散度越小,两个分布相同,KL散度为0 .

2. GELU 激活函数

3. 向量运算

点乘(dot product) / 内积:结果是个数字。
在这里插入图片描述
使用点积计算相似度与使用余弦相似度相比,可能有计算方面的优势。

Hadamard product:
同一位置元素相乘,结果还是向量 / 矩阵

Element -wise Multiplication / Element-wise product
两向量同一位置元素相乘,结果还是向量,相比于点积缺少了求和的过程

4. bert

4.1 词嵌入

Word embedding(词嵌入)是一种将单词映射到高维空间的技术,通过这种映射,单词之间的语义关系可以在空间中得到体现。换句话说,word embedding 将每个单词表示为一个向量,这个向量在空间中的位置和其他单词的位置反映了它们之间的语义关系。因此,word embedding 可以被认为是“显式地表达每个单元的语义”,因为通过这种表示,我们可以直观地看到每个单词的语义特征,而不需要其他的显式规则或指导。

4.2 cross-encoder 模型

Cross-encoder 模型通常
1)使用 word embedding 来表示每个单词或 token 的语义
2)并使用 attention 机制来捕捉文本之间的细粒度语义匹配。
一个例子是 BERT(Bidirectional Encoder Representations from Transformers),它可以被认为是一个 Cross-encoder 模型。
在 BERT 中,输入文本被转换成 token,并通过预训练过的 word embedding 层(通常是 WordPiece 或者 Byte Pair Encoding)将每个 token 映射到高维空间中的向量表示。这些向量包含了每个 token 的语义信息。然后,BERT 使用多层的 Transformer 模型来进行双向编码(即通过自注意力机制来捕捉 token 之间的依赖关系),以更好地理解整个文本的语义。
在 fine-tuning 阶段,BERT 可以被用作 Cross-encoder 模型,通过在预训练基础上进行微调来完成特定的任务,比如文本分类、问答等。在这个过程中,BERT 使用 attention 机制来描述 token 之间的语义匹配,从而提高模型在特定任务上的性能。

4.3 bert 架构

当谈论 BERT 的框架时,可以将其分为以下几个主要部分:
1)输入嵌入层(Input Embedding Layer):
将输入文本中的每个单词或 token 映射为高维向量表示。通常采用 WordPiece 或 Byte Pair Encoding(BPE)等子词级别的表示方式。
这一层的输出是每个 token 的词嵌入(word embedding)向量。
2)Transformer 编码器(Transformer Encoder):
由多个 Transformer 编码器堆叠而成。
每个 Transformer 编码器由多头自注意力机制(Multi-Head Self-Attention)和前馈神经网络(Feedforward Neural Network)组成。
用于捕捉输入文本中的上下文信息和语义关系。
3)特定任务的输出层(Task-specific Output Layer):
在预训练模型中,这部分通常被省略。
在微调或 fine-tuning 阶段,会根据具体的任务添加相应的输出层,如文本分类、命名实体识别、问答等。
在这个框架中,输入嵌入层负责将原始文本中的 token 映射为向量表示,Transformer 编码器负责对这些向量进行编码以捕捉语义信息,而特定任务的输出层则根据具体的任务类型对模型进行定制化的调整。

4.4 bert 池化操作

1)直接采用CLS位置的输出向量代表整个句子的向量表示
2)MEAN策略,计算各个token输出向量的平均值代表句子向量(平均池化)
3)MAX策略,取所有输出向量各个维度的最大值代表句子向量

5. Fid 模型(Fusion-in-Decoder)

将 question 和候选 passage 经过 encoder 得到向量,concat 之后放到 decoder,然后生成答案。
缺点:受到 passage 数量的限制,数量阅读,concat得到的向量就越长。

6. 多分类损失函数

6.1 交叉熵损失

对于多分类的交叉熵,label为 0 的位置,损失为 0,所以最终就是看 label=1 处的 -log(y预测)的值

6.2 softmax 损失

7. t-sne

降维的算法,高维相似的,降到低维应该相近。
https://blog.csdn.net/sinat_20177327/article/details/80298645

8. NDCG

CG:不考虑位置,计算返回结果的好坏
DCG:考虑位置关系
NDCG:DCG / IDCG,实际返回除以返回的最理想情况

参考资料

【1】KL 散度:https://blog.csdn.net/weixin_42521185/article/details/124364552
【2】glue:https://zhuanlan.zhihu.com/p/394465965
【3】向量点乘:https://zhuanlan.zhihu.com/p/359975221
逐元素相乘:https://blog.csdn.net/My_Communication/article/details/120987163
【4】bert:来自chatgpt
bert 池化:https://www.cnblogs.com/gaowenxingxing/p/15005007.html
【5】Fid 模型:https://zhuanlan.zhihu.com/p/564043932
【6】softmax:https://blog.csdn.net/u014380165/article/details/77284921
【7】NDCG:
概念:https://zhuanlan.zhihu.com/p/431704675
举例:https://zhuanlan.zhihu.com/p/474423793

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/737708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【开发】JavaWeb开发中如何解析JSON格式数据

目录 前言 JSON 的数据类型 Java 解析 JSON 常用于解析 JSON 的第三方库 Jackson Gson Fastjson 使用 Fastjson Fastjson 的优点 Fastjson 的主要对象 JSON 接口 JSONObject 类 JSONArray 类 前言 1W:什么是JSON? JSON 指 JavaScrip t对象表…

打印前端代码

打印定义 <things-unit-web-print id"web-print" template-name"[[templateName]]" template-data"[[templateData]]"></things-unit-web-print> 模板名称 this.templateName "orderwork01"; 模板参数 this.templateD…

业界主流数据加速技术路线

计算存储分离已经成为云计算的一种发展趋势。在计算存储分离之前&#xff0c;普遍采用的是传统的计算存储相互融合的架构&#xff0c;但是这种架构存在一定的问题&#xff0c;比如在集群扩容的时候会面临计算能力和存储能力相互不匹配的问题。用户在某些情况下只需要扩容计算能…

交流负载箱的特点和优势有哪些?

交流负载箱广泛应用于电力系统、新能源、轨道交通、航空航天等领域。它具有以下特点和优势&#xff1a; 1. 灵活性高&#xff1a;交流负载箱可以根据实际需求&#xff0c;调整输出电流、电压、功率等参数&#xff0c;以满足不同场景下的测试需求。同时&#xff0c;它还可以实现…

代码随想录算法训练营Day42 | LeetCode1049. 最后一块石头的重量 II、LeetCode494. 目标和、LeetCode474.一和零

LeetCode1049. 最后一块石头的重量 II 这道题难点在于如何转换成背包问题&#xff0c;其实和上一题和相等子集合基本一样&#xff0c;尽量把石头分成两个重量相等的集合&#xff0c;那么在碰撞之后和就是最小的&#xff0c;石头的重量也可以当作石头的价值&#xff0c;代码也基…

行为型模式

行为型设计模式是面向对象编程中的一种模式&#xff0c;它关注的是对象之间的通信和协作&#xff0c;以实现特定的行为或任务。这些模式通常涉及到对象之间的消息传递、方法调用和协同工作&#xff0c;以达到更好的灵活性和可维护性。 行为型模式用于描述程序在运行时复杂的流程…

App自动化测试之Appium 环境搭建保姆级教程(全网最全)

前言 APP自动化测试运行环境比较复杂&#xff0c;稍微不注意安装就会失败。我见过不少朋友&#xff0c;装了1个星期&#xff0c;Appium 的运行环境还没有搭好的。 搭建环境本身不是一个有难度的工作&#xff0c;但是 Appium 安装过程中确实存在不少隐藏的比较深的坑&#xff…

低代码平台如何选型 盘点国内外主流低代码开发平台

随着数字化转型的加速&#xff0c;低代码开发平台作为一种新型软件开发方式&#xff0c;受到了广泛关注。国内低代码市场也呈现出蓬勃发展的态势&#xff0c;各种低代码平台如雨后春笋般涌现。本文将对国内低代码平台进行盘点&#xff0c;以帮助企业和开发者更好地了解市场情况…

strstr函数、chdir函数、access函数、strdup函数的介绍

1、strstr函数 strstr 是 C 语言中的一个字符串处理函数&#xff0c;用于在一个字符串中查找子字符串的第一次出现。 函数原型 char *strstr(const char *haystack, const char *needle); haystack&#xff1a;要在其中搜索的字符串。needle&#xff1a;要查找的子字符串。 函…

如何正确选择国外服务器的带宽和线路呢?

国外大带宽服务器是一种提供高带宽、高速网络连接和良好稳定性的服务器&#xff0c;但在中国使用这类服务器可能涉及到违反法律法规的风险。因此我无法为你提供相关帮助。接下来和源库一起了解如何正确选择国外服务器的带宽和线路呢? 考虑目标用户的地理位置。如果目标用户主要…

Facebook、亚马逊账号如何养号?

之前我们讨论过很多关于代理器的问题。它们的工作原理是什么?在不同的软件中要使用那些代理服务器?这些代理服务器之间的区别是什么?什么是反检测浏览器等等。 除了这些问题&#xff0c;相信很多人也会关心在使用不同平台的时代理器的选择问题。比如&#xff0c;为什么最好…

题目 2159: 区间合并

题目描述: 给定 n 个闭区间 [ai; bi]&#xff0c;其中i1,2,...,n。任意两个相邻或相交的闭区间可以合并为一个闭区间。例如&#xff0c;[1;2] 和 [2;3] 可以合并为 [1;3]&#xff0c;[1;3] 和 [2;4] 可以合并为 [1;4]&#xff0c;但是[1;2] 和 [3;4] 不可以合并。 我们的任务是…

【TypeScript系列】函数进阶

函数进阶 函数是任何应用程序的基本构建块&#xff0c;它们可以是本地函数、从另一个模块导入的函数或者类的方法。它们也是值&#xff0c;并且与其他值一样&#xff0c;TypeScript 有很多方法来描述函数的调用方式。让我们来学习如何编写用于描述函数的类型。 函数类型表达式…

错误票据 刷题笔记

开数组 读入数据 记录最小值和最大值 每次读入x; 让a[x]; 从最小值开始 向上扫 当扫到a[x]0时候为断号 扫到a[x]>1为重号&#xff1b; 该题的小技巧 未知长度的数据的读入方式 1.首先在头文件敲上 #include<sstream> #include<string> #include<…

校园外卖创业中的信息差,了解这些创业不迷路

外卖已经成为大学生日常生活的重要组成部分&#xff0c;但大部分高校对外卖都有着严格的管理&#xff0c;外卖取餐不便、配送时间过长、拿错餐等问题频出&#xff0c;基于此校园外卖创业成了高校市场的热门项目。 本文就校园外卖创业中存在的信息差展开分析&#xff0c;帮你理…

深入理解C语言中的枚举

目录 1. 枚举的定义 2. 枚举常量的赋值 3. 枚举的使用示例 4. 注意事项 在C语言中&#xff0c;枚举&#xff08;Enum&#xff09;是一种用户定义的数据类型&#xff0c;用于定义一组具名的整型常量。枚举常常用于提高代码的可读性和可维护性&#xff0c;使程序更易于理解。…

window Zookeeper 启动;

文章目录 前言一、Zookeeper 介绍&#xff1a;二、window 使用&#xff1a;2.1 下载&#xff1a;2.2 启动2.3 连接&#xff1a; 总结 前言 本文对window Zookeeper zk 启动 进行介绍&#xff1b; 一、Zookeeper 介绍&#xff1a; ZooKeeper 是一个开源的分布式协调服务&#…

mac 下redis

安装 Redis brew install redis 安装完成后&#xff0c;我们可以使用以下命令来确认 Redis 是否正确安装&#xff1a; redis-cli ping 启动 Redis redis-server 后台启动 Redis&#xff0c;可以使用以下命令&#xff1a; redis-server --daemonize yes 指定配置文件启动…

MongoDB的count() 统计文档数量非常慢

在MongoDB中&#xff0c;count()函数用于统计文档的数量。但是count()函数通常不会使用索引来计算文档数量&#xff0c;而是扫描集合中的文档来计数。当数据量较大的时候&#xff0c;就不适合使用了。 解决方案&#xff1a; 1、使用聚合框架&#xff08;aggregation framewor…

python 运行环境(Docker 容器)

Python环境标准软件基于Bitnami python 构建。当前版本为3.12 配置 运行你的Python脚本 Python 映像的默认工作目录是/app. 您可以在此处从主机挂载一个包含 Python 脚本的文件夹&#xff0c;并使用该python命令正常运行它。 docker run -it --name python -v /path/to/app…