为什么说大模型训练很难?

主要的难题在于当问题出现时,如何准确定位问题所在。


以下是一些实际操作中可能遇到的例子:假设你想要尝试100个实验,每个实验的训练成本都很高,比如几千块甚至上万块的GPU。在这种情况下,怎样判断哪些实验最有可能成功呢?另外,如何确定哪些数据值得训练,哪些数据不重要可以舍弃,以及哪些数据加入模型反而会导致效果变差?如果只有英文数据而没有中文数据,应该怎么办呢?


此外,巨大的数据量要存放在哪里,怎样保证存取的速度和机器不会被塞满?如果程序偶尔崩溃了,怎样调试是数据问题、硬件问题还是代码问题?如果是硬件问题,当几千块GPU中有一块会随机产生奇怪的报错,怎样在不重复训练的情况下找出是哪一块有问题呢?模型的训练需要一个月才能确定结果的好坏,但这就意味着花费了几千万元。如何能够及早得知大致的结果,以便停止那些没有前途的实验呢?


还有用户声称模型会编造谣言,那么应该如何修正这个问题呢?是通过调整参数?改变训练数据?还是调整模型结构?总之,大模型的训练就像是在一个巨大的解空间中搜索,每次尝试都伴随着巨大的时间和经济成本。那么,如何在最小的成本下找到最优解呢?

蓝海大脑 京ICP备18017748号-1