fastai 缩写指南

正如fastai 风格指南中所述,我们遵循霍夫曼编码(Huffman Coding)原则来命名符号,该原则基本意味着:

常用和通用的概念应该使用较短的名称。不应将短序列浪费在不常用的概念上。

fastai 还遵循生命周期命名原则:符号的生命周期越短,其名称应该越短。

这意味着:- 在列表推导式lambda函数、局部辅助函数中,使用激进缩写(Aggressive Abbreviations)。- 在函数内部的局部临时变量有时使用激进缩写。- 大多数其他地方使用常用缩写(Common Abbreviations),特别是用于函数参数函数名称变量。- 模块名称、类名称或构造函数方法使用少量或不使用缩写(Light or No Abbreviations),因为它们基本上永久存在。然而,如果一个类或模块非常流行,我们可以考虑使用缩写来缩短其名称。

本文档列出了 fastai 项目中一贯使用的常见概念的缩写。对于特定领域概念的命名,应查阅其对应的模块文档。概念按语义顺序分组和列出。请注意,总会有例外情况,特别是当我们试图遵循某个库的命名约定。

概念 缩写 组合示例
后缀
某物的多个(复数) s xs, ys, tfms, args, ss
内部属性或方法 _ data_, V_()
前缀
检查是否满足 is_ is_reg, is_multi, is_single, is_test, is_correct
开启/关闭某个特性 use_ use_bn
某物的数量(复数) n_ n_embs, n_factors, n_users, n_items
计数某物 num_ num_features(), num_gpus()
转换为某物 to_ to_gpu(), to_cpu(), to_np()
中缀
概念之间的转换 2 name2idx(), label2idx(), seq2seq
激进缩写
函数 f
torch 输入 x
键,值 k,v for k,v in d.items()
其他短范围对 p,q listify(p,q) (同 Python 标准库)
索引 i
通用对象参数 o [o for o in list], lambda o: o
变量 v V(), VV()
张量 t T()
数组 a A()
使用首字母 weight -> w, model -> m
通用
函数 fn opt_fn, init_fn, reg_fn
处理 proc proc_col
转换 tfm tfm_y, TfmType
评估 eval eval()
参数 arg
输入 x
输入 / 输出 io
对象 obj
字符串 s
cl cl, classes
来源 src
目标 dst
目录 dir
百分比 p
比率,某物的比例 r
计数 cnt
配置 cfg
随机 rand
工具函数 util
文件名 fname
阈值 thresh
数据
元素数量 n
长度 len
大小 sz
数组 arr label_arr
字典 dict
序列 seq
数据集 ds train_ds
数据加载器 dl train_dl
数据帧 df train_df
训练集 训练集 train_ds, train_dl, train_x, train_y
验证集 valid valid_ds, valid_dl, valid_x, valid_y
测试集 测试集 test_ds, test_dl
类别数量 c
批次 b
批次的 x 部分 xb
批次的 y 部分 yb
批次大小 bs
多目标 multi is_multi
回归 reg is_reg
迭代,迭代器 iter train_iter, valid_iter
torch 输入 x
目标 y
依赖变量张量 dep
独立变量张量 indep
预测 pred
输出 out
col dep_col
连续变量 cont conts
类别变量 cat cat, cats
连续列 cont_cols
类别列 cat_cols
依赖列 dep_col
索引 idx
身份 id
第一个元素 head
最后一个元素 tail
唯一 uniq
残差 res
标签 lbl (不常见)
增强 aug
填充 pad
概率 pr
图像 img
矩形 rect
颜色 colr
锚框 anc
边界框 bb
建模
初始化 init
语言模型 lm
循环神经网络 rnn
卷积神经网络 convnet
模型数据 md
线性 lin
嵌入 emb
批归一化 bn
丢弃法 drop
全连接 fc
卷积 conv
隐藏 hid
优化器 (例如 Adam) opt
层组学习率优化器 layer_opt
准则 crit
权重衰减 wd
动量 mom
交叉验证 cv
学习率 lr
调度 sched
循环长度 cl
乘数 mult
激活 actn
CV 计算机视觉
fig
图像 im
使用 opencv 转换图像 _cv zoom_cv(), rotate_cv(), stretch_cv()
NLP 自然语言处理 (nlp)
标记 tok
序列长度 sl
随时间反向传播 bptt