Pipeline
在 Pipcook 中,我们使用 Pipeline 来表示一个模型的训练工作流,那么这个 Pipeline 到底是什么样的呢?在 Pipeline 中,开发者能够使用 JSON 来描述从样本收集、模型定义、模型训练和模型评估这些阶段。
{
"plugins": {
"dataCollect": {
"package": "@pipcook/plugins-csv-data-collect",
"params": {
"url": "http://foobar"
}
},
"dataAccess": {
"package": "@pipcook/plugins-csv-data-access",
"params": {
"labelColumn": "output"
}
},
"modelDefine": {
"package": "@pipcook/plugins-bayesian-model-define"
},
"modelTrain": {
"package": "@pipcook/plugins-bayesian-model-train"
},
"modelEvaluate": {
"package": "@pipcook/plugins-bayesian-model-evaluate"
}
}
}
如上面文件所示,一个 Pipeline 由不同的插件组成,然后我们为每个插件添加了 params
字段来传递不同的参数。接着,Pipeline 解释器就会根据这个 JSON 文件中定义的插件和参数,来执行不同的操作。
如果想获取更多插件相关的知识,可以阅读插件使用手册。
下一步,我们在定义好一个 Pipeline 文件后,就能通过 Pipcook 来运行它了。
准备工作
通过命令行工具配置指南来做运行 Pipeline 前的准备。
运行
将上面的 Pipeline 保存在任何地方,然后执行:
$ pipcook run /path/to/your/pipeline-config.json
执行完成后,训练好的模型会生成在当前工作目录下的 output
中。
📂output
┣ 📂logs
┣ 📂model
┣ 📜package.json
┣ 📜metadata.json
┗ 📜index.js
为了使用训练好的模型,还需要完成以下步骤:
$ npm install
上述的命令会帮助你安装依赖,它们包括插件以及插件所依赖的 Python 包。Pipcook 也提供了一条命令,来使用 tuna 镜像来下载 Python 包:
$ BOA_TUNA=1 npm install
当 output
初始化完成,就可以使用 import
来导入你的模型了:
import * as predict from './output';
predict('your input data');