机器学习在领英的规模化应用( 五 )

建模过程实际上始于对问题的探索 。 目标是什么?目标函数是什么?有什么特征?数据有哪些?对于这些问题 , 工程师需要做无数个实验来探索数据 , 进行特征工程 , 调整模型和超参数 。 为了提高这一阶段的工作效率 , 领英构建了集成了 Pro-ML内核的Jupyter Notebook 。 在Jupyter Notebook的帮助下 , 工程师可以一步一步地进行数据探索、特征选择和模型绘制 , 并以交互的方式做实验 。 Jupyter Notebook由领英的Spark集群提供计算资源 , 这样工程师就可以在线完成工作而不需要把数据下载到本地 , 不仅提高了他们的工作效率 , 同时也保护了用户隐私 。

为了定义模型 , 除了Jupyter Notebook , 领英还构建了一种领域特定语言(Domain-specific Language DSL)叫做Quasar 。 本质上来说 , 机器学习模型就是有向无环图(DAG) , 它定义了输入特征和在这些特征上的转换 。 Quasar DSL是领英用来定义模型的语言 , 它为建模者提供了几乎所有常见的特征转换函数 。 因此AI工程师们可以专注于新特征或者特征组合实验 , 而不需要书写大量重复代码来做特征转换 。 Quasar的另一个优势是离线训练出来的模型可以直接部署到线上 , 大大简化了模型从离线到在线的过渡 。

推荐阅读