跳至主要內容
一套用于处理有序数据集合的 Python multiprocessing 多进程数据分割使用范例

前言

之前很多博文是写有关分布式训练过程,即将模型放到多个 GPU 上进行训练,而对于一些跑在 CPU 上的密集型任务处理时,应该使用 multiprocessing 模块进行处理。Python 的 multiprocessing 模块提供了一个与线程类似的 API,用于创建和管理进程。多进程可以利用多核 CPU 的优势,执行 CPU 密集型任务时可以显著提高性能,因为每个进程可以在不同的 CPU 核心上运行。


CK...大约 3 分钟技巧总结技巧Python多进程分布式开发
谈谈 Tokenization 如何注入攻击防御,防止原语料中存在 special tokens 被直接编码

前言

在自然语言处理(NLP)和机器学习领域,特别是在使用预训练的大语言模型(如BERT、GPT、Llama等)前,往往需要用特定的 tokenizer ,将原始语料文本分解成一个个 tokens ,以让模型理解,这一过程被称为 tokenization,tokenization 是文本预处理的关键步骤,它影响着模型的性能,"special tokens" 是指一些具有特殊意义的 tokens,它们不对应于实际的单词或短语,但在模型的架构和处理流程中扮演重要角色。例如,下面是一些常见的特殊标记及其用途:


CK...大约 8 分钟机器、深度学习深度学习模型训练Tokenization
详解 DeepSpeed Zero 的各个 Stage 状态及日常使用

引言

DeepSpeed 是一个由 Microsoft 开发的深度学习开源优化工具,它横跨模型训练、推理和模型压缩等领域。在本文中,我将只关注与训练相关的优化,而推理和压缩部分将留待今后探讨。如前文所述,我们可以通过在多个设备上复制整个模型(数据并行 Data Parallelism)或将模型拆分,并将其不同部分存储在不同设备上(模型并行 Model Parallelism / 流水线并行 Pipeline Parallelism)来执行分布式训练。一般来说,DP 比 MP 的计算效率更高;但是,如果模型太大,单个 GPU 设备的可用显存无法容纳,那么只能使用模型并行。


CK...大约 14 分钟机器、深度学习深度学习模型训练分布式训练DeepSpeed
深度学习模型训练显存占用及DP、MP、PP分布式训练策略

引言

在训练深度学习模型时,常常遇到两个问题:1. 训练速度过慢,2. GPU计算资源(显存)不足。为了解决这两个问题,我们常常选择分布式训练的策略,将模型训练任务分布到多个GPU,甚至多个节点上的多个GPU。Pytorch 与 tensorflow 分布提供了一定的分布式训练策略。 本文章主要介绍 Microsoft 开发的 DeepSpeed library,看该技术是透过何种优化让 deep learning 的训练过程有更高的效率同时使用更少的 GPU 显存。


CK...大约 9 分钟机器、深度学习深度学习模型训练分布式训练
如何理解深度学习领域中的端到端 (end to end)

前情提要

我已经有一年多没有更新自己的博客了,说来实在可惜,原本让我引以为傲的博客网站成为了久久不变的一堆代码,甚至让我自己都不再敢点了进来。这期间,不断有更新博客的想法,但几个问题一直困扰着我:


CK...大约 11 分钟机器、深度学习深度学习概念理解
Python 语法糖:你真的会用 Python 吗?

人生苦短,我用 Python!

作为一门以简洁、优美为代表的语言,Python 受到众多开发者的喜爱。相信有部分 Python 的开发者们,知道“Python 之禅”即“The Zen of Python”,通过 import this 语句就可以看到,Python 创建者对 Python 语言书写规范的建议:


CK...大约 7 分钟技巧总结Python技巧
LaTeX 常用语法格式总结

作为一名 LaTeX 深度爱好者,却因为常常忘记 LaTex 相关语法而被迫停止写作去浪费一定的时间查询相关内容,但长久以来,我发现自己常常查询的也就是这些常用而难以熟记的语法,现将其总结如下:


CK...大约 10 分钟技巧总结技巧LaTex
综合评价理想解法(TOPSIS解法)

问题的理想解法,理想解法亦称为 TOPSIS 法,是一种有效的多指标评价方法。这种方法。通过构造评价问题的正理想解和负理想解, 即各指标的最优解和最劣解,通过计算每个方案到理想方案的相对贴近度,即靠近正理想解和远离负理想解的程度,来对方案进行排序,从而选出最优方案。


CK...大约 9 分钟建模算法Matlab评价类算法TOPSIS数学建模