写点什么

Josh Wills 谈机器学习的生产环境

  • 2014-10-11
  • 本文字数:1339 字

    阅读完需:约 4 分钟

大数据加快商业化步伐,使互联网行业出现了新岗位与新环境。“数据科学家”是大数据时代互联网行业的新型专门人才,而机器学习的工业化基础设施是互联网行业新的生产环境。

在 2014 年 6 月的 Midwest.io 会议上,数据科学家 Josh Wills 做了一场名为“从实验室走向工厂:建设机器学习的生产环境”的主题演讲,旨在讨论这种机器学习的工业环境如何实现。

Josh Wills 将“数据科学家”分为两类,一类是善于编写程序的统计学家,另一类是选对了项目的软件工程师,他关注数据挖掘的程序实现,从理论与实践两个层次看待机器学习。Josh 将机器学习也分为两类,即理论性机器学习与工业机器学习。

在演讲中,Josh Wills 指出,理论性的机器学习就是应用数学,甚至就是最优化理论的应用。到目前,这仍然是机器学习的教科书设定,但工业机器学习与之并不完全相同。工业机器学习的特点体现在:

  1. 整体性高于准确性。理论性机器学习中准确性最为重要,这需要耗费长时间的计算。而在工业环境中速度为王,为了体现系统的整体性,准确性让位给速度,只能屈居下首。
  2. 多重复杂性。机器学习理论主要就是在最优化目标函数,而要找到真正简单干净的目标函数并不现实。大部分时候,目标函数都很繁多而且包含冲突,需要用 Pareto 的多目标方法,在不消极影响其他目标的同时整合成一个目标函数。而从整体上看,工业机器学习系统非常复杂,以至于很难能够看透整个系统。
  3. 通过检验过程优化。建立假设的过程将检验这个过程本身并改造整个机器学习系统,检验过程本身提供知识,而这种知识远比检验结果更重要。

Josh Wills 同时提出,工业机器学习的基本框架是“一个模型与两种模式”,他举了 Oryx、Airbnb 以及 Etsy 的例子说明这一框架。Airbnb 是一家房屋租赁社区,他们发表的博文“建构风险评估的机器学习系统”中,他们建立机器学习系统的经验是,离线建立并存储分析模型,再上传到生产环境中使用。手工艺品商店 Etsy 的经验与之类似,他们的工业机器学习系统称为 Conjecture,是在 Hadoop 上搭建的可升级机器学习系统,Conjecture 以 JSON 格式定义离线准备模型,从而转化为 PHP 代码运行。Josh 指出这些系统将数据当作“键值”管理的共性,以及离线准备模型的“分析模式”、转换模型在生产环境中使用的“生产模式”。

现阶段的机器学习生产环境,其分析模式与生产模式中完全不同的数据使用方式实际上非常低效。尽管 Josh 目前还无法实现,但他认为特征设计将成为解决这一问题的关键。模型的分析准备是把零星的图表拼凑成所需的整体数据,生产用的数据只能从用户处或从调查中得到,所以需要一种简单的方法将离线数据转换为在线数据。这种方法的核心问题在于数据的模型,它需要以特定的、重复的属性的数据来刻画用户实体的模型,所谓的用户实体必须规范化储存,且实体的数据如交易记录等重复性数据需以数组形式储存。Josh 以 JSON 格式数据为例进行了说明,并将这种模式称为“超新星”模式。

Josh Wills 为深入研究工业机器学习环境提供了一种思路,从行业应用的实际出发,机器学习的设计方式还可以继续优化。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-10-11 02:031692
用户头像

发布了 268 篇内容, 共 138.0 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

谈谈前端性能优化-面试版

loveX001

JavaScript 前端

前端一面react面试题(持续更新中)

beifeng1996

前端 React

能不能手写Vue响应式?前端面试进阶

bb_xiaxia1998

Vue 前端

湖仓一体电商项目(二十一):数据发布接口和数据可视化

Lansonli

湖仓一体电商项目

一块GPU搞定ChatGPT;ML系统入坑指南;理解GPU底层架构

OneFlow

人工智能 深度学习

实现一个简单的Database11(译文)

GreatSQL

MySQ percona server greatsql greatsql社区

阿里前端常考vue面试题汇总

bb_xiaxia1998

Vue 前端

快来解锁小程序蓝牙开发技能

南城FE

小程序 微信 前端开发 uniapp 蓝牙

解密游戏推荐系统的建设之路

vivo互联网技术

架构 推荐系统

零代码(低代码)工作流引擎(cube-flowable)

风清扬

低代码 工作流引擎 动态表单

有趣的`events_statements_current`表问题

GreatSQL

MySQL greatsql greatsql社区

用于双目重建中的GPU编程:julia-cuda

京东科技开发者

机器学习 gpu 编码 Code julia

学生信息管理系统

lory(侯保国)

这些js原型及原型链面试题你能做对几道

loveX001

JavaScript 前端

首届OpenHarmony技术峰会携手产业界与学术界,共建技术与人才生态

极客天地

运维训练营第15周作业

好吃不贵

INFINI 产品更新|Loadrun 首发亮相

极限实验室

console Gateway infini loadgen loadrun

高级前端必会面试题(边面边更)

loveX001

JavaScript 前端

说说Vue响应式系统中的Watcher和Dep的关系-面试进阶

bb_xiaxia1998

Vue 前端

瓴羊Quick BI智能报表打破“中式”报表限制,提速增效

夏日星河

JavaScript 为什么要进行变量提升,它导致了什么问题?

Immerse

JavaScript 面试 js 前端面试题 超全前端面试题

react的jsx和React.createElement是什么关系?面试常问

beifeng1996

前端 React

百度前端高频react面试题(持续更新中)

beifeng1996

前端 React

走进RocketMQ(二)部署模式与实战

白裤

Java RocketMQ RocketMQ实战 RocketMQ部署模式

富表智能可视化设计工具(FusionView)

风清扬

数据分析 低代码 可视化 数据大屏 数据可视化拖拽

前端必会面试题指南

loveX001

JavaScript 前端

React面试:谈谈虚拟DOM,Diff算法与Key机制

beifeng1996

前端 React

前端常考react面试题(持续更新中)

beifeng1996

前端 React

Josh Wills谈机器学习的生产环境_语言 & 开发_张天雷_InfoQ精选文章