序言
在深度学习的广阔天地里,数据的角色无异于燃料之于引擎,是推动模型性能跃升不可或缺的关键因素。随着技术的飞速发展,我们愈发认识到“数据为王”的真谛。深度学习模型,凭借其强大的特征学习与表示能力,在图像识别、自然语言处理、推荐系统等诸多领域展现出非凡的潜力。然而,这些潜力的充分挖掘,往往依赖于大规模、高质量的数据集。因此,在构建或优化深度学习模型时,是否应致力于收集更多数据,成为了一个既基础又核心的问题。
是否收集更多数据
-
在建立第一个端到端的系统后,就可以度量算法性能,改进算法。许多机器学习新手都忍不住尝试很多不同的算法来进行改进。然而,往往收集更多的数据比改进学习算法要见效得多。
-
怎样判断是否要收集更多的数据?
- 首先,确定训练集上的性能是否可接受。
- 如果训练集上的性能差,学习算法还不能在训练集上学习出良好的模型,那么就没必要收集更多的数据。
- 反之,可以尝试增加更多的网络层或每层增加更多的隐藏单元,增加模型的规模。
- 此外,也可以尝试调整学习率等超参数来改进学习算法。
- 如果更大的模型和仔细调试的优化算法没有效果,那么问题可能源自训练数据的质量。数据可能含太多噪扰,或是可能不包含预测输出所需的正确输入。这意味着需要重新开始,收集更干净的数据或是收集特征更丰富的数据集。
- 如果训练集上的性能是可接受的,那么度量测试集上的性能。
- 如果测试集上的性能也是可以接受的,那么就顺利完成了。
- 如果测试集上的性能比训练集的要差得多,那么收集更多的数据是最有效的解决方案之一。
- 首先,确定训练集上的性能是否可接受。
-
这时主要的考虑是收集更多数据的代价和可行性,其他方法降低测试误差的代价和可行性,和增加数据数量能否显著提升测试集性能。
- 在拥有百万甚至上亿用户的大型网络公司,收集大型数据集是可行的,并且这样做的成本可能比其他方法要少很多,所以答案几乎总是收集更多的训练数据。例如,收集大型带标签数据集是解决对象识别问题的主要因素之一。
- 在其他情况下,如医疗应用,收集更多的数据可能代价很高或者不可行。
-
一个替代收集更多数据的简单方法是:降低模型规模或是改进正则化,如调整超参数,如权重衰减系数,或是加入正则化策略,如 Dropout \text{Dropout} Dropout。如果调整正则化超参数后,训练集性能和测试集性能之间的差距还是不可接受,那么收集更多的数据是可取的。
-
在决定是否收集更多的数据时,也需要确定收集多少数据。
- 如
图例1
所示,绘制曲线显示训练集规模和泛化误差之间的关系是很有帮助的。 - 根据走势延伸曲线,可以预测还需要多少训练数据来达到一定的性能。
- 通常,加入总数目一小部分的样本不会对泛化误差产生显著的影响。
- 因此,建议在对数尺度上考虑训练集的大小,例如在新的实验上倍增样本数目。
- 如
-
如果收集更多的数据是不可行的,那么改进泛化误差的唯一方法是改进学习算法本身。这属于研究领域,并非对应用实践者的建议。
- 图例1:训练集大小对训练误差,测试误差以及最佳容量的影响。
-
训练集大小对训练误差,测试误差以及最佳容量的影响。
-
说明:
- 通过给一个 5 5 5 阶多项式添加适当大小的噪声,我们构造了一个合成的回归问题,生成单个测试集,然后生成一些不同尺寸的训练集。为了描述 95 % 95\% 95% 置信区间的误差条,对于每一个尺寸,我们生成了 40 40 40 个不同的训练集。
- 上图:
- 两个不同的模型上训练集和测试集的 MSE \text{MSE} MSE,一个二次模型,另一个模型的阶数通过最小化测试误差来选择。
- 两个模型都是用闭式解来拟合。
- 对于二次模型来说,当训练集增加时训练误差也随之增大。
- 这是由于越大的数据集越难以拟合。
- 同时,测试误差随之减小,因为关于训练数据的不正确的假设越来越少。
- 二次模型的容量并不足以解决这个问题,所以它的测试误差趋近于一个较高的值。
- 最佳容量点处的测试误差趋近于贝叶斯误差。
- 训练误差可以低于贝叶斯误差,因为训练算法有能力记住训练集中特定的样本。
- 当训练集趋向于无穷大时,任何固定容量的模型(在这里指的是二次模型)的训练误差都至少增至贝叶斯误差。
- 下图:
- 当训练集大小增大时,最佳容量(在这里是用最优多项式回归器的阶数衡量的)也会随之增大。
- 最佳容量在达到足够捕捉模型复杂度之后就不再增长了。
-
总结
- 综上所述,对于深度学习而言,收集更多数据无疑是一条通往更高性能与更广泛应用前景的必由之路。
- 数据量的增加,能够显著提升模型的泛化能力,减少过拟合风险,使模型在面对未知或复杂情况时表现出更强的鲁棒性。当然,这并不意味着盲目追求数据量的最大化,数据的多样性、准确性和标签的精确性同样重要。
- 在实际操作中,我们需要根据任务需求、资源限制及数据获取成本等多方面因素,综合考量并制定合理的数据收集策略。
- 总之,深度学习领域内的竞争,在很大程度上已演变为数据质量与数量的较量,而在这场较量中,持续不断地收集并有效利用数据,将是我们不断突破技术边界、创造更多可能性的关键所在。
往期内容回顾
应用数学与机器学习基础 - 容量、过拟合和欠拟合篇
深度学习中的正则化技术 - Dropout篇