在机器学习的日常工作中,许多环节似乎保持着一致性。从编写代码到等待结果,再到解读数据并反复调整,以及期间穿插的 […]
在机器学习的日常工作中,许多环节似乎保持着一致性。从编写代码到等待结果,再到解读数据并反复调整,以及期间穿插的阶段性进展汇报,这些都是常见的流程。然而,这种看似重复的模式并不意味着没有新的洞察和经验可循。恰恰相反,从中总能汲取宝贵的教训。通过回顾近期在机器学习实践中积累的经验,有三项实用教训尤为突出,它们对提升效率和工作健康有着显著的指导意义:
大多数README文档的编写初衷是为他人服务。它们旨在帮助新协作者快速上手,或使开源代码库对陌生用户友好。
然而,也应该为自己编写一份——尤其是为了未来的自己。
当身处项目核心时,所有的路径、命令和微妙的设置都清晰地存在于脑海中。但一旦项目暂停一段时间,这些细节便会迅速模糊。在一次为论文更新内容做准备时,就曾遇到类似情况。在机器学习研究中,审稿过程往往耗时数月。在此期间,研究人员通常会投入新的项目,处理新的数据集、编写新的代码、遵循新的规范。当审稿意见最终到来,需要重新回到旧项目时……却发现
需要花费半天时间来重建哪个脚本生成了哪张图。
如果截止日期临近,这无疑会带来巨大的压力。
为自己的遗忘做好准备是工作的一部分。一份小小的README文档可以省去巨大的麻烦。
记录内容应保持实用性。未来的自己不需要散文式的描述;他们需要的是“如何操作”:
conda/pip命令。一个最小化、通用且可适用于所有项目的模板:
# <项目标题>
快速启动
env
conda create -n proj python=3.10 -y
conda activate proj
pip install -r requirements.txt
数据
download & preprocess
python tools/download_data.py --out data/raw
python tools/preprocess.py --in data/raw --out data/processed
训练
python train.py --cfg cfgs/base.yaml --seed 42
评估
python eval.py --ckpt runs/exp123/best.ckpt --split test
复现图表
python scripts/fig_1.py # outputs to figs/fig_1.png
python scripts/tab_2.py # writes tables/tab_2.csv
超参数搜索
python sweep.py --study local.pkl --n-trials 100
注意事项 / 常见陷阱
- Requires CUDA 12.1
Set WANDB_MODE=offline if no internet
训练当前一代大型语言模型需要数百甚至数千块高端GPU。然而,大多数日常机器学习工作并不需要LLM规模的模型。许多问题可以通过紧凑的CNN或小型MLP解决——而这些模型并不需要完整的A100/H100 GPU。
为小型模型请求一块完整的GPU不仅浪费资源,还会使任务排到队列末尾。本月通过一个艰难的教训再次认识到这一点:当时在训练一个四层MLP模型,却等待了漫长的时间才被调度。在调度请求中,请求了一个完整的高端GPU。显而易见,这些GPU对于那些真正需要它们的任务(例如微调LLM)来说,需求量非常大。
一旦切换到MIG切片,任务便能立即启动,迭代速度也随之大幅提升。
MIG(多实例GPU)允许将一块最新的NVIDIA GPU分割成多个独立的“切片”。一块大型GPU可以变成最多七个较小的虚拟GPU,并且完整的显存会根据切片进行分配。本质上,每个切片都是一个更小的GPU。对于许多工作负载而言,这些小切片绰绰有余。
MIG还带来一个额外的好处:请求切片资源的人较少(因为他们可能不了解这个选项),因此调度器可以更快地安排任务。这使得模型迭代速度更快,从而缩短了获得良好结果所需的时间。
1g.10gb, 2g.20gb)。多数从事计算机工作的人都不可避免地长时间面对屏幕。人们普遍观察到,随着工作时间的延长,坐姿会变得越来越不端正,身体前倾,所有工作都在前方完成。
长时间保持这种姿势对身体无益,但在当下却相当普遍。对于机器学习从业者而言,计算机是其主要工具集,需要投入大量时间与其共处。
幸运的是,长时间面对屏幕并不意味着必须以不良姿势工作(这两者并非必然相关)。
本月,通过长时间的阅读、编码和会议,观察到肩膀前倾、上背部僵硬的现象。在连续几天大量阅读论文后,身体发出信号,提醒需要做出改变。
事实证明,解决方案非常简单,无需去健身房或进行完整锻炼。它只需要交替姿势和短暂的运动小歇。
以下是一些可在日常工作中穿插进行的运动小贴士(如果不熟悉,可在YouTube上查找相关教程,这是一种有助于更高效、更长久、更健康工作的元知识):
仅音频会议:站起来四处走动。如果必须留在桌边,则切换到分腿站姿(一只脚在前),以打开髋部。
两分钟重置(例如,咖啡休息后或从打印机返回后等):
站立阅读时段:打印论文或使用平板电脑站着阅读;交替进行站立和坐姿阅读时段。
此外,实践表明,简短的晨间活动有助于改善肩部感觉,并提升全天注意力,这对于需要高度集中精神的机器学习工作而言,是一个可喜的额外收获:
免费获取企业 AI 成熟度诊断报告,发现转型机会
关注公众号

扫码关注,获取最新 AI 资讯
3 步完成企业诊断,获取专属转型建议
已有 200+ 企业完成诊断