在我们学习一个小的项目的时候,我们别看我们有时候使用的是一个个封装好的库的模型,看起来很简单。我们可以从其中学到哪些东西呢?接下来我来总结一下。
1、对于一个NLP任务中,例如机器翻译,我们首先可以学习到机器翻译的整体过程,从数据选择->数据处理->模型选择->训练->模型评估。
2、数据的获取应该从哪里获取,是使用现有的数据集,还是从网上爬取数据,进行数据的清洗与标注(例如特定领域的数据),自己进行选择,关于数据的处理是占很大时间的。(这一部分的学习十分的重要)
3、对于模型的选择中,虽然可能大部分项目是使用的封装的很好的模型函数进行调用,那我们可以学习到什么呢?
- 在调整模型的参数的过程中,可以体会到参数对模型的性能有很大的影响,这需要我们进行多多的调试进行感悟。
- 而且对于不同模型的输入数据格式是什么样,我们也会了解,在以后的不同任务中,我们就可以很快的选择一个合适的模型进行任务的处理。
- 由于一个模型可以处理很多任务,说明这个模型可能是一个通用的语言模型或是某一任务的通用模型,需要我们进行输入或者输出的时候加上一个模块的处理,需要我们对不同任务进行积累学习。
4、对于模型的训练是需要很多知识的,我们需要进行积累。
- 我们关于这个具体的任务新增的模型模块是否有用,我们需要通过实验进行验证,这就需要我们合理的设置一系列实验去验证。
- 由于数据集的不同,我们只能通过现有的数据进行训练任务的调整。比如在机器翻译中,我们有一半的平行语料,还有一半的单语数据,我们可以通过对抗学习的方式进行训练。
- 我们还可以学习各种多任务学习的训练设计,用于模型的训练中。
- 如何进行训练集、验证集和测试集的划分,如何在训练中进行模型的验证,何时验证,何时保存检查点,避免模型在训练集中训练过渡导致模型过拟合,缺少泛化能力。
5、对于不同的任务,我们需要不同的评价指标进行模型的打分评估。在机器翻译中我们常用到的评估指标是BLEU。这些评价指标需要我们平常多看论文而且有意的要进行积累。
以上就是我对人工智能项目学习的阶段性总结,我们可以在项目中学习到什么,即使是一个很简单的小项目也有其学习价值,以便我们在以后需要某个模型或者某个任务中进行快速的验证自己特定任务的可行性和性能。
标签:训练,人工智能,模型,学习,任务,思考,我们,进行 From: https://www.cnblogs.com/zhangxuegold/p/17510643.html