专栏首页量化投资与机器学习机器学习 VS 传统编程

机器学习 VS 传统编程

机器学习和传统编程之间是否存在界限?请看:

什么是机器学习?

机器学习只是一个描述数学+算法的新词吗?有时这样的简化看起来很有趣,但显然机器学习更复杂。

让我们来看看一个更合理的解释。

简单地说,人工智能是一把涵盖图像处理、认知科学、神经网络等其他领域的保护伞。机器学习也是这个保护伞下的一部分。它的核心思想是,计算机不仅使用预先编写的算法,而且学习如何解决问题本身。Arthur Samuel(他实际上创造了ML这个词)给出了一个很好的定义:

Machine Learning is a field of study that gives computers the ability to learn without being explicitly programmed.

所以,机器学习教一台机器解决各种复杂的任务,这些任务很难用算法去解决。这些任务是什么?例如,它可以是你手机上的人脸识别或语音识别系统,自动驾驶汽车,书籍(亚马逊),电影(Netflix),音乐(Spotify) ......

任何可用的机器学习都可以有条件地归为三个层次。第一个层次是适用于像谷歌或IBM这样的主要技术巨头时。第二个层次是具有一定知识的学生可以使用它。第三个层次是甚至一个奶奶能够应对它。

我们目前所处的发展阶段是机器学习处于第二层和第三层的交汇处。

机器学习和编程的不同

In traditional programming you hard code the behavior of the program. In machine learning, you leave a lot of that to the machine to learn from data.

因此,这些术语无法互换:数据工程师不能替代传统编程工作,反之亦然。尽管每个数据工程师都必须使用至少一种编码语言,但传统编程只是其工作的一小部分。另一方面,我们不能说软件开发人员正在使用机器学习算法来启动一个网站。

机器学习就像人工智能一样,不是替代品,而是对传统编程方法的补充。例如,机器学习可用于为在线交易平台构建预测算法,而该平台的UI、数据可视化和其他元素将使用主流编程语言(如Ruby或Java)执行。

因此,主要的问题是:机器学习用于弥补传统编程的不足,但不足以完全实现某项任务。

这在实践中意味着什么?这里有一个很好的解释,汇率预测基于2种经典机器方法:

传统编程方法

对于任何解决方案,第一个任务都是创建最合适的算法并编写代码。然后,必须设置输入参数,实际上,如果实现的算法是正确的,它将产生预期的结果。

软件开发人员如何创建解决方案

然而,当我们需要预测某件事时,我们需要使用具有各种输入参数的算法。对于汇率的预测,必须添加昨天的汇率等详细信,发行货币的国家内部和外部的经济变化等等。

因此,我们手工设计了一个能够接受一组参数并基于输入数据预测新汇率的解决方案。

但是,非常重要的是要再添加一件事,或者更清楚地说明这种方法的一个问题。那是什么呢?

很简单,我们需要添加成百上千个参数,而它们有限的集允许构建一个非常基本且不可扩展的模型。对于任何人来说,处理如此庞大的数据数组都是很麻烦的。

然后我们有一个稍微不同的机器学习方法来完成这个任务,那么它是什么呢?

为了使用机器学习方法解决同样的问题,数据工程师使用了完全不同的过程。他们不需要自己开发算法,而是需要收集一系列历史数据,用于半自动模型构建。

在管理一组令人满意的数据之后,数据工程师将其加载到已经定制的机器学习算法中。结果是一个可以预测新结果的模型,接收新数据作为输入。

数据工程师如何使用机器学习开发解决方案

机器学习的一个显著特征是不需要构建模型。这个复杂而有意义的任务是由机器学习算法执行的。而机器学习专家只会对此添加一个小的编辑。

机器学习和编程之间的另一个显著差异是:由模型能够处理输入参数的数量决定。要想做出准确的预测,你必须添加成千上万的参数,并且精度很高,因为每一个参数都会影响最终的结果。一个人先天无法建立一个算法来合理地利用所有这些细节。

然而,对于机器学习,没有这样的限制。只要有足够的处理器能力和内存,就可以使用任意多的输入参数。毫无疑问,这一事实使机器学习在今天变得如此强大和广泛。

机器学习专家、数据科学家

程序员、软件工程师的区别

数据科学是一个多学科领域,使用科学方法、过程、算法和系统从结构化和非结构化数据中提取相关内容。

2012年,《哈佛商业评论》称其为21世纪最性感的工作。

因此,数据科学是另一个广泛的领域,就像计算机科学一样,只是数据科学旨在处理数据并从中提取有用的信息。

编程怎么样?如今的数据科学家为了研究也是多渠道的学习。他们不仅是程序员,而且通常还具有应用统计学或研究背景。有些人还从事软件工程,特别在其产品中提供数据科学/机器学习服务的公司。最有趣的是,数据科学家不一定要编程很6,但可以局限于Matlab、SPSS、SAS等工具。

