1. 大规模机器学习
1.1 大型数据集
现实世界中,往往数据集的规模很大,譬如人口普查数据、谷歌、阿里、亚马逊,....等这些互联网公司产生的海量数量。不论采用怎样的算法或优化,可能最后决定模型准确度的主要因素就是数据集的规模,于是,研究和优化大规模数据集的训练变成了很重要的内容。针对大数据集,如果我们一上来就用传统的梯度下降算法,可能往往会训练很慢很慢,达不到预期要求。那么我们该投入多少数据量来训练模型?便成了一个很实际的问题。譬如,数据总量有1亿条,那么我是不是将数据集的尺寸设为m = 100000000,来投入模型训练 ?
这时,行之有效的方法是投入一个较小数量的样本经行检查式的预训练,并观察训练损失、验证损失和数据集数量m的关系曲线:
假设我们预训练数据集尺寸m = 1000, 训练和交叉验证数据集的损失和m的关系如上右图,则表示,即使我们