在这一的数据秀里我采访了Aurélien Géron。Aurélien是一个创业者、数据科学家,还是最近流行的一本新书《用Scikit-Learn和TensorFlow实践机器学习》的作者。Géron的新书的目标读者是那些想开始学习机器学习并希望在现实世界产品里部署机器学习模型的软件工程师们。
随着越来越多的企业采用大数据和数据科学技术,一个新的群体正在出现。他们有着很强的软件工程的技能,同时还拥有使用机器学习和统计分析的经验。开发和构建数据产品的需求带来了大家所说的“机器学习工程师”的需求的增长。他们是既能够开发数据科学的原型,也能工作于生产系统。
本图由Ben Lorica绘制
作为一名咨询机器学习工程师Géron发现对于他的业务需求很旺盛。他希望他的新书能成为想进入这个领域的人士的一份重要资料。
下面是本次采访中的一些重点:
由产品经理转变为机器学习工程师
我决定加入谷歌,作为YouTube的视频分类团队的首席产品经理。这个团队的目标是构建一个能自动发现每个视频内容的系统。谷歌有一个巨大的知识图谱,其中包括几亿个主题。我们的目标就是把每个视频和它所包含的知识图谱里的主题建立连接。
我是一个产品经理,我也一直是一个软件工程师。我觉得我有点远离技术了;我想继续写代码。这是第一个原因。第二个原因是TensorFlow出现了,在谷歌内部有非常多的关于它的讨论。我开始使用TensorFlow,然后就爱不释手。我知道TensorFlow会变得很流行。我觉得写它会产生一本好书。
为工程师写一本机器学习的书
我上了所有能上的课程。有谷歌内部的机器学习的课程,那里有不少好老师。我也尽可能地从书本上学习,从吴恩达的Coursera在线课程学习,以及任何你能想到的资源里来学习机器学习。但是我对这些书有些失望。这些书不错,但是有很多书是研究人员写的,它们没有什么实践内容。我是一个软件工程师,我想编程。这就是为什么我决定要写一个本真正关于TensorFlow实践的书,里面有工程师们能选择并能立即使用的代码和例子。另外一点是,尽管有一些面向工程师的书籍,但是它们的内容都尽可能地远离基础的数学。另外,很多现有书籍里面的内容只是玩具性的功能、玩具性的代码。这让我有些失望,因为我需要的是能部署到生产系统上的代码。这些就是整个这本书的想法的来源:为工程师们写一本关于TensorFlow的书,里面包括可用于生产系统的例子。
业务指标和机器学习的指标是截然不同的
你可以用几个月来调优一个很棒的分类器,让它能以98%的精确度来识别一个特定的主题集。但当你真正把它上线后才发现它并没有对你的业务指标带来什么影响。
第一步就是要真正地去理解业务指标,或者业务目标是什么。你将如何去测量它们?然后去尝试看看你能否有机会去改进一些东西。一个有趣的技巧就是尝试人工去完成这个任务。让一个人去试着完成这个任务,然后看看是否能带来影响。并不是每次都能产生影响,但是如果人可以做到,那么就值得花费几个月的时间来开发一个自动实现的架构了。如果人工不能带来提升,那么可能由机器来更好地完成它也会充满挑战。经管有可能,但是会比较的艰难。
确保你知道业务目标是什么,并绝不要偏离它。我见过有人开始改进模型,但他们其实并没有合适的指标来观察是否真正的有提升。听起来可能很傻,但是你需要做的第一批事情之一就是确保你有一个明确定义的、且大家都一致同意的测量指标。尽管说“我觉得这个架构会工作得更好”然后就投入开发工作是非常吸引人的,但这并没有带来任何实质的提升,因为你没有一个明确可用的测量指标。
相关资料:
- 《用Scikit-Learn和TensorFlow实践机器学习》——Aurélien Géron的新书
- 《什么是实践中真正在用的数据科学系统?》——Mikio Braun谈如何把数据科学带入生产系统应用
- 深度学习视频集(2016 Strata数据大会)
- 《深度学习基础》
- 《用Spark进行高级分析》
请订阅O’Reilly的数据秀播客来更好地把握驱动大数据、数据科学和人工智能的机会与技术。也可以在TuneIn,iTunes,SoundCloud,RSS找到我们。
更多内容可以参考Strata北京2017的相关议题。