【投机解码专题】自主多头预测架构-1:MEDUSA 独立草稿模型的两大痛点 草稿模型输出 token 的概率分布与目标模型存在偏差,限制了草稿的接受长度。 在部署的时候再额外维护一个小模型的成本太高。 自主多头预测架构 (Self-Speculative / Multi-Head Decoding) 的解法:把草稿模型“吞进”目标模型内部。 在目标模型上增加多个独立的预测头作为草稿模型,并且复用目标模型的 hidden-state 来确保在概 2026-07-09 paper #LLM #Speculative-Decoding
【投机解码专题】核心论文-2: Accelerating-Large-Language-Model-Decoding-with-Speculative-Sampling “Accelerating Large Language Model Decoding with Speculative Sampling” 是投机解码核心论文解读的第二篇论文,它同样是由 Google DeepMind 团队与 2023 年发表的。 它和上一篇 “Fast Inference from Transformers via Speculative Decoding” 的区别是,上一 2026-07-03 paper #LLM #Speculative-Decoding
【投机解码专题】核心论文-1: Speculative-Decoding-Fast-Inference-from-Transformers-via-Speculative-Decoding 投机解码(Speculative Decoding)的核心思想,在 2022–2023 年间由 Google Research 和 DeepMind 两个团队几乎同时独立提出,代表性工作分别是: “Fast Inference from Transformers via Speculative Decoding”(Leviathan et al., 2023) “Accelerating Lar 2026-07-02 paper #LLM #Speculative-Decoding
【学习 cmake step3】 设置编译参数 目标:使用更加现代的方法为 MathFunctions library 设置编译参数 Step 3: Adding Usage Requirements for a Library 源码实现 Step3/CMakeLists.txt 123456789101112131415161718192021222324252627282930cmake_minimum_required(VERSION 3 2024-07-12 cpp #C++ #cmake
【学习 cmake step1】 创建一个简单的 C++ 项目 本文是我学习 cmake 官方教程的笔记,我在官方教程的基础上,对其中的知识点做了展开描述。 什么是 cmake CMake 是一个跨平台的软件构建工具。 它的主要功能包括 跨平台:CMake 可以生成适用于 Windows、Linux、macOS 等多种平台的项目文件。 灵活:CMake 的配置文件使用一种类似 C++ 的语言,可以灵活地描述软件的构建过程。 可扩展:CMake 提供了丰富的 2024-01-03 cpp #C++ #cmake
【学习 cmake step2】 创建公共库(library) 目标:学习在项目中如何构建和使用一个公共库(library)。 在项目子文件夹中创建一个公共库,名字叫做 MathFunctions 供项目使用。 提供一个编译选项,来选择是使用 MathFunctions 还是系统库。 源码实现 Step 2: Adding a Library 目标1 创建 MathFunctions 公共库 Step2/MathFunctions/CMakeLists.t 2024-01-03 cpp #C++ #cmake
CUDA 代码编译流程 1 编译流程 随着 Nvidia 不断更新 GPU 硬件设计架构,每一代架构更迭都会引入新的功能,在同一代架构中不同的 GPU 型号在硬件配置上与性能上也会有一些细小的差异。 Nvidia 提供了一套代号来标识 GPU 的真实架构,它的格式是 sm_xy,x 代表 GPU 架构世代的编号,y代表 GPU 在这个架构世代中的版本号。为了方便对比 GPU 能力,如果 x1y1 <= x2y2 那 2024-01-03 CUDA #machinelearning #deeplearning #CUDA
机器学习项目基础设施 机器学习项目基础设施 机器学习过程可以大体上分为三个部分数据管理、模型训练与生产部署。 图片来自课程 [Full Stack Deep Learning](Lecture 6: Infrastructure & Tooling - Full Stack Deep Learning) 数据管理 数据源(sources) 数据源负责数据的存储与数据格式,常用的存储方式包括本地的文件系统、服务 2021-06-13 ML #machinelearning #deeplearning #softwareenginer #ai-infra
机器学习中的交叉熵 机器学习中的交叉熵 交叉熵损失函数是机器学习分类问题中最常用的一个损失函数。但是很多人对于“交叉熵”的概念缺乏理解。本文的目的是希望能够通俗易懂的解释清楚 “熵”, “交叉熵” 和 “KL-散度” 这三个相关的概念。 信息论中的“熵” “熵” (entropy) 这个概念在热力学中表示一个系统的无序程度,熵越大系统就越混乱。1948年香农在其发表的《通信的数学理论》论文中给出了”信息熵“的定义:信 2020-09-27 ML #machinelearning #math
pkg-config 入门 pkg-config 入门 pkg-config 是类 Unix 操作系统上的一个库查询工具。它通过 .pc 文件来查询当前系统上已安装类库的信息。 下面是 OpenCV4 的 pc 文件, 文件中包含了OpenCV 库的很多元数据(metadata) 1234567891011121314# Package Information for pkg-configprefix=/usr/local/ 2020-07-25 cpp #c++ #linux