最近在看深度学习论文,和技术文章,Pipeline是很常见的单词,但理解一直很模糊,查询了资料,做一些笔记。
pipeline,中文意为管线,意义等同于流水线。
一个生动的形容
Pipeline,你 土味一点 你把它 翻译成 一条龙服务
专业一点,叫 它 综合解决方案,就行。
例子1,最典型的就是Gpu渲染管线,它指渲染一个画面需要经过多少到工序。
例子2,爬虫框架里面。它就是指某个项目或者框架里面需要用到流水线的设计来简化设计,降低复杂度并提高性能。是一种设计方法,是我们将现实中的社会分工借鉴并运用到计算机编程的例子。
例子3,算法或者大数据分析里的指可重复使用,针对新的数据,直接输入数据,可以得到结果的过程。
例子4,回到深度学习模型框架的Pipeline
,和前面三个例子类似,现在的深度学习模型也由很多组件步骤链接起来的。
一个基础的 深度学习的Pipeline 主要包含了下述 5 个步骤:
- 数据读取
- 数据预处理
- 创建模型(具体到模型也有相应的Pipeline,比如模型的具体构成部分:比如GCN+Attention+MLP的混合模型)
- 评估模型结果
- 模型调参
上5个步骤可以抽象为一个包括多个步骤的流水线式工作,从数据收集开始至输出我们需要的最终结果。
总之,深度学习的Pipeline
就是模型实现的步骤。深度学习现在的Pipeline
一般都比较强调模型的组件构成流程。
baseline意思是基线,这个概念是作为算法提升的参照物而存在的,相当于一个基础模型,可以以此为基准来比较对模型的改进是否有效。
通常在一些竞赛或项目中,baseline就是指能够顺利完成数据预处理、基础的特征工程、模型建立以及结果输出与评价,然后通过深入进行数据处理、特征提取、模型调参与模型提升或融合,使得baseline可以得到改进。
所以这个没有明确的指代,改进后的模型也可以作为后续模型的baseline。
参考:
https://www.cnblogs.com/wqbin/p/11611469.html
https://www.zhihu.com/question/267436664