想象一下,你要教计算机识别猫。
传统编程的方法:你写规则——“有尖耳朵的是猫”、“有胡须的是猫”、“会喵喵叫的是猫”……
但猫的形态千变万化,你无法写出所有规则。
机器学习的方法:你给计算机看一万张猫的照片,告诉它"这是猫"。计算机自己发现猫的特征。
这就是机器学习的核心思想:不是告诉计算机怎么做,而是让它从数据中学习。
机器学习的类型#
机器学习有几种主要类型:
监督学习(Supervised Learning)
给计算机带标签的数据,让它学习输入和输出的关系。
比如:给计算机看一万张猫的照片,每张都标注"猫"。计算机学习后,可以识别新的猫照片。
无监督学习(Unsupervised Learning)
给计算机没有标签的数据,让它自己发现模式。
比如:给计算机一堆客户数据,让它自动把客户分成几类。
强化学习(Reinforcement Learning)
计算机通过试错学习,好的行为得到奖励,坏的行为受到惩罚。
比如:让计算机玩电子游戏,赢了得分,输了扣分。计算机学习如何获得最高分。
机器学习的历史#
机器学习不是新技术,它有悠久的历史。
1950年代:图灵提出"机器能思考吗?“的问题。最早的机器学习程序出现。
1959年:Arthur Samuel开发了跳棋程序,可以自我学习。他创造了"机器学习"这个词。
1960年代:感知机(Perceptron)出现,是神经网络的雏形。
1980年代:决策树、支持向量机等算法出现。但计算能力有限,应用不多。
1990年代:机器学习开始实用化。垃圾邮件过滤、手写识别等应用出现。
2000年代:随机森林、梯度提升等算法流行。Netflix Prize推动了推荐系统发展。
2010年代:深度学习爆发,AI进入新纪元。
经典算法#
机器学习有很多经典算法:
线性回归
预测连续值。比如根据房屋面积预测房价。
逻辑回归
分类问题。比如预测邮件是否是垃圾邮件。
决策树
用树状结构做决策。比如:如果年龄>30且收入>50000,则批准贷款。
随机森林
多棵决策树投票。更准确,更稳定。
支持向量机(SVM)
找到最佳分界线,把不同类别分开。
K近邻(KNN)
找最近的邻居,看邻居是什么类别。
朴素贝叶斯
基于概率的分类。常用于垃圾邮件过滤。
K-means聚类
把数据分成K组。常用于客户分群。
这些算法至今仍在使用,各有适用场景。
机器学习的应用#
机器学习已经无处不在:
垃圾邮件过滤
Gmail自动识别垃圾邮件,准确率超过99%。
推荐系统
Netflix推荐电影,亚马逊推荐商品,抖音推荐视频。
图像识别
人脸识别、车牌识别、医学影像诊断。
语音识别
Siri、Alexa、小爱同学,都能听懂你的话。
自然语言处理
机器翻译、情感分析、智能客服。
欺诈检测
银行检测异常交易,防止信用卡欺诈。
自动驾驶
特斯拉、Waymo使用机器学习识别道路和障碍物。
机器学习的局限#
机器学习不是万能的。
需要大量数据:数据太少,模型无法学习。
需要标注:监督学习需要人工标注数据,成本高。
黑盒问题:深度学习模型很难解释为什么做出某个决策。
偏见问题:训练数据有偏见,模型也会有偏见。
对抗攻击:精心设计的输入可以欺骗模型。
泛化能力:模型在新数据上可能表现不佳。
机器学习的工作流程#
一个机器学习项目通常包括:
1. 数据收集:获取相关数据
2. 数据清洗:处理缺失值、异常值
3. 特征工程:选择和构造有用的特征
4. 模型选择:选择合适的算法
5. 模型训练:用数据训练模型
6. 模型评估:测试模型效果
7. 模型部署:把模型应用到实际场景
8. 持续监控:监控模型表现,必要时重新训练
从机器学习到深度学习#
机器学习的一个分支——深度学习——在2010年代爆发。
深度学习使用多层神经网络,可以自动学习特征,不需要人工设计。
深度学习在图像识别、语音识别、自然语言处理等领域取得了突破性进展。
明天,我们来讲深度学习的爆发。
今日知识点#
机器学习(Machine Learning) 让计算机从数据中学习,而不是显式编程。机器学习包括监督学习、无监督学习、强化学习等类型。
监督学习(Supervised Learning) 用带标签的数据训练模型。模型学习输入和输出的关系,然后可以预测新数据的输出。分类和回归是常见的监督学习任务。
特征工程(Feature Engineering) 选择和构造对预测有用的特征。特征工程是机器学习的关键步骤,好的特征可以大大提高模型效果。
思考题#
- 传统编程需要人类写规则,机器学习让计算机自己学习。你觉得哪种方式更好?
- 机器学习已经无处不在。你能想到生活中还有哪些机器学习的应用?
明天预告:深度学习爆发——AlphaGo如何击败世界冠军,震惊世界?
