报告主题:Machine learning challenges at LinkedIn: Spark, TensorFlow, and beyond
报告摘要:机器学习工程与传统软件工程的根本不同之处在于,想法的不确定性和不可预测性,直到在生产中进行全面验证为止。因此,基于ML的产品(例如,推荐,排名)的决定因素是反复试验的速度。 结果,在LinkedIn数据组织中,多个团队专注于攻击“循环速度”的不同方面,包括工具,数据移动和计算。张哲概述了这些工作,同时着重于ML计算的性能和效率。 对于典型的LinkedIn ML工程师而言,实验周期始于探索数据以了解模式和基本统计模式。托管数据集(从LinkedIn网站跟踪并通过Kafka发布)存储在Hadoop上。对于这类轻量级的临时计算,该团队的重点是提供一个安全且易于使用的交互式环境。下一步是将托管数据集作为ML功能进行处理。此步骤需要广泛的数据处理。作为通用大数据框架,Spark非常适合此工作。从LinkedIn的规模来看,它发现加入大型数据集是一个严峻的挑战,尤其是对于密钥分布不均(偏斜)的情况。 Zhe深入研究了LinkedIn正在进行的优化Spark SQL的工作。准备好特征数据后,可以使用多种算法来训练模型。最重要的训练类型是基于GLMix(Spark)的线性模型,基于XGBoost(Spark)的树模型和基于TensorFlow的神经网络模型。 Zhe探索了LinkedIn最近在TensorFlow上进行的优化工作,以及在GLMix和XGBoost中在计算阶段之间进行数据混洗的挑战。生成ML模型后,最耗时的部分是部署到LinkedIn网站(在线)并进行A / B实验以分析模型性能。然后,将简要介绍LinkedIn的模型部署解决方案和A / B测试框架XLNT。
邀请嘉宾: Zhe Zhang是LinkedIn的工程经理,他领导着一支出色的工程团队,提供大数据服务(Hadoop分布式文件系统(HDFS),YARN,Spark,TensorFlow等),以为LinkedIn的商业智能和相关应用程序提供动力。 Zhe是Apache Hadoop PMC成员; 他领导了HDFS删除编码(HDFS-EC)的设计和开发。