0. 本节主题是:
本节是介绍在本门课程中,涉及的机器学习的基本概念和分类。
1. 一个真实案例引入:
我们的应用场景就是:输入一个用户的申请信息,判断是否发信用卡给这个用户。
2. 对问题的形式化定义:
如下图所示:
- \(x\):通常一个\(x\)是一个向量\(\vec x=(x_1, x_2, ... x_N)\),代表了一个输入样本点,这个\(x\)的各个分量即表示样本点的各个属性(或者叫特征)
- \(y\):在二分类问题中,一个\(y\)是一个离散的标量(0 or 1),在简单的线性回归中,\(y\)是一个连续的标量(任意一个实数)
- \(D:(\vec {x_1,}y_1), (\vec {x_2},y_2),...,(\vec {x_N},y_N)\): 表示由输入空间\(\mathcal X\)中的\(x\)以及输出空间\(\mathcal Y\)中的\(y\)组成的N条数据的训练数据集。
- \(f\):是我们未知的"真理",就是\(f\)实现了\(x \to y\)的映射,我们机器学习的目标【并不是往往也不可能】找出真理\(f\),而是希望能找到一个【“长得像\(f\)”】的hypothesis h。定义"长得像":如果\(h(x) \approx f(x)\),即对于给定的x,这两个“映射变换\(f,h\)输出的y非常接近,从这个角度看,这个个\(h\)就很接近\(f\)
- hypothesis:是对\(f\)的各种猜想假设,整个假设空间记做\(\mathcal{H}\)
\(g\):在\(\mathcal{H}\)中搜素最终得到最优的hypothesis \(h\),记做\(g\)
注:
- 得到了一个不错的g之后,如果再输入一个真实世界的样本点\(\vec x={(x_1, x_2, ...x_{d})}\),让\(g\)作用于它,将得到一个预测的\(y\)
- 如何把【实际生活中的输入输出】转化为【本门课程的\(\vec x, y\)】,属于数据预处理的内容,见我的这篇笔记(袁博xxx)
3. ML的基本流程:
- 流程可简述为:输入了一个样本点集合\(\mathcal{D}\),定义了一个假设空间\(\mathcal{H}\),基于某个【优化准则】,通过算法\(\mathcal{A}\)在\(\mathcal{H}\)搜索到一个【最优】的hypothesis \(h\),把它记做\(g\),返回这个\(g\)作为\(f\)的近似。这也是ML最简单的定义。
4. ML适合的场合:
- 事物本身存在某种潜在规律 【\(g\)就是潜在的规律】
- 某些问题难以使用普通编程解决 【优先使用简单的方法,不一定是ML】
- 有大量的数据样本可供使用
5. ML and Other Fields
- ML vs DM (Data Mining)
从定义可以得到,机器学习是【实现人工智能】的一种方式。 - ML vs AI (artificial intelligence)
- DM目标是借助【大规模计算】从【大规模数据】中找到【有趣、有用】的信息,而ML是从【大量样本数据】中找到【最佳的hypothesis】
- 两者是一致的:DM能够找出的有用信息,就是,ML要求得的近似目标函数的假设。
- 两者是互助的:能够找出的有用信息就能帮助我们找出近似的假设,反之也可行。
- 传统的数据挖掘更关注与从大量的数据中的计算问题。
- ML vs Statistic
统计也需要通过数据,来做一个未知的推论,因此统计是一种【实现机器学习】的方法。但是,传统的统计学习更关注数学公式,而非计算本身。