知识积累(四):无

news2024/11/16 2:16:06

文章目录

  • 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.coloradmin.cn/o/1508840.html

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

相关文章

Skia最新版CMake编译

运行示例:example/HelloWorld.cpp Skia: 2024年03月08日 master分支: 993a88a663c817fce23d47394b574e19d9991f2f 使用CMake编译 python tools/git-sync-depsbin/gn gen out/config --idejson --json-ide-script../../gn/gn_to_cmake.py此时output目录会生成CM…

动态规划刷题总结(入门)

目录 什么是动态规划算法 如何判断题目中将使用动态规划算法? 动态规划题目做题步骤 动态规划题目解析 泰波那契数模型 第 N 个泰波那契数 三步问题 使用最小花费爬楼梯 路径问题 不同路径 不同路径 Ⅱ 珠宝的最高价值 下降最短路径和 地下城游…

照片的动态效果怎么弄?分享一个方法快速制作

动态的照片能够吸引注意力,增强视觉效果让信息更加生动有趣。那么,想要让自己手里的照片也变成有动态效果的图片时要怎么操作呢?这时候,只需要使用动态图片制作(https://www.gif.cn/)工具-GIF中文网&#x…

基于SSM SpringBoot vue家教交流平台

基于SSM SpringBoot vue家教交流平台 系统功能 管理员登录 家长登录注册 学生登录注册 教师登录注册 个人中心 家长信息管理 学生信息管理 教师信息管理 招聘家教管理 应聘家教管理 确认招聘管理 论坛管理 系统管理 我的收藏管理 管理员管理 开发环境和技术 开发语言&#x…

畅享精酿啤酒与意式面包的简单美味

在忙碌的生活中,我们时常渴望寻找那份简单的美好。而Fendi Club啤酒与意式面包的搭配,正是这种美好体验的代表。它们以其简洁的味道和口感,成为了无数人心中的佳品。 Fendi Club啤酒,以其醇厚的口感和细腻的泡沫,成为了…

【MySQL系列 05】Schema 与数据类型优化

良好的数据库 schema 设计和合理的数据类型选择是 SQL 获得高性能的基石。 一、选择优化的数据类型 MySQL 支持的数据类型非常多,选择正确的数据类型对于获得高性能至关重要。不管存储哪种类型的数据,下面几个简单的原则都有助于做出更好的选择。 1. …

软件测试面试需要准备什么?面试有什么技巧?看完面试轻松解决

前言 无论是在校招还是社会企业招聘中,应聘者总是要经过层层的考核才能被聘用。然而,在招聘时,设置的编程以及非技术面试问题,真的有必要吗?如此就能考核出一位开发者的真实水平? 说到底就是考验你的技术以…

LuGre摩擦模型详解

文章目录 原理Matlab 实现原理

家用洗地机如何挑选?介绍几款不错的适用型号

面对繁重的家务清洁,洗地机悄然走进了我们的生活,它以智能的科技与卓越的性能,高效地清洁每一个角落,带来前所未有的居家体验。这不仅是一种清洁工具的革新,更是对舒适生活品质的不懈追求。接下来,就让我们…

蓝桥杯练习系统(算法训练)ALGO-977 P0805大数乘法

资源限制 内存限制:256.0MB C/C时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s 当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的…

计算机网络-第5章 运输层(1)

主要内容:进程之间的通信与端口、UDP协议、TCP协议、可靠传输原理(停止等待协议、ARQ协议)、TCP报文首部、TCP三大题:滑动窗口、流量控制、拥塞控制机制 5.1 运输层协议概述 运输层向它上面的应用层提供通信服务,真正…

SpringCloud(21)之SpringCloud Alibaba Nacos实战应用

一、Nacos安装 1.1 Nacos概述 Nacos是Alibaba微服务生态组件中的重要组件之一,主要用它实现应用的动态服务发现、配置管理、 服务管理。Nacos discovery alibaba/spring-cloud-alibaba Wiki GitHub Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简…

鸿蒙开发(四)-低代码开发

鸿蒙开发(四)-低代码开发 本文主要介绍下鸿蒙下的低代码开发。 鸿蒙低代码是指在鸿蒙操作系统进行应用开发时,采用简化开发流程和减少编码量的方式来提高开发效率。 1:开启低代码开发 首先我们打开DevEco Studio .然后创建工程。 如图所示&#xff…

设计模式:软件开发的秘密武器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

升级ChatGPT4.0失败的解决方案

ChatGPT 4.0科普 ChatGPT 4.0是一款具有多项出众功能的新一代AI语言模型。以下是关于ChatGPT 4.0的一些关键特点和科普内容: 多模态:ChatGPT 4.0具备处理不同类型输入和输出的能力。这意味着它不仅可以接收文字信息,还能处理图片、视频等多…

RESTful API学习

RESTful API REST(英文:Representational State Transfer,简称REST,直译过来表现层状态转换)是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和…

手把手教使用静默 搭建Oracle 19c 一主一备ADG集群

一、环境搭建 主机IPora19192.168.134.239ora19std192.168.134.240 1.配置yum源 1.配置网络yum源 1.删除redhat7.0系统自带的yum软件包; rpm -qa|grep yum >oldyum.pkg 备份原信息rpm -qa|grep yum|xargs rpm -e --nodeps 不检查依赖,直接删除…

让Putty支持Tab页(多连接管理)

让Putty支持Tab页(多连接管理) 1 介绍2 PuTTY缺陷3 支持Tab页4 支持用户名和密码保存 1 介绍 PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。PuTTY为一开放源代码软件,主要由Simon Tatham维护,使用MIT licence授权…

定制红酒:定制红酒的预算控制与价值体现

在云仓酒庄洒派,云仓酒庄洒派理解消费者对于定制红酒的预算控制和价值体现的关注。因此,云仓酒庄洒派致力于为消费者提供品质、性价比的定制红酒服务。 首先,云仓酒庄洒派明确定制红酒的预算范围。在了解消费者的预算要求后,云仓酒…

nginx禁止国外ip访问

1.安装geoip2扩展依赖 yum install libmaxminddb-devel -y 2.下载ngx_http_geoip2_module模块 https://github.com/leev/ngx_http_geoip2_module.git 3.编译安装 ./configure --add-module/datasdb/ngx_http_geoip2_module-3.4 4.下载最新数据库文件 模块安装成功后,还要…