文章目录
生活中的机器学习
- 当你想知道怎么做寿司卷时,在Google,Bing,Baidu上搜索答案,网页的排序背后就是机器学习算法;
- 当你将图片上传到Instagram,Snapchat上,在图片上标记人名和识别头像用的也是机器学习算法;
- 当你在流媒体和视频网站上观看了一部科幻片,片子的下方有猜你喜欢的影片使用的也是机器学习算法;
- 语音信息的交互和文字转化,垃圾邮件的分类等等功能也都离不开机器学习算法;
机器学习在生活中应用广泛,壁如在环保领域中机器学习算法可以优化风力涡轮机发电,医疗领域中可以帮助医生进行医疗诊断,工业生产领域中可以检测装配线上的产品是否有缺陷等等。
机器学习的前景应用
- 自动驾驶
- 农业生产
- 医疗保健
- 电子商务
- AGI(Artificial General Intelligence)?
机器学习的定义
机器学习是一门让计算机在没有明确编程指令的情况下机器自我学习的科学。
Filed of study that gives computers the ability to learn without being explicity programmed. — Arthur Samuel (1959)
Arthur Samuel 编写了一个西洋棋程序。这程序神奇之处在于,编程者自己并不是个下棋高手。但因为他太菜了,于是就通过编程,让西洋棋程序自己跟自己下了上万盘棋。通过观察哪种布局(棋盘位置)会赢,哪种布局会输,久而久之,这西洋棋程序明白了什么是好的布局,什么样是坏的布局。程序通过学习后,玩西洋棋的水平超过了Samuel。这绝对是令人注目的成果。 尽管编写者自己是个菜鸟,但因为计算机有着足够的耐心,去下上万盘的棋,没有人有这耐心去下这么多盘棋。通过这些练习,计算机获得无比丰富的经验,于是渐渐成为了比Samuel 更厉害的西洋棋手。
Tom Mitchell 给出了机器学习另一个定义,他认为一个好的学习问题定义如下,他说,一个程序被认为能从经验 E 中学习,解决任务 T,达到性能度量值 P,当且仅当,有了经验 E 后,经过 P 评判,程序在处理 T 时的性能有所提升。我认为经验 E 就是程序上万次的自我练习的经验。而任务 T 就是下棋。性能度量值 P 呢,就是它在与一些新的对手比赛时,赢得比赛的概率。
机器学习算法分类
监督学习(Supervised Learning)
从数据的输入 (X) 和输出 (Y) 标签中学习的一种算法,算法的目的是将X映射到Y。
根据Y的不同监督学习又可以分为回归和分类:
- Y为连续型数值叫回归 Regression(如房价预测,股价预测)
- Y为离散型变量叫分类 Classification(如是否是垃圾邮件,是否点击广告)
数据格式:X(可以认为是张量或矩阵),Y一般为向量
X | Y(回归) | |
房龄(x1) | 面积(x2) | 房价 |
10 | 100 | 190 |
15 | 90 | 120 |
5 | 80 | 130.5 |
X | Y(分类) | |
年龄(x1) | 月收入(x2) | 是否贷款 |
20 | 10000 | 1 |
18 | 4000 | 0 |
30 | 30000 | 1 |
非监督学习(Unsupervised Learning)
数据只有输入(X) 没有输出 (Y),算法的目的是找到 数据 X 中的一些有趣的结构。
根据应用的不同可以分为聚类,降维和异常检测:
- 聚类 Clustering(如对人群的分类)
- 降维 Dimensinality reduction(如对数据进行压缩)
- 异常检测 Anomaly detection(如发现异常的数据点)
强化学习(Reinforcement Leanrning)
通过奖励机制进行一系列决策学习的算法,数据主要由智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)组成。算法过程为智能体在某个状态(
s
t
s_{t}
st)执行某个动作(
a
t
a_{t}
at),进入新的状态(
s
t
+
1
s_{t+1}
st+1)并得到奖励(
r
t
+
1
r_{t+1}
rt+1),然后从新状态(
s
t
+
1
s_{t+1}
st+1)执行某个新动作(
a
t
+
1
a_{t+1}
at+1)依次往下递推,直到总过程获得的奖励最大。
常用于:
- 游戏
- 机器人控制
- 棋类游戏
- 调试大型模型(ChatGPT)等等