课程: Python 机器学习基础
免费学习该课程!
今天就开通帐号,24,700 门业界名师课程任您挑!
什么是机器学习
今天,我们先来思考一个最核心的问题: 什么是机器学习? 我们先来看一个经典的定义。 这是由机器学习领域的先驱, 汤姆.米切尔提出的。 “如果一个计算机程序在某类任物 T 上, 其性能 P 随着经验 E 的增加, 而自动提升, 那么我们就说这个程序在从经验中学习。 在这个定义中,包含了三个关键词。 首先是任务 T:计算机要完成的事情。 比如说,识别图片中的猫、预测房价等。 然后,是性能 P, 也就是我们如何衡量它做得好不好。 比如通过准确率、误差等。 最后是经验 E, 也就是计算机在任务中积累的数据。 比如看过了图片、历史价格数据等。 简而言之,机器学习就是让计算机通过经验, 来改进它在某项任务上的表现。 那么,我们为什么需要机器学习呢? 传统编程是人写出明确的规则, 而由计算机来执行这些规则。 但是在现实世界中, 有很多任务是难以用简单的规则定义的。 比如说,如何判断一张照片里有没有猫? 如何预测股票的涨跌? 又或者如何识别一个人说话的内容? 这些问题背后规律复杂,数据庞大, 连我们自己都很难说清楚规律, 更不要说写出规则了。 而在这个时候机器学习,它就能够派上用场。 它不需要人写规则, 而是通过分析大量的数据由自己学出规律。 它还可以处理很多模糊、不确定的问题。 比如说,语音识别或者图像分类。 它在工业界和科研中有着广泛应用, 包含从搜索引擎,推荐系统,到自动驾驶 和医疗辅助诊断等领域。 我们经常说,让机器像人一样学习。 但是机器学习和人类学习, 既有相似之处,也有明显的不同。 在学习方式方面, 我们人类通常是通过 看例子,理解概念或者联想经验。 而机器学习呢, 是通过大量样本来学习统计规律。 在泛化能力上, 人类往往可以类比、迁移来应对新情境。 但机器学习的泛化能力, 却主要取决于模型和数据质量。 人类学习的效率比较高, 往往只需要少量例子就能学会。 但机器学习通常需要大量的数据。 人类学习的可解释性很高, 我们可以解释为什么这个问题会这样解决。 但机器学习很多的模型都是黑箱, 难以直接解释。 最后,我们人类在可塑性比较高, 有着直觉、常识还有灵活应变能力。 但机器学习却依赖算法规则, 不具备一些常识。 所以我们可以说, 机器学习是人类学习的一种模拟, 但它是由数学驱动的,由数据驱动的。 今天,我们初步了解了机器学习。 它是让计算机通过经验,自动提升任务表现。…