2025年2月18日

模型训练和计算过程中的一些优化

摘要: 优化 I/O 加载 主要是为了减少 CPU-GPU 之间的数据传输瓶颈,提升推理效率。DeepSeek 可能采用了以下几种 极致优化方案: 🔹 1. CPU-GPU 直接访问(Pinned Memory & Zero Copy) ✅ 问题:普通数据传输 • CPU 内存(系统 RAM)和 GPU 阅读全文

posted @ 2025-02-18 17:24 zhangkele 阅读(17) 评论(0) 推荐(0) 编辑

大模型计算和模型训练过程中-量化/稀疏计算 (Sparsity Pruning)技术的学习

摘要: 在大模型计算(如深度学习模型)中,量化是一种用较低精度数据类型表示模型参数和激活值的技术。它可以带来以下主要收益: 1. **降低存储需求**: - 使用低精度数据表示(如 `int8` 而不是 `float32`)可以显著减少模型所需的存储空间。这对于在内存有限的设备(如移动设备、嵌入式系统)上部 阅读全文

posted @ 2025-02-18 16:04 zhangkele 阅读(42) 评论(0) 推荐(0) 编辑

2025年2月9日

FAISS 三种向量检索方式学习

摘要: FAISS(Facebook AI Similarity Search)是一个高效的向量检索库,特别适用于大规模高维数据的相似度搜索。它的核心原理是通过不同类型的索引结构来加速相似度搜索过程。三个基础索引类型是: 1. IndexFlatL2 2. IndexIVFFlat 3. IndexIVFP 阅读全文

posted @ 2025-02-09 23:43 zhangkele 阅读(215) 评论(0) 推荐(0) 编辑

2025年1月21日

差异编码(Delta Encoding) 和 字典压缩(Dictionary Encoding)

摘要: 1. 差异编码(Delta Encoding):倒排列表中可能会采用差异编码,即存储相邻文档 ID 之间的差值,而不是直接存储每个文档 ID,这样可以进一步压缩空间。 2. 字典压缩(Dictionary Encoding):对于倒排列表中的文档 ID,可以使用字典进行压缩,进一步减少存储需求。 举 阅读全文

posted @ 2025-01-21 20:11 zhangkele 阅读(34) 评论(0) 推荐(0) 编辑

倒排索引中 “term” 词项 为什么要转换成 id

摘要: 当我们提到 存储压缩 时,尤其是在处理 倒排索引(Inverted Index)时,主要的目标是减少存储空间和提高查询效率。通过将 词项映射到ID 和 使用位图代替传统的倒排列表,我们能有效减少存储空间的占用,尤其是在处理具有大量重复词项的数据时。下面我将详细解释 词项映射到ID 的收益,并通过具体 阅读全文

posted @ 2025-01-21 18:01 zhangkele 阅读(15) 评论(0) 推荐(0) 编辑

2025年1月4日

索引压缩算法 New PForDelta 简介以及使用 SIMD 技术的优化

摘要: 1. 背景:搜索引擎与索引压缩 在搜索引擎或类似需要对海量文档进行检索的系统中,通常会构建倒排索引(Inverted Index)。为降低存储成本、减少 I/O 并提升检索速度,对倒排索引所包含的大量整数序列进行压缩是一种行之有效的手段。 • 目标:在确保解压速度的同时,尽量获得更好的压缩率。 • 阅读全文

posted @ 2025-01-04 14:23 zhangkele 阅读(61) 评论(0) 推荐(0) 编辑

2024年12月5日

K-means算法

摘要: 在使用K-means算法进行聚类时,我们通常需要执行以下步骤: 初始化簇中心、 分配样本点到最近的簇中心、 更新簇中心,直到收敛。 这些步骤可以用C++实现如下: #include <iostream> #include <vector> #include <cmath> #include <lim 阅读全文

posted @ 2024-12-05 01:47 zhangkele 阅读(19) 评论(0) 推荐(0) 编辑

2021年12月6日

raft- 分布式

摘要: https://juejin.cn/post/6973502080350683149 阅读全文

posted @ 2021-12-06 17:28 zhangkele 阅读(15) 评论(0) 推荐(0) 编辑

C++的大坑

摘要: https://www.eet-china.com/mp/a49223.html 无符号整数的错误使用 for (unsigned int i = 10; i >= 0; --i) { ... } 上面这段代码会发生什么? 会死循环,这里要注意下无符号整数的使用。 容器的size()返回类型是无符号 阅读全文

posted @ 2021-12-06 04:07 zhangkele 阅读(175) 评论(0) 推荐(0) 编辑

2021年11月29日

智能指针注意的坑

摘要: 1.同一普通指针不能同时为多个 shared_ptr 对象赋值,否则会导致程序发生异常。例如: int* ptr = new int; std::shared_ptr<int> p1(ptr); std::shared_ptr<int> p2(ptr);//错误. 容易引起double delete 阅读全文

posted @ 2021-11-29 12:03 zhangkele 阅读(727) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示