1.1.2 人工智能是什么
很多书籍、文章经常把人工智能的技术原理和实现方式讲解得很深入,包含很多计算公式和专业名词。这对于专业技术开发者来说,可以帮助他们理解人工智能技术的底层原理和架构,但对于更多不懂技术的读者来说,可能因为“公式”和“名词”深奥,使他们最终依旧对人工智能感到困惑和不理解。接下来我将通过通俗易懂的语言和熟悉的例子来讲解人工智能。
先来带大家看几个人工智能领域的常见名词:
1)人工智能:让机器能够像人一样“思考”,解决现实中的问题。
2)算法:解决某个问题的具体步骤、指令、动作。面对同一个问题,可以有不同的解决方法,因此解决同一个问题会有不同的算法,不过,不同算法在解决问题的效率和程度上是不一样的。
3)人工智能算法:通过人工智能技术来解决某个问题的方法及步骤。
4)模型:广义上是指,通过主观意识借助实体或者虚拟表现构成的、阐述形态结构的一种表达目的的物件。这样描述看起来难以理解,暂时不用管它。在本书讨论的范围内,“模型”是指将算法通过编程实现,得到用于处理任务的计算机程序。打个比方,如果把我们需要处理的一个个问题场景比喻成“战争”的话,那么“算法”就好比作战时的指导思想,而“模型”就好比实际上场的“兵”和“阵”。
5)人工智能模型:通过人工智能算法实现的用于处理具体问题的计算机程序。
6)特征:物体的具体描述。一个人的特征可能是浓眉、大眼、戴黑框眼镜等。
7)权重:在一个问题中,不同特征对于该问题的贡献程度。比如假设我们根据衣着判断性别,可将人分为四类:穿裤子的女生、穿裙子的女生、穿裤子的男生、穿裙子的男生。根据日常经验知道,穿裙子的较大概率是女生,即从客观统计上看,用“穿裙子”这个特征在判断一个人“是不是女生”这个问题上,概率很大。
除了这些名词之外,大家听到最多的当属“机器学习”和“深度学习”。
机器学习是人工智能的实现方式之一,让机器从数据之中学习,然后在真实场景之中进行预测和使用。深度学习是机器学习的一部分,是一种特定类型的神经网络算法的统称,关于深度学习的详细介绍请见2.2.3小节。相比于机器学习,深度学习主要省略了定义特征的工作,让机器从数据中自己完成“特征定义”和“模型优化”两项任务。
人工智能、机器学习、深度学习三者之间的关系,如图1-1所示。
图1-1 人工智能、机器学习、深度学习三者之间的关系
面对同样的问题,“人工智能算法”和“传统的计算机算法”有什么区别呢?这个区别让你能够很直观地感受到人工智能的特性。过去,当我们想要通过计算机完成物体识别任务时,需要定义清楚步骤及每一步需要识别的特征;而人工智能是从结果出发的,在结果中学习需要的“步骤”。比如识别一辆汽车,过去需要分别识别车轮子、车身、挡风玻璃等,然后把它们组合在一起判断是不是车;而人工智能通过深度学习技术,借助大量标注好的图像数据来识别。例如借助100000张标注为“车辆”的照片和100000张标注为“非车辆”的照片,人工智能算法通过“学习”来调整模型中不同网络层的参数,在这个过程中,模型仿佛通过计算后会给出“是不是车辆”的判断,如果判断的结果和图片标注的不一致,那么就通过调整模型的参数,来让人工智能模型朝着“给出正确判断”的方向上调整。在人工智能学习的过程中,我们只需要给出标注好的图片以及算法模型的结构即可,不再需要手工定义“车”的特征。