(上一篇:人工智能AI与机器学习ML基础入门)
本篇序言:为什么您也能成为人工智能程序员,因为它与传统编程有着根本的不同。理解这一点,是掌握人工智能编程的关键。传统编程中,程序员的任务是实现具体的算法和流程。比如,要编写一个机票订购系统,程序员需要详细规划出整个流程,从用户下单、搜索航班、计算折扣、选择保险等每个步骤的规则,然后根据这些规则一步步用代码实现。而人工智能编程则不需要程序员为每个步骤写出具体的规则。相反,程序员的任务是收集大量的结果和需求数据,然后让AI通过这些数据进行学习。数据越多,AI就越能自动优化订票流程和决策的规则。换句话说,AI会根据学习到的数据逐步变得更智能,而不是依赖程序员事先设计好每个步骤。这就是人工智能编程与传统编程的本质区别。
进入机器学习...
从编程到机器学习
让我们回顾一下用于展示传统编程的图示(图 1-8)。这里我们有对数据进行操作的规则,并给我们答案。在我们的活动检测场景中,数据是一个人移动的速度;基于此,我们可以编写规则来检测他们的活动,是走路、骑车还是跑步。当涉及到打高尔夫时,我们遇到了瓶颈,因为我们无法制定出判断该活动的规则。
图 1-8. 传统编程流程
但如果我们在这个图中把轴调换一下会发生什么呢?如果我们不是自己制定规则,而是找到答案,然后通过数据来推导出规则呢?
图 1-9 展示了这将会是什么样子。我们可以将这个高级别的图示看作是机器学习的定义。
图 1-9. 机器学习
那么这意味着什么呢?现在我们不再需要自己推导出规则,而是获取大量关于我们场景的数据,并对这些数据进行标注,计算机可以通过这些数据找出使某一数据匹配特定标签的规则,以及另一数据匹配不同标签的规则。
这在我们的活动检测场景中会如何工作呢?我们可以查看所有给我们提供关于这个人的数据的传感器。如果他们有一个可以检测心率、位置、速度等信息的可穿戴设备,并且我们在他们进行不同活动时收集了大量的此类数据,那么我们最终会得到这样的数据场景:“这是走路的样子”,“这是跑步的样子”等等(图 1-10)。
图 1-10. 收集和标注数据
现在,作为程序员,我们的工作从制定规则、确定活动,转变为编写代码以匹配数据和标签。如果我们能够做到这一点,那么我们可以扩展使用代码实现的场景。机器学习是一种使我们能够做到这一点的技术,但为了开始,我们需要一个框架——这就是 TensorFlow 登场的地方。在接下来的部分,我们将介绍 TensorFlow 是什么以及如何安装它,然后在本章稍后,你将编写第一个学习两个值之间模式的代码,就像前面场景中的那样。这是一个简单的“Hello World”场景,但它包含了在非常复杂的场景中使用的基础代码模式。
人工智能领域广泛而抽象,涵盖了一切让计算机像人类一样思考和行动的内容。人类习得新行为的方式之一是通过示例进行学习。因此,机器学习这一学科可以看作是通向人工智能开发的入门途径。通过它,机器可以像人类一样“看”(这一领域称为计算机视觉)、像人类一样“读”文本(自然语言处理),以及更多。在本连载中,我们将使用 TensorFlow 框架来介绍机器学习的基础知识。
下一篇Google的TensorFlow介绍...