一、基本概念
1 学习的概念
1975年图灵奖获得者、1978年诺贝尔经济学奖获得者、著名学者赫伯特.西蒙 (Herbert Simon) 曾下过一个定义:
如果一个系统,能够通过执行某个过程,就此改进了它的性能,那么这个过程就是学习
.由此可看出,学习的目的就是改善性能.卡耐基梅隆大学机器学习和人工智能教授汤姆.米切尔 (TomMitchell) 在他的经典教材《机器学习》中,给出了更为具体的定义对于某类任务 (Task,简称T) 和某项性能评价准则 (Performance简称P),如果一个计算机在程序
T
上,以P
作为性能度量,随着经验(Experience,简称E
) 的积累,不断自我完善
,那么我们称计算机程序
从经验E
中进行了学习
.
2. 为什么需要机器学习
- 程序自我升级;
- 解决那些算法过于复杂,甚至没有已知算法的问题;
- 在机器学习的过程中,协助人类获得事物的洞见。
3. 机器学习的形式
3.1 建模问题
所谓机器学习,在形式上可近似等同于在数据对象中通过统计、推理的方法,来寻找一个接受特定输入X,并给出预期输出Y功能函数f,即Y=f(a)这个函数以及确定函数的参数被称为模型。
3.2 评估问题
针对已知的输入,函数给出的输出 (预测值) 与实际输出 (目标值)之间存在一定误差,因此需要构建一个评估体系,根据误差大小判定函数的优劣。
3.3 优化问题
学习的核心在于改善性能,通过数据对算法的反复锤炼不断提升函数预测的准确性,直至获得能够满足实际需求的最优解,这个过程就是机器学习。
4. 机器学习的分类
4.1 有监督、无监督、半监督学习
1)有监督学习
在已知数据输出(经过标注的)的情况下对模型进行训练,根据输出进行调整、优化的学习方式称为有监督学习。
2)无监督学习
没有已知输出的情况下,仅仅根据输入信息的相关性,进行类别的划分。
3)半监督学习
先通过无监督学习划分类别,再人工标记通过有监督学习方式来预测输出.例如先对相似的水果进行聚类,再识别是哪个类别。
4)强化学习
通过对不同决策结果的奖励、惩罚,使机器学习系统在经过足够长时间的训练以后,越来越倾向于接近期望结果的输出。
4.2 批量学习、增量学习
1)批量学习
将学习过程和应用过程分开,用全部训练数据训练模型,然后再在应用场景中进行预测,当预测结果不够理想时,重新回到学习过程,如此循环.
2)增量学习
将学习过程和应用过程统一起来,在应用的同时,以增量的方式不断学习新的内容,边训练、边预测.
4.3 基于模型学习、基于实例学习
1) 基于模型学习
根据样本数据,建立用于联系输出和输出的某种数学模型,将待预测输入带入该模型,预测其结果.例如有如下输入输出关系:
2)基于实例的学习
根据以往经验,寻找与待预测输入最接近的样本,以其输出作为预测结果(从数据中心找答案)例如有如下一组数据:
5. 机器学习的一般过程
- 数据收集,手段如手工采集、设备自动化采集、爬虫等
- 数据清洗:数据规范、具有较大误差的、没有意义的数据进行清理注:以上称之为数据处理,包括数据检索、数据挖掘、爬虫…
- 选择模型 (算法)
- 训练模型
- 模型评估
- 测试模型
注:3~6步主要是机器学习过程,包括算法、框架、工具等… - 应用模型
- 模型维护
6. 机器学习的基本问题
1)回归问题
根据已知的输入和输出,寻找某种性能最佳的模型,将未知输出的输入代入模型,得到连续的输出.
例如:
- 根据房屋面积、地段、修建年代以及其它条件预测房屋价格;
- 根据各种外部条件预测某支股票的价格;
- 根据农业、气象等数据预测粮食收成;
- 计算两个人脸的相似度。
2) 分类问题
根据已知的输入和输出,寻找性能最佳的模型,将未知输出的输入带入模型,得到离散的输出,例如:
- 手写体识别 (10个类别分类问题;
- 水果、鲜花、动物识别;
- 工业产品瑕疵检测(良品、次品二分类问题)识别一个句子表达的情绪(正面、负面、中性)。
3)聚类问题
根据已知输入的相似程度,将其划分为不同的群落,例如:。根据一批麦粒的数据,判断哪些属于同一个品种根据客户在电商网站的浏览和购买历史,判断哪些客户对某件商占感兴趣判断哪些客户具有更高的相似度。
4)降维问题
在性能损失尽可能小的情况下,降低数据的复杂度,数据规模缩小都称为降维问题。
二、数据预处理
1. 数据预处理目的
- 去除无效数据、不规范数据、错误数据
- 补齐缺失值
- 对数据范围、量纲、格式、类型进行统一化处理,更容易进行后续计算