机器学习: 不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域
针对某类任务T和性能度量P,如果一个计算机程序T上以P衡量的性能随着经验E而自我完善,那么我们称这个计算机程序在从经验E学习
2.常见算法
2.1 有监督算法
样本数据中有结果标记
分类
按原理分
- 基于统计 贝叶斯分类
- 基于规则 决策树算法
- 基于神经网络 神经网络算法
- 基于距离 KNN(K最近邻)
常用评估指标
- 精确率 预测结果与实际结果的比例
- 召回率 预测结果中某类结果的正确覆盖率
- F1-Score 统计量,综合评估分类模型 取值0-1之间
回归算法
2.1.1 KNN算法
k-Nearest Neighbour 分类算法中最简单的算法之一,如果离某一个样本最近的k个样本中的大多数数据都属于某个类别,那么就认为该样本也属于该类别,并具有该类上样本的特性,KNN不仅能预测分类,还可以做回归分析(预测具体的值)
2.1.2 决策树算法
2.2. 无监督算法
样本数据中无结果标记
2.2.1 聚类
- 层次聚类
- 密度聚类
- 划分聚类
2.3 半监督算法
样本数据中部分有结果标记
3.机器学习算法详解
3.1 机器学习基础知识
3.1.1机器学习的基本概念
- 输入空间:将输入的所有可能取值的集合称作输入空间
- 输出空间:将输出的所有可能取值的集合称作输出空间
- 特征:即属性
- 特征向量:多个特征组成的向量成为特征向量
- 特征空间:将特征向量存在的空间称作特征空间
- 假设空间:有输入空间到输出空间的映射的集合
3.1.2机器学习的实质
3.1.3 机器学习方法的三要素
方法=模型+策略+算法
- 模型:输入空间到输出空间的映射关系,选择的合适的假设空间
策略:从众多的假设空间中算则到最优的模型的学习标准或规则
- 损失函数: 用于衡量预测结果和真实结果之间的差距,其值越小,代表预结果和真实结果越一直 通常是一个非负实值函数, 通过各种方式缩小损失函数的过程被称作优化,损失函数记作 L(Y,f(x))
- 0-1损失函数 预测值和实际值相等则没有损失,否则为完全损失
- 绝对值损失函数: 预测结果与真实结果差的绝对值
- 平方损失函数: 预测结果与真实结果差的平方
- 对数损失函数: 对数函数具有单调性,在求最优化问题时,结果与原始目标一致,可将乘法转换为加法
- 指数损失函数:单调性,非负性的优良性质.使得越接近正确结果误差越小
- 折叶损失函数
- 经验风险 & 风险函数
- 结构风险
3.2 模型评估与选择
3.2.1 模型选择的原则
3.2.1.1 基本概念
- 误差: 模型的预测输出值与其真实值之间的差异
- 训练: 通过已知的样本数据进行学习,从而得到模型的过程
- 训练误差: 模型作用与训练集时的误差
- 泛化: 从特殊到一般,对机器学习来说指的是从模型作用于新的样本数据
- 泛化误差: 模型作用于新的样本数据时的误差
- 模型容量: 拟合各种模型的能力
- 过拟合: 某个模型在样本上表现好,在新样本上表现差
- 欠拟合: 模型对训练集的表现不好
- 模型选择: 选择泛化误差最小的模型
3.2.2 模型的性能指标
3.2.3 模型评估的方法
- 留出法: 使用80%的已知数据集作为训练集训练模型,使用剩下的20%作为测试集测试训练好的模型,使用测试集得出的测试误差作为泛化误差的近似值,取测试误差较小的模型
- 测试集和训练集尽量互斥
- 测试集和训练集独立同分布
- 交叉验证法: 将数据集分为k个互斥的数据子集.子集数据采用分层采样,每次从中选取一个数据集作为测试集,其余用作训练集,进行k次训练和测试,得到平均值,该验证方法称为k折交叉验证 使用不同的划分,重复p次,称为p次k折交叉验证
3.2.4 模型性能的比较
3.2.4.1 回归算法的性能度量
3.2.4.2 分类算法的性能度量
若有收获,就点个赞吧