Java生鲜电商平台-电商中海量搜索ElasticSearch架构设计实战与源码解析 生鲜电商搜索引擎的特点 众所周知,标准的搜索引擎主要分成三个大的部分,第一步是爬虫系统,第二步是数据分析,第三步才是检索结果.首先,电商的搜索引擎并没有爬虫系统,因为所有的数据都是结构化的,一般都是微软的数据库或者 Oracle 的数据库,所以不用像百度一样用「爬虫」去不断去别的网站找内容,当然,电商其实也有自己的「爬虫」系统,一般都是抓取友商的价格,再对自己进行调整. 第二点,就是电商搜索引擎的过滤功能其实比…
[源码解析] 深度学习流水线并行Gpipe(1)---流水线基本实现 目录 [源码解析] 深度学习流水线并行Gpipe(1)---流水线基本实现 0x00 摘要 0x01 概述 1.1 什么是GPipe 1.2 挑战 0x02 并行机制 2.1 机制分类与权衡 2.1.1 数据并行 2.1.2 模型并行 2.1.3 流水线并行 2.2 如何使用 0x03 Pytorch 手动指定并行方式 3.1 基础知识 3.2 特点 3.3 基本用法 3.4 将模型并行化应用于现有模块 3.5 通过流水线输入…
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器 --(1) 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器 --(1) 0x00 摘要 0x01 背景 1.1 推荐系统中的点击率估计 1.2 点击率估算训练的挑战 0x02 HugeCtr 0x03 架构 3.1 CTR DL 模型 3.2 HugeCTR 架构 3.3 基于GPU的参数服务器 0x04 核心功能 4.1 模型并行训练 4.1.1 in-memory GPU hash table 4.1.…
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (2) 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (2) 0x00 摘要 0x01 总体流程 1.1 概述 1.2 如何调用 0x02 Session 2.1 Session 定义 2.2 构造函数 2.2.1 ResourceManager 2.2.1.1 接口 2.2.1.2 Core 2.2.1.3 拓展 0x03 Parser 3.1 定义 3.2 如何组织网络 3.2.1 输入…
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器---(3) 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器---(3) 0x00 摘要 0x01 回顾 0x02 数据集 2.1 Norm 2.1.1 数据文件 2.1.2 文件列表 2.2 Raw 2.3 Parquet 0x03 CSR 格式 3.1 什么是CSR 3.2 HugeCTR 之中的CSR 3.3 操作类 3.3.1 定义 3.3.2 构造函数 3.3.3 生成新行 3.3.4 插入数据 0…
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (4) 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (4) 0x00 摘要 0x01 总体流程 0x02 DataReader 2.1 定义 2.2 构建 2.3 DataReaderSparseParam 2.3.1 定义 2.3.2 使用 0x03 DataReader Buffer 机制 3.1 比对 3.2 Buffer 相关类 3.3 DataReader构造 3.3.1 辅助 G…
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (5) 嵌入式hash表 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (5) 嵌入式hash表 0x00 摘要 0x01 前文回顾 0x02 Embedding 2.1 概念 2.1.1 One-hot 编码 2.1.2 分布式表示 2.1.3 推荐领域 2.2 Lookup 2.3 嵌入层 2.3.1 点积 2.3.2 全连接层 2.3.3 元数据信息 2.3.4 经典架构 2.3.4.1…
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (6) --- Distributed hash表 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (6) --- Distributed hash表 0x00 摘要 0x01 简述 1.1 基类 1.2 功能 0x02 定义 2.1 思路 2.2 代码 0x03 HashTable 3.1 定义 3.2 HashTableContainer 3.3 调用 3.4 concurrent_unor…
[源码解析] NVIDIA HugeCTR,GPU 版本参数服务器---(7) ---Distributed Hash之前向传播 目录 [源码解析] NVIDIA HugeCTR,GPU 版本参数服务器---(7) ---Distributed Hash之前向传播 0x00 摘要 0x01 前文回顾 0x02 总体逻辑 2.1 注释&思路 2.2 总体代码 0x03 配置数据 3.1 CUB函数 3.1.1 cub::DeviceScan::InclusiveSum 3.1.2 cub::Dev…
[源码解析] NVIDIA HugeCTR,GPU 版本参数服务器---(8) ---Distributed Hash之后向传播 目录 [源码解析] NVIDIA HugeCTR,GPU 版本参数服务器---(8) ---Distributed Hash之后向传播 0x00 摘要 0x01 回顾 0x02 总述 2.1 注释 2.2 代码 0x03 输入 3.1 定义 3.2 切换 0x04 backward 4.1 总体代码 4.2 AllGather 4.2.1 原理 4.2.2 代码 4.…