在进入机器学习之前,我们需要先理清楚相关的常用术语,需要我们知道样本是什么?知道特征是什么?知道标签/目标值是什么?理解数据集划分的方法?文章借助黑马程序员的相关素材。
一、机器学习常用术语
样本(sample) :一行数据就是一个样本;多个样本组成数据集;有时一条样本被叫成一条记录
特征(feature) :一列数据一个特征,有时也被称为属性
标签/目标(label/target) :模型要预测的那一列数据。本场景是就业薪资

就业薪资 与 培训学科、作业考试、学历、工作经验、工作地点 5个特征有关系
特征如何理解(重点):特征是从数据中抽取出来的,对结果预测有用的信息 eg:房价预测、车图片识别
所谓样本就是拥有的原始数据,所谓特征就是数据统计的属性,所谓标签/目标就是你想求得的值,比如这里的就业薪资。
拥有数据集后,一般将数据集分成两部分,训练集和测试集(有的地方也叫验证集)
数据集可划分两部分:训练集、测试集 比例:8 : 2,7 : 3,一帮情况下训练集数据量大于测试集
训练集(training set) :用来训练模型(model)的数据集
测试集(testing set):用来测试模型的数据集

常用x_train表示 训练集中的x x_test 表示测试集中的x;y_train 表示训练集中的y y_test 表示测试集中的y。
二、机器学习算法的分类
机器学习算法主要分为有监督学习、无监督学习、半监督、强化学习,在这里我们需要知道有监督学习是什么?知道无监督学习是什么?知道半监督学习是什么?了解强化学习是什么?能掌握监督学习、无监督学习的数学表示。
1.有监督学习
定义:输入数据是由输入特征值和目标值所组成,即输入的训练数据有标签的
数据集:需要标注数据的标签/目标值

训练数据集带有标签
2.无监督学习
定义:输入数据没有被标记,即样本数据类别未知,没有标签,根据样本间的相似性,对样本集聚类,以发现事物内部结构及相互关系。
数据集:不需要标注数据(如图所示的图片样本,图片本身并未标注图片任务的职业,在训练过程中需要计算机自主学习图片之间的相似性)

两种算法不同源于数据集的本身特点不同,同时两种算法针对对象解决的问题也不一样,有监督学习解决的是分类和回归的问题,无监督学习主要针对的是聚类的问题。
3.有监督分类问题 & 回归问题
分类问题
目标值(标签值)是不连续的(如下数据集)
分类种类:二分类、多分类
|-------|-------|-------|-----|-------|-------|-------|
| 同学 编号 | 培训 学科 | 作业 考试 | 学历 | 工作 经验 | 工作 地点 | 就业 薪资 |
| 1 | java | 90 | 本科 | 1 | 北京 | 中 |
| 2 | java | 80 | 本科 | 1 | 武汉 | 中 |
| 3 | AI | 90 | 本科 | 0 | 北京 | 中 |
| 4 | AI | 92 | 研究生 | 2 | 上海 | 高 |
| 5 | 测试 | 95 | 本科 | 0 | 上海 | 低 |
| 6 | 测试 | 80 | 专科 | 0 | 武汉 | 低 |
| ... | | | | | | |
| n | AI | 91 | 本科 | 1 | 上海 | ? |
回归问题
目标值(标签值)是连续的(如图所示房子价格可以是任意值,当将房价进行区间划分处理后回归问题也就变成了相应的分类问题)
|-----|-------|-------|-------|-------|-------|
| | 房子 面积 | 房子 位置 | 房子 楼层 | 房子 朝向 | 房子 价格 |
| 数据1 | 80 | 1 | 3 | 0 | 81 |
| 数据2 | 100 | 2 | 5 | 1 | 121 |
| 数据3 | 80 | 3 | 3 | 0 | 102 |
| ... | | | | | |
| 数据n | 90 | 2 | 4 | 1 | ? |
4.无监督学习(聚类问题)
无监督学习特点:
1 训练数据无标签(如图所示样本无标签)
2 根据样本间的相似性对样本集进行聚类,发现事物内部结构及相互关系

5.半监督学习
工作原理:
1 让专家标注少量数据,利用已经标记的数据(也就是带有类标签)训练出一个模型
2 再利用该模型去套用未标记的数据
3 通过询问领域专家分类结果与模型分类结果做对比
半监督学习方式可大幅降低标记成本

6.强化学习
1 强化学习(Reinforcement Learning):机器学习的一个重要分支
2 应用场景:里程碑AlphaGo围棋、各类游戏、对抗比赛、无人驾驶场景

3 基本原理:通过构建四个要素:agent,环境状态,行动,奖励,
agent根据环境状态进行行动获得最多的累计奖励。
三、总结