那么机器学习工程师的职位是什么呢?

机器学习工程师的职位更“技术型”

机器学习工程师的标准任务通常类似于数据科学家。你还需要能够处理数据,尝试不同的机器学习算法来解决问题,创建原型和现成的解决方案。

我们要强调的主要差异有:

1、精通一种或多种语言(通常是Python)的编程技能;

2、较少强调在数据分析环境中工作的能力,而更多地强调机器学习算法;

3、能够在应用程序中使用现成的库来处理很多问题,例如使用Python的NumPy/SciPy;

4、能够使用Hadoop等创建分布式应用程序。

现在让我们回到编程,仔细看看分配给程序员的任务是什么。

程序员实际上是像数据分析师或业务系统开发人员那样的人。他们不必自己构建系统,只需针对现有系统编写代码即可。所以,我们可以把数据科学称为编程的新浪潮,但编程只是其中的一小部分。

但如果深入挖掘,我们会发现还有其他的术语,如软件工程师和软件开发人员,它们也不相似。例如,软件工程师必须设计工程。它们涉及生产应用程序、分布式系统、并发性、构建系统和微服务。另外,软件开发人员需要了解软件开发的所有周期,而不仅仅是实现(有时甚至不需要任何编程)。

那么,编程和机器学习,你现在感觉不同了吗?希望这篇文章能帮助你避免混淆这些术语。毫无疑问,他们都有一个共同点,那就是技术,但他们之间的差异要大得多。

本文分享自微信公众号 - 量化投资与机器学习(Lhtz_Jqxx),作者:QIML编辑部

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-05-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【干货】数据科学家的理想简历长啥样?手把手教你!

    曾经有人争论过Python或R是否是数据科学的首选语言。显然,市场需求告诉我们Python现在是领导者。同样值得注意的是,R比SAS更少提及。因此,如果你正在考...

    量化投资与机器学习微信公众号
  • AQR最新研究 | 机器能“学习”金融吗?

    机器学习对资产管理有用吗?如果有用,将有何用?资本市场与机器学习在取得成功的环境方面有着根本的不同,而对机器学习用于资产管理的研究才刚刚开始。早期的证据表明,机...

    量化投资与机器学习微信公众号
  • 配对交易千千万,强化学习最NB!(附文档+代码讲解)

    本推文会介绍如何在利用股票分钟数据,基于强化学习来做配对交易。包括基本概念和具体实现;这里采用的强化学习方法,是类似多臂老虎机(N-armed bandit)问...

    量化投资与机器学习微信公众号
  • 机器学习VS 编程,二者的最大区别是什么?

    有些人认为人工智能和机器学习的本质不过是大肆运用if语句,或者说编程知识罢了,建议说这话的人最好能拿出详细证据证明。本文将对比两个概念,并解释从事这两个领域的专...

    商业新知
  • 什么是机器学习?有哪些算法和分类?又有哪些应用?看完你就懂了

    导读:本文从大数据的概念讲起,主要介绍机器学习的基础概念,以及机器学习的发展过程,用一个形象的例子讲解大数据生态中的机器学习,并按照传统机器学习(包括分类、聚类...

    华章科技
  • 好书|第一章:The Machine Learning Landscape

    【需要英文电子书籍和配套的EPUB阅读器的朋友,请把这篇文章分享到您的朋友圈,添加我的个人微信:luqin360,截图给我,我会发给您;若是需要一起参与读书和讨...

    陆勤_数据人网
  • 观点 | 重新思考机器学习:大数据消耗已无必要

    翻译 | AI科技大本营(rgznai100) 参与 | Shawn,焦燕 导读 机器学习炒了这么这么多年,为什么我们还没看到企业有开发出任何这方面应用?本文会...

    AI科技大本营
  • 独家 | 菜鸟级机器学习入门(附代码实例)

    本文中,数据科学创业公司Yhat的前联合创始人,现任Waldo的联合创始人兼首席技术官Greg Lamp将会为我们这些机器学习菜鸟分享他对机器学习的看法。

    数据派THU
  • 推荐收藏 | 21 个必须知道的机器学习开源工具!

    你肯定已经了解流行的开源工具,如R、Python、Jupyter笔记本等。但是,除了这些流行的工具之外还有一个世界——一个隐藏在机器学习工具下的地方。这些并不像...

    Sam Gor
  • 谷歌教你学 AI -第一讲机器学习是什么?

    CDA字幕组 翻译整理 世界中充满了数据,大量的数据。图片、音乐、文字、电子表格还有视频。而且在短时间内丝毫没有放缓的趋势。机器学习给所有的数据带来意义。 A...

    CDA数据分析师

扫码关注云+社区

领取腾讯云代金券