文章目录
机器学习组成
主要任务
- 分类(classification): 将实例数据划分到合适的类别中。
应用实例: 判断网站是否被黑客入侵(二分类 ),手写数字的自动识别(多分类) - 回归(regression): 主要用于预测数值型数据。
应用实例: 股票价格波动的预测,房屋价格的预测等。
分类
1. 监督学习(supervised learning)
- 必须确定目标变量的值,以便机器学习算法可以发现特征和目标变量之间的关系。在监督学习中,给定一组数据,我们知道正确的输出结果应该是什么样子,并且知道在输入和输出之间有着一个特定的关系。 (包括: 分类和回归)
- 样本集: 训练数据 + 测试数据
- 训练样本 = 特征(feature) + 目标变量(label: 分类: 离散值; 回归:连续值)
- 特征通常是训练样本集的列,它们是独立测量得到的。
- 目标变量: 目标变量是机器学习预测算法的测试结果。
2. 非监督学习(unsupervised learning)
- 在未加标签的数据中,试图找到隐藏的结构。因为提供给学习者的实例是未标记的,因此没有错误或报酬信号来评估潜在的解决方案。数据没有类别信息,也不会给定目标值.
- 非监督学习包括的类型:
- 聚类: 在无监督学习中,将数据集分成由类似的对象组成多个类的过程称为聚类。
- 密度估计: 通过样本分布的紧密程度,来估计与分组的相似性。
- 此外,无监督学习还可以减少数据特征的维度,以便我们可以使用二维或三维图形更加直观地展示数据信息
3. 强化学习
- 这个算法可以训练程序做出某一决定(AlphaGo)。程序在某一情况下尝试所有的可能行动,记录不同行动的结果并试着找出最好的一次尝试来做决定。 属于这一类算法的有马尔可夫决策过程。
训练过程
算法汇总
算法选择
开发流程
- 收集数据: 收集样本数据
- 准备数据: 注意数据的格式
- 分析数据: - 为了确保数据集中没有垃圾数据;- 如果是算法可以处理的数据格式或可信任的数据源,则可以跳过该步骤;- 另外该步骤需要人工干预,会降低自动化系统的价值。
- 训练算法: [机器学习算法核心]如果使用无监督学习算法,由于不存在目标变量值,则可以跳过该步骤
- 测试算法: [机器学习算法核心]评估算法效果
- 使用算法: 将机器学习算法转为应用程序
专业术语
概念 | 英文 | 说明 |
---|---|---|
模型 | model | 计算机层面的认知 |
学习算法 | learning algorithm | 从数据中产生模型的方法 |
数据集 | data set | 一组记录的合集 |
示例 | instance | 对于某个对象的描述 |
样本 | sample | 也叫示例 |
属性 | attribute | 对象的某方面表现或特征 |
特征 | feature | 同属性 |
属性值 | attribute value | 属性上的取值 |
属性空间 | attribute space | 属性张成的空间 |
样本空间/输入空间 | samplespace | 同属性空间 |
特征向量 | feature vector | 在属性空间里每个点对应一个坐标向量,把一个示例称作特征向量 |
维数 | dimensionality | 描述样本参数的个数(也就是空间是几维的) |
学习/训练 | learning/training | 从数据中学得模型 |
训练数据 | training data | 训练过程中用到的数据 |
训练样本 | training sample | 训练用到的每个样本 |
训练集 | training set | 训练样本组成的集合 |
假设 | hypothesis | 学习模型对应了关于数据的某种潜在规则 |
真相 | ground-truth | 真正存在的潜在规律 |
学习器 | learner | 模型的另一种叫法,把学习算法在给定数据和参数空间的实例化 |
预测 | prediction | 判断一个东西的属性 |
标记 | label | 关于示例的结果信息 |
样例 | example | 拥有标记的示例 |
标记空间/输出空间 | label space | 所有标记的集合 |
分类 | classification | 预测是离散值 |
回归 | regression | 预测值是连续值 |
二分类 | binary classification | 只涉及两个类别的分类任务 |
正类 | positive class | 二分类里的一个 |
反类 | negative class | 二分类里的另外一个 |
多分类 | multi-class classification | 涉及多个类别的分类 |
测试 | testing | 学习到模型之后对样本进行预测的过程 |
测试样本 | testing sample | 被预测的样本 |
聚类 | clustering | 把训练集中的对象分为若干组 |
簇 | cluster | 每一个组叫簇 |
监督学习 | supervised learning | 典范–分类和回归 |
无监督学习 | unsupervised learning | 典范–聚类 |
未见示例 | unseen instance | “新样本“,没训练过的样本 |
泛化 | generalization | 学得的模型适用于新样本的能力 |
分布 | distribution | 样本空间的全体样本服从的一种规律 |
独立同分布 | independent and identically distributed | 获得的每个样本都是独立地从这个分布上采样获得的。 |
数据集的划分
- 训练集(Training set) —— 学习样本数据集,通过匹配一些参数来建立一个模型,主要用来训练模型。类比考研前做的解题大全。
- 验证集(validation set) —— 对学习出来的模型,调整模型的参数,如在神经网络中选择隐藏单元数。验证集还用来确定网络结构或者控制模型复杂程度的参数。类比 考研之前做的模拟考试。
- 测试集(Test set) —— 测试训练好的模型的分辨能力。类比考研。这次真的是一考定终身。
- 学习率(Learning rate) —— 理解为步长,步子大了,很容易错过最佳结果。步子小了,同样的距离,却要走很多很多步,这样导致训练耗时费力。
模型拟合程度
- 欠拟合(Underfitting): 模型没有很好地捕捉到数据特征,不能够很好地拟合数据,对训练样本的一般性质尚未学好。类比,光看书不做题觉得自己什么都会了,上了考场才知道自己啥都不会。
- 过拟合(Overfitting): 模型把训练样本学习“太好了”,可能把一些训练样本自身的特性当做了所有潜在样本都有的一般性质,导致泛化能力下降。类比,做课后题全都做对了,超纲题也都认为是考试必考题目,上了考场还是啥都不会。
常见的模型指标
- 正确率 —— 提取出的正确信息条数 / 提取出的信息条数
- 召回率 —— 提取出的正确信息条数 / 样本中的信息条数
- F 值 —— 正确率 * 召回率 * 2 / (正确率 + 召回率)(F值即为正确率和召回率的调和平均值)
举个例子如下:
某池塘有 1400 条鲤鱼,300 只虾,300 只乌龟。现在以捕鲤鱼为目的。撒了一张网,逮住了 700 条鲤鱼,200 只 虾, 100 只乌龟。那么这些指标分别如下: 正确率 = 700 / (700 + 200 + 100) = 70% 召回率 = 700 / 1400 = 50% F 值 = 70% * 50% * 2 / (70% + 50%) = 58.3%
特征工程
特征选择 —— 也叫特征子集选择(FSS,Feature Subset Selection)。是指从已有的 M 个特征(Feature)中选择 N 个特征使得系统的特定指标最优化,是从原始特征中选择出一些最有效特征以降低数据集维度的过程,是提高算法性能的一个重要手段,也是模式识别中关键的数据预处理步骤。
特征提取 —— 特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点,连续的曲线或者连续的区域
数学知识
- 一个总结数学知识点很棒的链接 : https://zhuanlan.zhihu.com/p/25197792