博客

  • 简单长卷积用于序列建模的详细解析

    在序列建模中,我们一直在研究如何获得良好的性能,并开发了新的系统技术和深度学习架构。今天,我们将介绍一个简单的基准线方法,它可以取得出人意料的好效果:只需使用与输入序列相同大小的长卷积!事实证明,我们只需要简单的正则化,卷积就可以与复杂的序列模型(如S4)在Long Range Arena和文本建模等基准测试中相媲美。[1]

    长卷积的正则化:
    我们首先提出了一个问题:如果将SSMs(State Space Models)替换为长卷积,会发生什么?代码非常简单,我们可以使用FFT卷积以O(NlogN)的时间复杂度计算长卷积(而不是PyTorch的Conv1D中的O(N^2))。然而,如果在Long Range Arena等基准测试上尝试这种方法,你会发现性能落后于SSMs。[1]

    为什么会这样呢?如果你可视化学习到的卷积核,你会发现一个潜在的答案:长卷积核非常不平滑和嘈杂!为了解决这个问题,我们发现只需应用一个简单的正则化操作——Squash操作——到卷积核权重上即可。这个操作非常简单,只需要一个超参数λ。如果在训练过程中应用这个操作,你会得到在时间域上更稀疏、在频率域上更平滑的卷积核。在Long Range Arena基准测试上,这个小改变就足以与SSMs的性能相匹配。[1]

    长卷积的应用:
    我们进一步评估了长卷积在图像分类、文本建模和脑fMRI分析等领域的性能,并发现长卷积在所有这些领域都表现出色。特别是在文本建模中,我们将H3层中的SSMs替换为卷积,发现这个新的H3-Conv模型在PILE数据集上的性能与H3相当,并且优于Transformers。[1]

    未来展望:
    我们的论文中还包括更多关于长卷积在其他领域的评估,例如图像分类和脑fMRI分析等有趣的应用。我们还开发了一些新的系统优化方法,以提高长卷积的运行时性能。此外,我们还发现了长卷积与Monarch矩阵理论之间的有趣联系,这使得我们可以在卷积中插入额外的参数,从而获得更好的质量。[1]

    结论:
    简单的长卷积在序列建模中表现出色,并且只需添加简单的正则化操作就可以与复杂的序列模型相媲美。这种方法在多个领域都取得了良好的结果,并且具有较高的运行时性能。我们对这些方向非常感兴趣,并且希望能够在开放的环境中进一步发展这些方法。[1]


    Learn more:

    1. Simple Long Convolutions for Sequence Modeling · Hazy Research
    2. Simple Hardware-Efficient Long Convolutions for Sequence Modeling | OpenReview
    3. GitHub – HazyResearch/safari: Convolutions for Sequence Modeling
  • RWKV-5详细解析:理解并行训练的RNN网络

    RWKV-5是一种可以并行训练的RNN网络,相较于基于Transformer的模型,它具有更低的自回归解码复杂度。本文将从多个角度详细解析RWKV-5模型,帮助读者更好地理解该模型的原理和应用

    一、RWKV-5模型的背景和意义
    1.1 Transformer模型的挑战 [1]

    • Transformer模型是一种革命性的神经网络架构,但在处理长序列时面临内存和计算复杂度的问题。
    • 复杂度与序列长度呈二次关系,限制了其在大语言模型中的应用。

    1.2 RWKV-5模型的优势 [1]

    • RWKV-5利用了循环神经网络的思想,重新构造了注意力机制,使得复杂度与序列长度之间呈线性关系。
    • 可以并行训练,提高了训练效率。
    • 更适应大语言模型的自回归解码推理。

    二、RWKV-5模型的核心思想
    2.1 注意力机制和循环神经网络的核心思想 [1]

    • 注意力机制:通过全局建模和并行计算,提高模型对长距离依赖关系的建模能力。
    • 循环神经网络:将时刻t的输出作为时刻t+1的输入,适用于自回归解码推理。

    2.2 RWKV-5模型中的AFT注意力机制 [1]

    • 将点积转化为张量积,带来了并行性。
    • 张量积建模相互作用,提高了模型的表达能力。

    三、RWKV-5模型的架构和设计
    3.1 RWKV-5的整体架构 [1]

    • 包括Time-Mix模块和Channel-Mix模块。
    • Time-Mix模块将循环神经网络思想融入AFT的注意力机制中。
    • Channel-Mix模块用于处理通道之间的信息交互。

    3.2 RWKV-5的位置编码设计 [1]

    • 位置编码用于表示输入序列中单词的位置信息。
    • RWKV-5采用了一种特殊的位置编码设计,具体细节可参考原论文。

    四、RWKV-5模型的应用领域

    • RWKV-5模型在大语言模型的自回归解码推理中具有广泛的应用前景。
    • 可以用于文本生成、机器翻译、语音识别等任务。

    结语:
    通过对RWKV-5模型的详细解析,我们了解到它是一种可以并行训练的RNN网络,相较于基于Transformer的模型具有更低的自回归解码复杂度。RWKV-5模型的核心思想是将循环神经网络和AFT注意力机制相结合,通过张量积建模相互作用,提高了模型的表达能力。该模型在大语言模型的自回归解码推理中具有广泛的应用前景。

    参考文献:
    [1] 小白视角解读RWKV论文模型 – 知乎
    [2] RWKV的RNN CNN二象性 – 知乎


    Learn more:

    1. 小白视角解读RWKV论文模型 – 知乎
    2. RWKV的RNN CNN二象性 – 知乎
    3. RWKV–一种具有Transformer级别LLM性能的RNN-腾讯云开发者社区-腾讯云

    RWKV:将循环神经网络的思想融入大语言模型

    近年来,Transformer 模型凭借其强大的自注意力机制在自然语言处理领域取得了巨大成功。然而,Transformer 的二次复杂度也带来了挑战,尤其是在处理长序列时,内存和计算成本会大幅增加。为了解决这个问题,RWKV 提出了一种新颖的架构,它将循环神经网络的思想融入到 Transformer 的注意力机制中,并实现了线性复杂度。

    一、引言:自回归任务与模型架构

    大语言模型的核心任务之一是自回归解码推理,即根据已有的文本序列预测下一个词语。传统的自回归模型主要分为两种架构:注意力机制和循环神经网络。注意力机制通过全局建模和并行计算,能够有效地捕捉长距离依赖关系,但其二次复杂度限制了其在长序列上的应用。循环神经网络则擅长处理序列信息,并具有线性复杂度,但其并行性较差,难以充分利用现代硬件资源。

    RWKV 旨在结合两种架构的优势,将循环神经网络的思想融入到 Transformer 的注意力机制中,从而实现高效的并行计算和对长距离依赖关系的有效建模。

    二、详解注意力机制:非自主提示与自主提示

    注意力机制源于生物学中的注意力现象,可以分为非自主性提示和自主性提示。非自主性提示是指外部刺激的特性和属性,例如明亮的颜色、突然的动作或突出的形状,它们会自动地吸引我们的注意力。自主性提示则指个体内部的因素,例如我们的意图、期望和目标,它们会引导我们的注意力。

    在注意力机制中,Query 代表自主性提示,Key 代表非自主性提示,Value 代表实际信息。注意力机制的过程可以理解为:根据 Query 与 Key 的相似度计算权重,并根据权重聚合 Value,从而选择性地关注重要的信息。

    经典的注意力机制公式如下:

    $$
    A^{t}{e^{n}tion}(q, K, V) = \frac{\sum{i=1}^{n}exp(q^{T}k_{i})v_{i}}{\sum_{i=1}^{n}exp(q^{T}k_{i})}
    $$

    其中,q 代表 Query,K 代表 Key,V 代表 Value,n 代表序列长度。公式表明,注意力机制通过计算 Query 与每个 Key 的内积,得到相似度分数,并将其作为权重来聚合 Value。

    三、详解循环神经网络:自回归模型与门控循环单元

    自回归模型是另一种处理序列信息的方法,它根据过去的信息预测当前的信息。门控循环单元 (GRU) 是循环神经网络的一种变体,它通过一系列门控单元来控制信息的流动和存储,能够选择性地更新隐藏状态,保留历史信息并捕捉长期依赖关系。

    GRU 单元包含两个关键的门控:更新门 (Update Gate) 和重置门 (Reset Gate)。更新门决定了隐藏状态的更新程度,重置门决定了之前的隐藏状态对当前时间步的影响程度。GRU 单元的公式如下:

    • 更新门:
      $$
      z_{t} = \sigma(W_{z} \cdot [h_{t-1}, x_{t}])
      $$
    • 重置门:
      $$
      r_{t} = \sigma(W_{r} \cdot [h_{t-1}, x_{t}])
      $$
    • 候选隐藏状态:
      $$
      \tilde{h}{t} = tanh(W{h} \cdot [r_{t} \odot h_{t-1}, x_{t}])
      $$
    • 最终的隐藏状态:
      $$
      h_{t} = (1-z_{t}) \odot h_{t-1} + z_{t} \odot \tilde{h}_{t}
      $$

    其中,$x_{t}$ 代表当前时间步的输入,$h_{t-1}$ 代表前一个时间步的隐藏状态,$W_{z}$、$W_{r}$ 和 $W_{h}$ 代表权重矩阵,$\sigma$ 代表 sigmoid 激活函数,$\odot$ 代表逐元素乘法。

    四、详解AFT中的注意力机制:张量积与并行性

    传统的注意力机制需要计算相似度矩阵,其复杂度与序列长度呈二次关系。AFT (Attention with Forget-Token) 提出了一种新的注意力机制,它将点积操作替换为张量积操作,从而降低了复杂度,并提高了并行性。

    AFT 的注意力机制公式如下:

    $$
    A^{t}{e^{n}tion}(q, K, V) = \sigma(q{n}) \odot g(K, V) = \sigma(q_{n}) \odot \sum_{i=1}^{n}exp(k_{i}) \odot v_{i}
    $$

    其中,$g(K, V)$ 代表对 Key 和 Value 进行加权聚合的结果,$\sigma$ 代表 sigmoid 激活函数。AFT 通过将 Key 和 Value 的加权聚合操作与 Query 的张量积操作分离,实现了线性复杂度,并提高了并行性。

    五、详解RWKV:融合循环神经网络思想的注意力机制

    RWKV 结合了注意力机制和循环神经网络的优势,它在 AFT 的基础上,引入了循环神经网络的思想,并实现了线性复杂度。RWKV 的核心思想是将每个时间步的隐藏状态作为下一个时间步的输入,从而实现对过去信息的有效利用。

    RWKV 的架构主要包含两个模块:Time-Mix 和 Channel-Mix。Time-Mix 模块根据当前时间步的输入和前一个时间步的隐藏状态,生成一个新的隐藏状态,并将其作为下一个时间步的输入。Channel-Mix 模块则将不同时间步的隐藏状态进行融合,得到最终的预测结果。

    5.1 详解RWKV架构:标记偏移与递归嵌套

    RWKV 的架构如图4所示,它包含多个 Time-Mix 模块和一个 Channel-Mix 模块。每个 Time-Mix 模块接收当前时间步的输入和前一个时间步的隐藏状态,并生成一个新的隐藏状态。这些隐藏状态之间存在着从左往右的传递,即引入了隐状态。

    RWKV 使用标记偏移 (token shift) 技术,将每个时间步的输出作为下一个时间步的输入,从而实现递归嵌套。标记偏移技术可以有效地利用过去的信息,并提高模型的性能。

    5.2 详解Time-Mix模块:可学习的位置编码与递归循环

    Time-Mix 模块的公式如下:

    • 接受向量:
      $$
      r_{t} = W_{r} \cdot (\mu_{r} x_{t} + (1-\mu_{r}) x_{t-1})
      $$
    • 键向量:
      $$
      k_{t} = W_{k} \cdot (\mu_{k} x_{t} + (1-\mu_{k}) x_{t-1})
      $$
    • 值向量:
      $$
      v_{t} = W_{v} \cdot (\mu_{v} x_{t} + (1-\mu_{v}) x_{t-1})
      $$
    • 加权聚合:
      $$
      w_{kv}^{t} = \frac{\sum_{i=1}^{t-1}exp(-(t-1-i)w + k_{i}) \odot v_{i} + exp(u + k_{t}) \odot v_{t}}{\sum_{i=1}^{t-1}exp(-(t-1-i)w + k_{i}) + exp(u + k_{t})}
      $$
    • 输出向量:
      $$
      o_{t} = W_{o} \cdot (\sigma(r_{t}) \odot w_{kv}^{t})
      $$

    其中,$w$ 和 $u$ 代表可学习的位置编码,$\mu$ 代表标记偏移,$W_{r}$、$W_{k}$、$W_{v}$ 和 $W_{o}$ 代表权重矩阵,$\sigma$ 代表 sigmoid 激活函数,$\odot$ 代表逐元素乘法。

    Time-Mix 模块通过将当前时间步的输入和前一个时间步的隐藏状态进行线性组合,并使用可学习的位置编码来控制不同时间步的信息的权重,从而实现对过去信息的有效利用。

    5.3 详解Channel-Mix模块:融合不同时间步的信息

    Channel-Mix 模块的公式如下:

    • 接受向量:
      $$
      r_{t} = W_{r} \cdot (\mu_{r} x_{t} + (1-\mu_{r}) x_{t-1})
      $$
    • 键向量:
      $$
      k_{t} = W_{k} \cdot (\mu_{k} x_{t} + (1-\mu_{k}) x_{t-1})
      $$
    • 输出向量:
      $$
      o_{t} = \sigma(r_{t}) \odot (W_{v} \cdot max(k_{t}, 0)^{2})
      $$

    Channel-Mix 模块通过将不同时间步的隐藏状态进行融合,得到最终的预测结果。它使用一个类似遗忘门的操作,丢弃不必要的历史信息,并保留重要的信息。

    六、讨论:RWKV 的优势与挑战

    RWKV 模型结合了注意力机制和循环神经网络的优势,它能够有效地捕捉长距离依赖关系,并实现线性复杂度。RWKV 的优势主要体现在以下几个方面:

    • 高效的并行计算: RWKV 利用张量积操作,将注意力机制的复杂度降低到线性级别,并提高了并行性。
    • 对长距离依赖关系的有效建模: RWKV 通过引入循环神经网络的思想,能够有效地利用过去的信息,并捕捉长距离依赖关系。
    • 灵活的架构: RWKV 的架构灵活,可以根据不同的任务和数据进行调整。

    然而,RWKV 也面临一些挑战:

    • 缺乏长期依赖信息: RWKV 模型可能会拥有传统循环神经网络的通病,缺乏长期依赖信息。
    • 标记偏移的计算: RWKV 的计算公式中的标记偏移 $\mu$ 的作用尚未完全清楚,论文中也没有给出它的计算公式。
    • Time-Mix 模块的公式: Time-Mix 模块的公式需要进一步完善,并使用张量积表示。

    总而言之,RWKV 是一种很有潜力的模型,它将循环神经网络的思想融入到 Transformer 的注意力机制中,并实现了线性复杂度。随着研究的不断深入,RWKV 有望在自然语言处理领域发挥更大的作用。

    参考文献

  • FIDO2详细解析

    FIDO2是FIDO联盟最新的规范集,它使用户能够在移动和桌面环境中轻松地对在线服务进行身份验证。FIDO2规范由万维网联盟(W3C)的Web身份验证(WebAuthn)规范和FIDO联盟的客户端到身份验证器协议(CTAP)组成[1]

    FIDO2的目标是让世界超越密码,提供一种更安全、更便捷的身份验证方法。它的实现依赖于以下几个关键组件:

    1. WebAuthn:WebAuthn是FIDO2的一部分,它是一种使用JavaScript提供的API,用于与身份验证设备进行交互。Web服务开发人员可以通过实施WebAuthn标准,使浏览器能够与身份验证设备进行通信[2]
    2. CTAP:CTAP是客户端到身份验证器协议,它定义了浏览器和身份验证器之间的通信协议。CTAP允许浏览器向身份验证器发送请求,并接收来自身份验证器的响应。这样,浏览器可以与用户的身份验证设备进行交互,完成身份验证过程[2]
    3. 身份验证器:身份验证器是用于进行身份验证的设备,例如USB密钥、智能手机或计算机的可信平台模块(TPM)。这些设备保存用户的密钥,并在与服务交互时使用它们。身份验证器可以通过CTAP协议与浏览器进行通信,完成身份验证过程[3]

    FIDO2的工作流程如下:

    1. 用户登录服务:用户使用用户名和密码登录Web服务。
    2. 选择FIDO2身份验证:用户选择使用FIDO2进行身份验证,而不是传统的用户名和密码。
    3. 与身份验证器交互:浏览器通过WebAuthn API与用户的身份验证器进行交互,向其发送请求并接收响应。
    4. 完成身份验证:身份验证器使用保存的密钥对用户进行身份验证,并将结果发送回浏览器。
    5. 访问服务:如果身份验证成功,用户将获得访问服务的权限。

    FIDO2的优点和缺点:

    优点:

    • 更安全:FIDO2使用公钥加密技术,用户的私钥保存在身份验证器中,不会被泄露。这比传统的用户名和密码更安全。
    • 更便捷:用户只需使用身份验证器进行一次注册,以后就可以通过简单的身份验证过程访问多个服务,无需记住多个密码。
    • 跨平台支持:FIDO2可以在移动和桌面环境中使用,支持多种设备和操作系统。

    缺点:

    • 设备依赖性:FIDO2需要用户拥有兼容的身份验证器设备,如果用户没有这样的设备,就无法使用FIDO2进行身份验证。
    • 依赖网络:FIDO2需要与Web服务进行通信,因此需要网络连接。如果网络不可用,用户无法进行身份验证。

    总结:

    FIDO2是一种新的身份验证方法,它通过结合WebAuthn和CTAP规范,使用户能够在移动和桌面环境中轻松地对在线服务进行身份验证。FIDO2提供了更安全、更便捷的身份验证方式,但需要用户拥有兼容的身份验证器设备和网络连接。


    Learn more:

    1. 了解FIDO2:WebAuthn 和 CTAP_贝塔贝卡贝的博客-CSDN博客
    2. FIDO2+WebAuthn认证详解-CSDN博客
    3. 金融部门的 FIDO2:优点和缺点 (Pavel Melnichenko) – Plato Data Intelligence
  • WebAuthn 详细解析

    WebAuthn是一种无密码身份验证技术,它允许用户在网站上进行安全的身份验证,而无需使用传统的用户名和密码。通过WebAuthn,用户可以使用指纹、面部识别、USB密钥等多种身份验证方式来登录网站,从而提高安全性和便利性。

    下面是对WebAuthn的详细

    解析:

    1. 什么是WebAuthn?

    WebAuthn,全称Web Authentication,是W3C(万维网联盟)制定的一种用于在浏览器上进行身份验证的API。它是FIDO2(Fast Identity Online 2)标准的一部分,旨在提供更安全、更便捷的身份验证方式。

    2. WebAuthn的工作原理

    WebAuthn的工作原理可以分为以下几个步骤:

    2.1 注册阶段

    • 用户在网站上选择使用WebAuthn进行身份验证。
    • 网站生成一个随机的挑战(Challenge)并将其发送给用户。
    • 用户的认证器(Authenticator)生成一对公私钥,并将公钥与用户的身份信息绑定。
    • 认证器将公钥、挑战和其他相关信息一起进行签名,并将签名结果发送给网站。
    • 网站将用户的公钥和签名结果保存起来,用于后续的身份验证。

    2.2 身份验证阶段

    • 用户在网站上选择使用WebAuthn进行身份验证。
    • 网站生成一个随机的挑战(Challenge)并将其发送给用户。
    • 用户的认证器(Authenticator)使用保存的私钥对挑战进行签名,并将签名结果发送给网站。
    • 网站验证签名结果的有效性,如果一致则表示用户身份验证通过。

    3. WebAuthn的优势和应用场景

    WebAuthn相比传统的用户名和密码身份验证方式具有以下优势:

    • 更高的安全性:使用公私钥对挑战进行签名,避免了密码泄露的风险。
    • 更便捷的用户体验:用户可以使用指纹、面部识别等生物特征进行身份验证,无需记住复杂的密码。
    • 跨平台支持:WebAuthn可以在不同平台上使用,包括桌面浏览器、移动设备等。

    WebAuthn的应用场景包括但不限于:

    • 网站登录:用户可以使用WebAuthn进行网站登录,提高登录的安全性和便利性。
    • 二次验证:WebAuthn可以作为二次验证的一种方式,提供额外的安全层级。
    • 身份认证:WebAuthn可以用于身份认证,例如在金融、医疗等领域进行身份验证。

    4. 使用WebAuthn的注意事项

    使用WebAuthn时需要注意以下几点:

    • 需要使用HTTPS协议或处于localhost环境下,以确保通信的安全性。
    • 不同浏览器对WebAuthn的支持程度可能有所不同,开发者需要进行兼容性测试。
    • 用户需要拥有支持WebAuthn的认证器,例如指纹识别设备、USB密钥等。

    以上是对WebAuthn的详细解析,希望能帮助你更好地理解和应用这一无密码身份验证技术。


    Learn more:

    1. WebAuthn无密码身份验证技术无密码身份认证李昂的数字之旅的博客-CSDN博客
    2. 谈谈 WebAuthn-CSDN博客
    3. 使用WebAuthn实现更安全的Web身份认证-阿里云开发者社区
  • 什么是WebAuthn?

    WebAuthn是一种无密码身份验证技术,它提供了一种更安全、更便捷的身份认证方式。下面将详细解析WebAuthn的工作原理和优势。

    什么是WebAuthn?

    WebAuthn是由W3C制定的Web身份认证标准,全称为Web Authentication。它使用公钥加密技术,允许用户通过生物特征(如指纹、面部识别)或硬件密钥(如USB密钥)来进行身份验证,从而实现更强大的身份认证。

    WebAuthn的工作原理

    WebAuthn的基本工作原理可以简单概括为以下几个步骤:

    1. 用户注册:用户在第一次登录时,选择并注册一种或多种生物特征或硬件密钥作为身份认证凭证[2]
    2. 身份认证请求:用户在登录时,浏览器向服务器发送身份认证请求,请求身份验证[2]
    3. 凭证创建:服务器生成一次性的随机挑战,并将其发送给浏览器[2]
    4. 身份认证:浏览器使用注册的生物特征或硬件密钥对随机挑战进行签名,然后将签名和挑战发送给服务器[2]
    5. 身份认证验证:服务器验证签名和挑战的有效性,如果验证通过,则允许用户登录[2]

    WebAuthn的优势

    WebAuthn具有以下优势:

    1. 更安全的身份认证:WebAuthn使用公钥加密技术,保护用户的私钥不被传送到服务器,从而实现更安全的身份认证。即使服务器被攻击或数据泄露,用户的私钥仍然是安全的[2]
    2. 更便捷的身份认证:用户可以选择多种身份认证方式,并且在注册凭证后,无需再输入用户名和密码,即可进行身份认证[2]

    总结

    WebAuthn是一种无密码身份验证技术,通过使用公钥加密技术和生物特征或硬件密钥进行身份认证,实现了更安全、更便捷的身份认证方式。它的工作原理简单明了,同时具有更安全的身份认证和更便捷的用户体验的优势。


    Learn more:

    1. WebAuthn无密码身份验证技术无密码身份认证李昂的数字之旅的博客-CSDN博客
    2. 使用WebAuthn实现更安全的Web身份认证-阿里云开发者社区
    3. 构建您的首个 WebAuthn 应用 | Google for Developers
  • 探索Zephyr-7B-β:一款掀起LLM新浪潮的强大语言模型

    大家好,今天我要向你们介绍一个在人工智能领域中备受瞩目的明星——Zephyr-7B-β,这是一款性能高超的大型语言模型(LLM)。它的出现不仅改变了我们对AI的认知,更为我们的日常生活带来了无尽的可能。

    Zephyr-7B-β是Zephyr系列的第二个模型,是基于Mistralai/Mistral-7B-v0.1并使用直接偏好优化(DPO)在公开可用的合成数据集上进行训练的微调版本。这款模型在发布时,在MT-Bench和AlpacaEval基准上的表现已经超越了许多其他同类产品,堪称7B类的聊天模型中的佼佼者。

    Zephyr-7B-β:小巧却强大

    虽然Zephyr-7B-β在模型大小上只有7B参数类似GPT的模型,但它在公开可用的合成数据集上进行微调后的性能却令人惊叹。特别是在MT-Bench的多个类别上,与Llama2-Chat-70B等较大的开放模型相比,Zephyr-7B-β具有较强的性能。

    然而,无论任何事物都不可能完美,对于更复杂的任务,如编码和数学等,Zephyr-7B-β的表现仍有待提升。它在这些方面的表现暂时无法与更专业的模型相比,但我们相信,随着研究的深入,这种差距会逐步缩小。

    Zephyr-7B-β:更多的可能性

    Zephyr-7B-β最初是在经过过滤和预处理的UltraChat数据集上进行微调的,这个数据集包含了由ChatGPT生成的各种合成对话。随后,我们在openbmb/UltraFeedback数据集上进一步将模型与TRL的DPOTrainer对齐。这个数据集包含了按GPT-4排名的64k个提示和模型完成情况。

    这就意味着,Zephyr-7B-β可以用于聊天,你可以查看我们的演示来测试其功能。同时,这款模型的代码已经在GitHub上开放,对于有兴趣的同学,可以自行下载研究。

    Zephyr-7B-β:未来的挑战

    然而,我们也需要看到,尽管Zephyr-7B-β的表现在许多方面都非常出色,但它也存在一些问题。例如,它尚未通过RLHF等技术与人类偏好保持一致,也未通过ChatGPT等响应的循环过滤进行部署,因此该模型可能会产生有问题的输出,特别是在提示时。

    此外,尽管我们知道用于训练Zephyr-7B-β的数据集主要包含了由ChatGPT生成的各种合成对话,但我们仍然不清楚用于训练基本模型(mistralai/Mistral-7B-v0.1)的语料库的大小和组成。这些问题都是我们在未来需要解决的挑战。

    Zephyr-7B-β的出现,无疑为我们展示了大型语言模型的强大潜力。通过不断的研究和改进,我们有理由相信,未来的Zephyr系列将会带给我们更多的惊喜~

  • 一次神奇的AI旅程:Zephyr-7B模型与Lora训练

    大家好,今天我要给大家分享的是关于神奇的Zephyr-7B模型和Lora训练的故事。这是一次跨越三大洲的合作,让我们一起探索这个令人兴奋的AI世界。

    Zephyr:直接蒸馏语言模型对齐

    在 AI 的世界中,出现了一款名为 Zephyr-7B 的模型,它的出现可谓是一次划时代的突破。那么,Zephyr-7B 是如何诞生的呢?

    几个月之前,一个位于巴黎的团队发布了他们的第一个模型:Mistral 7B。这个模型虽然体积小巧,但性能强大,在基准测试中超过了所有同类模型,更令人振奋的是,这是一个开源项目。

    然后,Hugging Face H4团队的两名成员在一次小聚中,讨论了使用斯坦福大学新发表的 DPO 方法对 Mistral 7B 这个模型进行微调的可能性。他们在 HF hub 上找到了一些公开的数据集,包括由面壁智能和清华大学 NLP 共同支持的 OpenBMB 开源的两个大规模、高质量的微调数据集:UltraFeedback 和 UltraChat。

    UltraFeedback 是一个大规模、多样化、细粒度 的偏好数据集。UltraChat 则是高质量的对话数据集,包含了 150 余万条多轮指令数据。

    经过几轮实验,使用 OpenBMB 两个数据集训练出来的新模型非常强大,是 H4 团队在伯克利和斯坦福的基准测试中见过的最强模型,并在之后被命名为 Zephyr模型。Zephyr-7B-alpha 的 MT-Bench 平均得分7.09,超越了 Llama2-70B-Chat。

    这引发了一个重要的思考:一个基于高质量数据集的 7B 模型竟然打败了参数十倍之大的 LLaMA2-70B-Chat,这说明了什么?这说明,底层的数据工作才是最稀缺的和有时间价值的,这或许是各家各派大模型在百模大战中的突破口之一。

    然后我们看到,Zephyr的优秀性能还得归功于使用了由斯坦福大学和CZ Biohub不久前合作提出的 DPO 方法。与传统的 PPO 强化学习方法不同,DPO 方法舍弃了强化学习,要比 PPO 稳定得多。

    DPO的简单解释是:它绕过了建模奖励函数,相当于直接在偏好数据上优化模型,它解决了人类反馈的强化学习训练难、训练成本高的问题。

    Zephyr-7B-beta的变革

    进一步的,开发二代模型 Zephyr-7B-beta 时,团队思考了大模型所用的蒸馏监督微调(dSFT)。然而,用这种方法模型是不对齐的,不能很好地生成符合用户意图的输出。

    所以,团队尝试使用AI反馈(AI Feedback,AIF)的偏好数据,用一个“教师模型”对输出进行排名,形成一个数据集,然后应用蒸馏直接偏好优化(dDPO)进行训练。这样,训练出的模型就能更好地对齐用户的意图,生成更好的输出。

    Zephyr-7B-beta的测试数据也验证了这种方法的有效性。比对7B版本的模型,这款新模型在MT-Bench上的平均得分达到了7.18,几乎是目前所有模型中的最高分。

    低成本训练Zephyr

    接下来,我们来看看如何用低成本的方式训练Zephyr。这里就要提到一个名为”alignment-handbook”的项目。

    “alignment-handbook”是一个非常实用的项目,为大家提供了全面的训练步骤,包括环境配置、SFT训练、DPO训练等。通过这个指南,你可以方便地在自己的电脑上完成训练。

    使用SFT训练,我们可以在预训练模型的基础上进行微调,以达到我们期望的效果。而DPO训练则可以直接在偏好数据上优化模型。这两种训练方法都非常高效,可以在短时间内得到高质量的模型。

    Lora训练

    最后,我要与大家分享的是Lora训练。Lora是一种新的训练方法,通过给模型添加一些额外的参数,可以让模型的性能得到进一步的提升。

    Lora训练虽然需要额外的计算资源,但它可以显著提高模型的性能。所以,如果你有足够的计算资源,我强烈推荐你尝试使用Lora训练。

    总结

    在这篇文章中,我向大家介绍了Zephyr-7B模型和Lora训练的神奇故事。希望通过这个故事,你能感受到AI技术的魅力,也希望你能够通过学习和实践,将这些技术应用到你的工作和生活中,让AI技术为你带来更多的便利和乐趣。

    在未来的日子里,我相信我们会看到更多的突破和创新。让我们期待这个未来,一起探索这个充满无限可能的AI世界。

  • 带你走进MathJax:让所有浏览器都能美绘数学

    大家好,欢迎来到今天的博客,我将向大家介绍一个名为MathJax的神奇工具,它将为你打开一个全新的、美丽的数学世界。对,你没有听错,这是一个能让所有浏览器都能优雅地展示数学公式的工具。无需为了阅读者进行繁琐的设置,一切都如你所愿,就是这么简单!

    MathJax:变革者

    MathJax,就是它,能够将你的传统印刷内容转化为现代化、易于访问的网页内容和电子书。无论是旧时的文档,还是新的在线内容,MathJax都能轻松转化,为特殊需要的读者提供全面的访问体验。更妙的是,MathJax也可以在服务器端工作流中使用,以准备可离线查看的内容或生成与现代电子书阅读器兼容的文档。只需要一次联系,我们就可以为你的机构提供有关内容转化服务的更多信息。

    MathJax:教育者

    你们的教育工作需要帮助吗?MathJax团队也是教育家,他们愿意培训你的员工使用我们的资源来准备在线教学材料和创建易于访问的STEM内容。无论是支持在线教学,还是在线考试,MathJax都能提供帮助。我们甚至可以为你的教师、教员和员工提供培训,教他们如何准备全面可访问的数学课程材料。

    MathJax:顾问

    当然,我们的服务并非只有以上这些。MathJax是一个非常灵活的系统,能够根据任何应用和任何内容的需求进行调整和定制。无论是静态网站还是高动态环境,无论是简单的教学讲义还是科学出版中的精密排版,MathJax都能胜任。不仅如此,我们还关注网页内容、软件解决方案和工作流的无障碍访问,我们会与你的工作人员一起工作,确保你的材料是完全无障碍的。

    MathJax:艺术家

    MathJax不仅仅是工具,更是艺术的创造者。它使用CSS和网络字体或SVG,而非位图图像或Flash,因此,无论怎样缩放,公式都能与周围的文本保持一致。MathJax的输入和输出模块也极其灵活,可以使用MathML,TeX和ASCIImath作为输入,生成HTML+CSS,SVG或MathML作为输出。而且MathJax与屏幕阅读器兼容,提供表达式缩放和交互式探索,你还可以将公式复制到Office,LaTeX,wiki和其他软件中。

    MathJax:无障碍和可重用

    MathJax提供了一套强大的无障碍扩展,这些扩展在客户端提供导航、探索和发声。通过MathJax的上下文菜单,你可以访问任何数学表达式的源代码,无论是MathML格式,还是原始的TeX或AsciiMath格式。

    是的,这就是MathJax,一个美丽的、无障碍的、可重用的数学显示引擎。它是你的内容变革者,是你的教育者,是你的顾问,也是你的艺术家。让我们一起,用MathJax打造一个美丽、访问性强、充满创新的数学世界!

    结语

    在本篇博客中,我向大家介绍了MathJax这个神奇的工具。它能够让所有的浏览器都能优雅地展示数学公式,无需为了阅读者进行繁琐的设置,一切都如你所愿。MathJax不仅可以帮助你将传统印刷内容转化为现代化、易于访问的网页内容和电子书,还可以在服务器端工作流中使用,为特殊需要的读者提供全面的访问体验。此外,MathJax团队也是教育家,他们愿意培训你的员工使用我们的资源来准备在线教学材料和创建易于访问的STEM内容。

    无论你是老师、学生,还是科研人员,只要你与数学打交道,MathJax都能为你提供帮助。如果你有任何疑问,或者想要了解更多关于MathJax的信息,欢迎联系我们。记住,数学是美丽的,而MathJax,就是展示这种美丽的最佳工具。

    感谢你的阅读,我们下次再见!

  • 弥合神经辐射场之间的差距 采用渐进式体积蒸馏的架构

    神经辐射场 (NeRF) 方法已被证明是 3D 场景的紧凑、高质量和多功能表示,并支持编辑、检索、导航等下游任务。各种神经架构都在争夺NeRF的核心结构,包括普通的多层感知器(MLP)、稀疏张量、低秩张量、哈希表及其组成。这些表示形式中的每一种都有其特定的权衡。例如,基于哈希表的表示允许更快的训练和渲染,但它们缺乏明确的几何含义,阻碍了下游任务,如空间关系感知编辑。在本文中,我们提出了渐进式体积蒸馏(PVD),这是一种系统的蒸馏方法,允许不同架构之间的任意转换,包括MLP、稀疏或低秩张量、哈希表及其组成。因此,PVD 使下游应用程序能够以事后方式对手头的任务进行最佳调整神经表示。转换速度很快,因为蒸馏是在不同级别的体积表示上逐步进行的,从浅到深。我们还采用了特殊的密度处理来处理其特定的数值不稳定问题。在NeRF-Synthetic、LLFF和TanksAndTemples数据集上验证了我们的方法。例如,使用 PVD,可以从基于哈希表的 Instant-NGP 模型中提炼出基于 MLP 的 NeRF 模型,其速度比从头开始训练原始 NeRF 快 10 倍~20 倍,同时实现卓越的合成质量水平。代码可在 https://github.com/megvii-research/AAAI2023-PVD 上获得。


    Key Points

    • 1. Novel view synthesis (NVS) 是一种生成 photo realistic 2D 图像的技术,用于三维场景的未知视角。NVS 已在渲染、定位和机器人手臂操作等领域得到广泛应用。最近开发的神经辐射场(NeRF)提供了神经建模能力。

      2. NeRF 可以显著提高 NVS 的质量,利用多层感知器(MLP)的强大泛化能力。采用特征张量作为辅助的显性表示,以减轻 MLP 记住场景所有细节,从而实现更快的训练速度和更灵活的几何结构操作。

      3. 特征张量过大导致寻找更紧凑表示的需求。TensorRF 等方法利用 VM(向量 – 矩阵)分解和序数分解(CPD)等方法实现特征张量的有效压缩。

      4. 所有这些方案都有其优缺点。一般来说,使用隐性表示更容易对场景进行纹理编辑和动态场景建模。但使用显性或混合表示通常具有更快的训练速度,能更好地处理几何上的编辑。

      5. 由于 NVS 的下游任务多样性,没有单一的最佳表示。选择特定的表示取决于具体的应用场景和可用的硬件计算能力。

      6. 在本文中,我们提出了一种方法,可以在已知的 NeRF 架构之间实现任意转换,包括 MLP、稀疏张量、低秩张量、哈希表以及它们的组合。这种灵活的转换可以带来以下优点:深入了解 NeRF 中丰富且不断发展的架构体系结构,消除给设计带来的负担,适应训练好的模型以满足未来可能发现的应用场景需求。

      7. PVD(渐进体积蒸馏)是一种在不同体积表示水平上操作的蒸馏方法,特别关注密度体积以获得更好的数值稳定性。PVD 能够实现不同 NeRF 架构之间的任何-to-any 转换,包括 MLP、稀疏张量、低秩张量和哈希表架构。

      8. Neural implicit representation 方法使用 MLP 从坐标空间构建 3D 场景,如 NeRF 所提出(Mildenhall 等人,2020)。MLP 的输入是 5D 坐标,输出是体积密度和视相关颜色。

      9. 隐含建模的优点是,表示有助于控制或更改场景的类似属性。Kobayashi、Matsumoto 和 Sitzmann 使用预训练的 CLIP 模型(Radford 等人,2021)。

      10. Explicit representations 将场景直接放置在 3D 格中(巨大的张量)。NVS 领域已经进行了多次尝试。Barron 等人提出了一种方法。

      11. 我们试图在不同的 NeRF 架构之间实现相互转换。由于架构数量不断增加,我们不试图逐个实现这些转换。相反,我们首先将典型架构以统一的形式表示,然后根据统一视图设计一种基于统一视图的蒸馏方案。

      12. 我们得出的公式包括像 NeRF 中的 MLP 这样的隐含表示、像 Plenoxels 中的稀疏张量这样的显式表示,以及两种混合表示:哈希表(INGP)和低秩张量(TensorRF 中的 VM 分解)。

      13. 一旦形成,这些架构及其组合之间的任何-to-any 转换都是可能的。

      14. 接下来,我们将简要介绍一些基础知识,然后详细介绍我们的方法。

      15. NeRF 用一个隐函数将空间点 x = (x, y, z) 和视方向 d = (θ, φ) 映射到密度σ和颜色 c。对于沿光线方向 r 从点 o 出发的相应像素的 RGB 值ŷ(r),通过 color c i 和空间点 x i = o + t i d 沿着光线采样得到:其中 T i = exp(-i-1j=1σiδi),δi 是相邻样本之间的距离。

      16. 张量和张量低秩表示。Plenoxels 通过显式网格(张量)直接表示 3D 场景(Fridovich-Keil 等人,2022)。每个网格点都存储密度和球面谐波(SH)系数。颜色 c 根据 SH 和观察方向 d 计算。

    Related Work

    • 1. Novel view synthesis (NVS) 生成 photo realistic 2D 图像,用于三维场景的未知视角(周等人,2018 年; 坎等人,2021 年; 西特曼,祖豪费和威斯坦,2019 年 a),并在渲染、定位和机器人手臂操作(Adamkiewicz 等人,2022 年; Moreau 等人,2022 年; Peng 等人,2021 年)等领域具有广泛的应用,特别是最近开发的神经辐射场(NeRF)提供了神经建模能力。
      2. 利用多层感知器(MLP)的强大泛化能力,NeRF 可以显著提高 NVS 的质量。
      3. 采用特征张量作为辅助的显性表示,以减轻 MLP 记住场景所有细节,从而实现更快的训练速度和更灵活的几何结构操作。
      4. 特征张量过大导致寻找更紧凑表示的需求,如 TensorRF(Chen 等人,2022 年)利用 VM(向量 – 矩阵)分解和序数分解(CPD),Fridovich-Keil 等人利用张量的稀疏性,而 INGP(Müller 等人,2022 年)利用多级哈希表实现特征张量的有效压缩。
      5. 所有这些方案都有其优缺点。一般来说,使用隐性表示更容易对场景进行纹理编辑(例如颜色、照明变化和变形等),艺术的风格化和动态场景建模(Tang 等人,2022 年; Kobayashi,Matsumoto 和 Sitzmann,2022 年; Pumarola 等人,2021 年; Gu 等人,2021 年; Zhan 等人,2021 年)。
      6. 然而,使用显性或混合表示通常具有更快的训练速度,因为它们具有更浅层的表示,能更好地处理几何上的编辑,例如场景的合并和其他操作,与纯隐性表示的情况形成鲜明对比。
      7. 由于 NVS 的下游任务多样性,没有单一的最佳表示。选择特定的表示取决于具体的应用场景和可用的硬件计算能力。
      8. 在本文中,我们从另一个角度处理这个问题。我们提出了一种方法,可以在已知的 NeRF 架构之间实现任意转换,包括 MLP、稀疏张量、低秩张量、哈希表以及它们的组合。这种灵活的转换可以带来以下优点。首先,该研究将深入了解 NeRF 中丰富且不断发展的架构体系结构。其次,这种转换消除了在事先确定架构之前给设计带来的负担,因为现在他们可以只需适应训练好的模型以满足未来可能发现的应用场景需求。最后,在教师和学生具有不同属性的情况下,可以利用这种辅助优势。例如,当使用具有哈希表的教师模型蒸馏学生模型的显性表示时,现在可以从教师的速度中受益,同时仍然生成具有清晰几何结构的学

    Method

    • 作者通过以下方法取得结果:

      1. 利用 Novel view synthesis (NVS) 生成 photo realistic 2D 图像,用于三维场景的未知视角,并在渲染、定位和机器人手臂操作等领域具有广泛的应用。
      2. 利用多层感知器 (MLP) 的强大泛化能力,显著提高 NVS 的质量。
      3. 采用特征张量作为辅助的显性表示,以减轻 MLP 记住场景所有细节,从而实现更快的训练速度和更灵活的几何结构操作。
      4. 特征张量过大导致寻找更紧凑表示的需求,如 TensorRF(Chen 等人,2022 年) 利用 VM(向量 – 矩阵) 分解和序数分解 (CPD),Fridovich-Keil 等人利用张量的稀疏性,而 INGP(Müller 等人,2022 年) 利用多级哈希表实现特征张量的有效压缩。
      5. 所有这些方案都有其优缺点。一般来说,使用隐性表示更容易对场景进行纹理编辑 (例如颜色、照明变化和变形等),艺术的风格化和动态场景建模 (Tang 等人,2022 年; Kobayashi,Matsumoto 和 Sitzmann,2022 年; Pumarola 等人,2021 年; Gu 等人,2021 年; Zhan 等人,2021 年)。
      6. 然而,使用显性或混合表示通常具有更快的训练速度,因为它们具有更浅层的表示,能更好地处理几何上的编辑,例如场景的合并和其他操作,与纯隐性表示的情况形成鲜明对比。
      7. 由于 NVS 的下游任务多样性,没有单一的最佳表示。选择特定的表示取决于具体的应用场景和可用的硬件计算能力。
      8. 在本文中,作者提出了一种方法,可以在已知的 NeRF 架构之间实现任意转换,包括 MLP、稀疏张量、低秩张量、哈希表以及它们的组合。这种灵活的转换可以带来以下优点。首先,该研究将深入了解 NeRF 中丰富且不断发展的架构体系结构。其次,这种转换消除了在事先确定架构之前给设计带来的负担,因为现在他们可以只需适应训练好的模型以满足未来可能发现的应用场景需求。最后,在教师和学生具有不同属性的情况下,可以利用这种辅助优势。
      9. 作者还提出了一种方法,称为 PVD(渐进体积蒸馏),用于在不同体积表示水平上操作的蒸馏方法,特别关注密度体积以获得更好的数值稳定性。PVD 能够实现不同 NeRF 架构之间的任何-to-any 转换,包括 MLP、稀疏张量、低秩张量和哈希表架构。这是第一个系统尝试这种转换。
      10. 作者还提出了一种基于统一视图的蒸馏方案,可以在不同的 NeRF 架构之间实现相互转换。作者得出的公式包括像 NeRF 中的 MLP 这样的隐含表示、像 Plenoxels 中的稀疏张量这样的显式表示,以及两种混合表示:哈希表 (INGP) 和低秩张量 (TensorRF 中的 VM 分解)。
      11. 一旦形成,这些架构及其组合之间的任何-to-any 转换都是可能的。
      12. 接下来,作者简要介绍了一些基础知识,然后详细介绍了他们的方法。

    Result

    • 实验结果:

      1. 利用 Novel view synthesis (NVS) 生成了 photo realistic 2D 图像,用于三维场景的未知视角,并在渲染、定位和机器人手臂操作等领域具有广泛的应用。
      2. NeRF 可以显著提高 NVS 的质量,同时采用特征张量作为辅助的显性表示,以减轻 MLP 记住场景所有细节,从而实现更快的训练速度和更灵活的几何结构操作。
      3. 特征张量过大导致寻找更紧凑表示的需求,如 TensorRF(Chen 等人,2022 年)利用 VM(向量 – 矩阵)分解和序数分解(CPD),Fridovich-Keil 等人利用张量的稀疏性,而 INGP(Müller 等人,2022 年)利用多级哈希表实现特征张量的有效压缩。
      4. 所有这些方案都有其优缺点。一般来说,使用隐性表示更容易对场景进行纹理编辑(例如颜色、照明变化和变形等),艺术的风格化和动态场景建模(Tang 等人,2022 年; Kobayashi,Matsumoto 和 Sitzmann,2022 年; Pumarola 等人,2021 年; Gu 等人,2021 年; Zhan 等人,2021 年)。
      5. 然而,使用显性或混合表示通常具有更快的训练速度,因为它们具有更浅层的表示,能更好地处理几何上的编辑,例如场景的合并和其他操作,与纯隐性表示的情况形成鲜明对比。
      6. PVD(渐进体积蒸馏)是一种在不同体积表示水平上操作的蒸馏方法,从浅到深,特别关注密度体积以获得更好的数值稳定性。
      7. PVD 能够实现不同 NeRF 架构之间的任何-to-any 转换,包括 MLP、稀疏张量、低秩张量和哈希表架构。这是第一个系统尝试这种转换。
      8. Neural implicit representation 方法使用 MLP 从坐标空间构建 3D 场景,如 NeRF 所提出(Mildenhall 等人,2020)。
      9. MLP 的输入是 5D 坐标(空间位置 [x, y, z] 和查看方向 [θ, φ],输出是体积密度和视相关颜色)。
      10. 隐含建模的优点是,表示有助于控制或更改场景的类似属性。
      11. Kobayashi、Matsumoto 和 Sitzmann 使用预训练的 CLIP 模型(Radford 等人,2021)。
      12. explicit representations 将场景直接放置在 3D 格中(巨大的张量)。
      13. 在不同的 NeRF 架构之间实现相互转换。由于架构数量不断增加,我们不逐个实现这些转换。相反,我们首先将典型架构以统一的形式表示,然后根据统一视图设计一种基于统一视图的蒸馏方案。
      14. 我们得出的公式包括像 NeRF 中的 MLP 这样的隐含表示、像 Plenoxels 中的稀疏张量这样的显式表示,以及两种混合表示:哈希表(INGP)和低秩张量(TensorRF 中的 VM 分解)。
      15. 一旦形成,这些架构及其组合之间的任何-to-any 转换都是可能的。

    Conclusion

    • 1. 作者在这篇论文中得到的主要结论如下:
      * Novel view synthesis (NVS) 技术可以生成 photo realistic 2D 图像,用于三维场景的未知视角,并在渲染、定位和机器人手臂操作等领域具有广泛的应用。
      * NeRF 模型可以显著提高 NVS 的质量,而采用特征张量作为辅助的显性表示可以减轻 MLP 的记忆场景所有细节,从而实现更快的训练速度和更灵活的几何结构操作。
      * 特征张量过大导致寻找更紧凑表示的需求,因此作者提出了一些方法,如 TensorRF,利用 VM(向量 – 矩阵)分解和序数分解实现特征张量的有效压缩。
      * 所有这些方案都有其优缺点。一般来说,使用隐性表示更容易对场景进行纹理编辑和艺术的风格化和动态场景建模。
      * 然而,使用显性或混合表示通常具有更快的训练速度,因为它们具有更浅层的表示,能更好地处理几何上的编辑。
      * 选择特定的表示取决于具体的应用场景和可用的硬件计算能力。
      * 该论文提出了一种方法,可以在已知的 NeRF 架构之间实现任意转换,包括 MLP、稀疏张量、低秩张量、哈希表以及它们的组合。
      * 这种灵活的转换可以带来以下优点:深入了解 NeRF 中丰富且不断发展的架构体系结构,消除给设计带来的负担,适应训练好的模型以满足未来可能发现的应用场景需求。
      * 作者还提出了一种 PVD(渐进体积蒸馏)方法,可以在不同体积表示水平上操作的蒸馏方法,以获得更好的数值稳定性。
  • 在少样本学习中双曲与欧几里得嵌入

    最近在表示学习领域的研究表明,层次数据在双曲空间中可以得到低维且高度信息丰富的表示。 然而,尽管在图像识别中双曲嵌入已经引起了人们的关注,但它们的优化仍然容易受到数值障碍的影响。 此外,与传统欧氏特征相比,尚不清楚哪些应用最有可能从双曲性所施加的隐式偏差中受益。 在本文中,我们关注原型双曲神经网络。 特别地,高维空间中双曲嵌入趋向于收敛到Poincaré球体的边界,以及这对少样本分类的影响。 我们发现,在公共双曲半径下的双曲嵌入可以获得最佳少样本结果。 与之前的基准结果相比,我们证明了使用欧氏度量的固定半径编码器可以实现更好的性能,而不管嵌入维数如何。


    • 重点:
      1. 超球面(hyperbolic space)与欧氏空间(Euclidean space)相似,但曲率不同。
      2. 超球面存在多种同形模型,其中最常见的模型是超球面(hyperboloid)和波恩卡雷球(Poincaré ball)。
      3. 在机器学习中,超球面模型最常见的应用是波恩卡雷球模型。
      4. 波恩卡雷球模型可以从一个超球面模型(hyperboloid model)得到。
      5. 在本文中,我们将使用波恩卡雷球模型,该模型可以从超球面模型(hyperboloid model)得到。
      6. 考虑 Minkowski 空间 Rd,1={x=(x1, …, xd+1)∈Rd×R},以及双线性形式(Lorentz 伪标量)L⟨x, x⟩。
      7. L 形式在 Rd,1 上不是正定,但在 d-hyperboloid 上半平面内的曲率 k<0 时,是正定的。
      8. 我们可以通过包容映射ϕ将波恩卡雷球模型从超球面模型得到。
      9. 波恩卡雷球模型在原点处的指数映射是 TPd k → Pd k。
      10. 这使得我们可以将欧氏空间的神经网络转换为超球空间的神经网络。
      11. 在波恩卡雷球模型中,从任何∈Pd k 的 x 和 y 之间的最短路径距离可以通过计算 Pincaré球(Poincaré ball)得到。
      12. Ressler 等人提出的剪枝策略包括为 f(x; θ) 设置最大幅度 c,将波恩卡雷球缩小到半径为 c 的球中。
      13. 在训练过程中,对于合适的损失函数 L,以及 z := h(x; θ)∈Pd k,可以对欧氏梯度∇z L 进行反向传播(见 [13] 的实现),或者将其转换为 Riemannian 梯度通过反比例缩放 grad z L = λ(z) -2 ∇z L(z),如 [12] 中所示。