LinkedIn开源的Photon机器学习 photon-ml

Apache
Scala 查看源码»
跨平台
Linkedin
2016-06-20
花仲马

Photon机器学习是什么?

Photon机器学习提供支持大规模回归,支持带L1、L2和elastic-net正则化的线性回归、逻辑回归和泊松回归。Photon机器学习提供可选择的模型诊断,创建表格来帮助诊断模型和拟合的优化问题。Photon机器学习实现了实验性质的广义混合效应模型,下面会详细介绍。

在LinkedIn如何应用Photon机器学习?

典型的机器学习系统以下面的流程图表示。第一阶段是数据预处理,从在线系统清晰数据,创建数据表,特征提取。接下来的阶段是应用机器学习算法为推荐系统或者搜索系统学习得到好的评分函数,进而选择最好的模型。最后,最优模型进行在线A/B test发布,来测试其对用户体验的影响。 

Photon机器学习是LinkedIn公司模型训练的核心,可作为其它机器学习库的热插拔替代。在上面的流程图中,圆圈代表行为,圆柱体代表数据集。

如何在集群中运行Photon机器学习?

在LinkedIn公司,Photon机器学习运行使用Spark on Yarn模式,与其它Hadoop MapReduce应用共用同一个集群。我们可以很容易在同一个工作流中混合使用Photon机器学习和传统的Hadoop MapReduce程序或者脚本。模型训练从Hadoop MapReduce迁移到Spark on Yarn可提速10到30x倍。为了更好的使用Spark,机器学习算法团队贡献了支持Spark的Dr. Elephant。

Spark和Hadoop工作流共用同一个集群,可支持LinkedIn已有的机器学习输入和输出格式,极大的提高Photon机器学习在LinkedIn的推广。现在许多团队在开发关联应用和安全数据科学时使用Photon机器学习,一些团队也在线上使用。

Photon机器学习的发展方向:GAME

作者开源Photon机器学习到社区,对其他人构建和应用机器学习会有工业级别的影响。虽然当前有许多开源的机器学习库,但作者认为Photon机器学习是相当重要的补充。Photon机器学习提供广义混合效应模型(GAME)。

当前,Photon机器学习实现GAME,支持广义线性混合效应模型(GLMix)。GLMix模型由固定效应和多随机效应模型组成。固定效应模型对应传统模型和广义线性模型,假设每个观测变量是独立的。随机效应在固定效应的留存中附加多粒度参数(users, items, segments)获取额外的异质性。一般规则化是用来避免过拟合。并且,随机效应会引起观测变量的边际依赖。 

GAME采用坐标下降法依次解决每个系数。

我们使用坐标下降法优化所有问题,单步按序调试每个效应,使用合适的优化器解决子问题。对于固定效应坐标,我们使用分布式回归算法按列分区数据。Spark的RDD每次迭代利用本地数据优势,在不用shuffle数据的情况下快速优化。为了有效地解决随机效应坐标,我们根据随机变量分区数据,用单机算法解决随机效应坐标。

GAME模型提供精确的图表来辅助研究型工程师定位问题。作者希望使用这些技术更广泛的提高推荐系统的算法。LinkedIn公司内部使用A/B test显示Photon机器学习训练GLMix模型在工作推荐中提高了百分之十五到百分之三十,在邮件推荐中提高百分之十到百分之二十(基于点击率)。虽然这些test只是在早期阶段,但得到的结果表明Photon机器学习能显著的提高推荐效果。

Photon机器学习提供的GAME算法训练模型,作者后续将持续提高它的稳健性和易用性。除了广义线性模型外,作者已经开发了分解式随机效应模型试验性代码,利用矩阵分解来和随机效应交互。在未来,作者将会继续用广义混合框架实现其它的机器学习算法。

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

Eclipse Photon (4.8)值得关注的变化

Eclipse Photon 近期发布了,photon 是光子的意思。 Eclipse Java EE IDE for Web Developers. Version: Photon Release (4.8.0) Build id: 20180619-1200 吸引人的变化有: 可以编辑 projec...

2018/07/12 16:20
572
0
eclipse最新版本photon

eclipse新版本photon(译名:光子),听着很逼格的样子 下载尝尝鲜 懒人地址: 链接:https://pan.baidu.com/s/13Tm0d5Ozuoyx1wTl7nwTWA 密码:0ism 官网下载地址 http://www.eclipse.org/d...

2018/07/03 21:48
1K
0
kubernetes1.5新特性(二):支持Photon卷插件

在Kubernetes中卷的作用在于提供给POD持久化存储,这些持久化存储可以挂载到POD中的容器上,进而给容器提供持久化存储。 从图中可以看到结构体PodSpec有个属性是Volumes,通过这个Volumes属性...

04/12 21:01
8
0
Photon服务器引擎 入门教程一

首先去 PhotonServer SDK下载服务器端SDK,需要登录的,就先注册一个账号吧. 解压出来是四个文件 deploy:主要存放photon的服务器控制程序和服务端Demo doc:顾名思义,文档 lib:Photon类库...

2013/05/24 21:50
237
0
用分布式存储VSAN实现Harbor Registry的高可用方案

用分布式存储VSAN实现Harbor Registry的高可用方案 陈实 张海宁 不久前,VMware发布了Docker容器数据卷的驱动(Docker Volume Driver for vSphere)1.0 beta版本,使得Docker宿主机能够直接在...

2016/10/09 12:02
468
1
6大Container OS介绍

目前企业要自行部署管理大量Container,仍需要通过Container OS专用型操作系统,多家厂商也趁此纷纷推出自己的Container OS版本。

2015/12/20 11:29
1K
0
Eclipse无法打开 Eclipse MarketPlace的解决办法

问题详情 Eclipse的版本更新到了4.8.0,点击help-->Eclipse MarketPlace 后无任何反应,无报错,打不开 解决办法 help-->install new software 输入http://download.eclipse.org/mpc/photon/ 重...

2018/07/06 10:00
3.5K
2
centos安装eclipse

1.先检验是否安装jdk:java -version 2.下载安装文件(tar.gz)并解压:tar -zxvf eclipse-jee-photon-R-linux-gtk-x86_64.tar.gz 3.将eclipse执行文件链接到用户目录:ln -s /usr/java/ecl...

2018/07/22 22:49
9
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部