目录
一、基本认识
1. 介绍
2. 机器学习位置
二、机器学习的类型
1. 监督学习
2. 无监督学习
3. 强化学习
三、机器学习术语
1. 训练样本
2. 训练
3. 特征
4. 目标
5. 损失函数
四、机器学习流程
五、机器学习算法
1. 分类算法
2. 聚类算法
3. 关联分析
4. 回归分析
① 线性回归
② 逻辑回归
③ 多项式回归
④ 岭回归
⑤ LASSO 回归
5. 深度学习
一、基本认识
1. 介绍
在当今的 科技时代,大量结构化 和 非结构化数据是我们的 丰富资源。机器学习在 20世纪 下半叶演变为 人工智能(Al)的 一个分支,它 通过 自学习算法 从数据中 获得知识来 进行预测。机器学习 并不需要 事先对 大量数据进行 人工分析,然后 提取规则 并建立模型,而是 提供了一种更为 有效的方法 来捕获 数据中的 知识,逐步提高 预测模型的性能,以 完成数据驱动的决策。
2. 机器学习位置
机器学习是 人工智能的一个分支,作为 人工智能的核心技术和实现手段,通过机器学习的方法解决人工智能面对的问题。机器学习是通过一些让计算机可以自动 “学习” 的算法,从数据中分析获得规律,然后利用 规律对新样本 进行预测。
从本质上看,数据科学 的 目标是 通过处理 各种数据促进 人们的决策,机器学习 的主要任务 是使机器模仿 人类的学习,从 而获得知识。而 人工智能借助机器学习 和 推理最终是形成具体的 智能行为。
二、机器学习的类型
1. 监督学习
监督学习的主要目标是 从有标签的训练数据中学习模型,以便对未知或未来的 数据做出预测。其中,模型的输入是 某一样本的特征,函数的 输出是这一样本对应的标签。这里的 “监督” 一词指的是 已经知道训练样本(输入数据)中期待的输出信号(标签)。
2. 无监督学习
无监督学习 又称为 非监督式学习,它的输入样本并不需要标记,而是 自动从样本中 学习特征实现预测。用无监督学习技术,可以 在没有 己知结果变量 或 奖励函数的指导下,探索 数据结构来提取有意义的信息。
3. 强化学习
强化学习是 通过观察来学习 做成什么样 的动作。每个动作 都会对环境 有所影响,学习对象根据观察到的 周围环境的反馈来 做出判断。强化学习强调 如何基于环境而行动,以取得最大化的预期利益。强化学习的 反馈并非标定过的 正确标签 或数值,而是 奖励函数对行动度量的结果。通过探索性的试错 或 深思熟虑的规划 来最大化 这种奖励。
强化学习 有许多不同的子类。然而,一般模式是 强化学习智能体 试图通过 与环境的一系列 交互来 最大化奖励。
三、机器学习术语
1. 训练样本
表中的行,代表数据集的观察、记录、个体或者样本(在多数情况下,样本指训练样本集)。
2. 训练
模型拟合,对参数型模型而言,类似参数估计。
3. 特征
缩写为x,指数据表或矩阵的列。与预测因子、变量、输入、属性或协变量同义。
4. 目标
缩写为y,与结果、输出、响应变量、因变量、分类标签和真值同义。
5. 损失函数
经常与代价函数 同义。有时也被 称为误差函数。在有些文献中,术语损失 指的是对 单个数据点进行测量的 损失,而代价是 对整个数据集进行测量(平均或者求和)的损失。
四、机器学习流程
① 在对原始数据进行数据探索后,可能发现不少问题,如缺失数据、数据不规范、数据分布不均衡、数据异常、数据冗余等。这些问题都会影响数据质量。为此,需要 对数据进行预处理。归一化、离散化、缺失值处理、去除共线性等,是机器学习的常用 预处理方法。
② 特征选择是否合适,往往会直接影响 模型的结果,对于 好的特征,使用 简单的算法也能得出良好、稳定的结果。特征选择 时可 应用特征 有效性分析技术,如相关系数、卡方检验、平均互信息、条件熵、后验概率和逻辑回归权重等方法。
③ 训练模型 前,一般会把数据集分为训练集和测试集,或对训练集再细分为 训练集和验证集,从而对模型的 泛化能力 进行评估。模型本身 并没有优劣。在模型选择时,一般不存在 对任何情况都表现很好的 算法,这又称为 “没有免费的午餐” 原则。因此在实际选择时,一般会用 几种不同方法 来进行模型训练,然后比较 它们的性能,从中选择 最优的一个。不同的模型 使用不同的 性能 衡量指标。
④ 使用 训练数据构建模型后,需使用 测试数据 对模型进行测试和评估,测试模型 对新数据的泛化能力。如果测试结果 不理想,则分析原因并 进行模型优化。如果 出现 过拟合,特别是 在回归类问题 中,则可以 考虑正则化方法来 降低模型的 泛化误差。过拟合、欠拟合判断是 模型诊断中 重要的一步,常见的 方法有交叉验证、绘制学习曲线等。过拟合的 基本调优思路 是增加数据量,降低模型复杂度。欠拟合的基本调优思路 是 提高特征数量 和质量,增加模型 复杂度。
五、机器学习算法
根据机器学习的 任务分类,可以分为回归、分类、聚类三大常见机器学习任务。
1. 分类算法
分类算法是 应用分类规则对记录进行目标映射,将其 划分到不同的分类中,构建具有 泛化能力的 算法模型,即 构建映射规则来 预测未知样本的类别。
分类算法包括 预测 和 描述 两种。
① 预测:经过 训练集学习的 预测模型 在遇到 未知记录时,应用规则 对其进行类别 划分。
② 描述:主要是 对现有数据 集中特征 进行解释并进行 区分,例如 对动植物的各项特征进行描述,并进行标记分类,由这些 特征来决定其属于哪一类目。
主要的分类算法包括 决策树、支持向量机(Support Vector Machine,SVM)、最近邻(K-Nearest Neighbor,KNN) 算法、贝叶斯网络 (BayesNetwork) 和 神经网络等。
2. 聚类算法
聚类按照 数据的 内在结构特征 进行聚集 形成簇群,从而 实现数据的分离。聚类与分类 的主要区别 是其 并不关心数据是什么类别,而是把相似的数据聚集 起来形成某一类簇 。
在聚类的过程中,首先 选择有效特征 构成向量,然后按照 欧氏距离或其他距离函数 进行相似度计算,并划分聚类,通过对聚类结果 进行评估,逐渐迭代生成 新的聚类。
聚类方法可分为 基于层次的聚类(Hierarchical Method)、基于划分的聚类 (Partitioning Method,PAM)、基于密度的聚类、基于约束的聚类、基于网络的聚类等。
① 基于层次的聚类:是 将数据集分为 不同的层次, 并 采用分解 或 合并的 操作进行聚类,主要包括 BIRCH (Balanced lterative Reducing andClustering using Hierarchies)、 CURE (Clustering UsingRepresentatives) 等。
② 基于划分的聚类:是 将数据集 划分为 k个簇,并对其中的 样本计算距离 以获得 假设簇 中心点,然后 以簇的中心点 重新迭代计算 新的中心点,直到 k个簇 的中心点 收敛为止。基于划分的聚类有 k均值 等。
③ 基于密度的聚类:是 根据样本的 密度不断增长 聚类,最终 形成一组 “密集连接” 的点集,其 核心思想是 只要数据的密度大于 阈值 就将其合并成 一个簇,可以 过滤噪声,聚类结果可以是任意形状,不必为 凸形。基于密度的聚类方法 主要包括 DBSCAN (Density -Based Spatial Clustering ofApplication with Noise)、 OPTICS (Ordering Points To Identify theClustering Structure) 等。
3. 关联分析
关联分析 (Associative Analysis)是 通过对数据集中 某些项目同时出现的 概率来发现 它们之问的关联关系,其 典型的应用是购物篮分析,通过 分析购物篮中不同商品之间的 关联,分析消费者的 购买行为习惯,从而 制定相应的 营销策略,为商品促销、产品定价、位置摆放等提供支持,并且可用于对 不同消费者群体的划分。
关联分析 主要包括 Apriori算法 和 FP-growth算法。
4. 回归分析
回归分析 是一种 研究自变量和因变量之间关系的 预测模型,用于 分析当自变量发生变化时因变量的变化值,要求 自变量相互独立。
① 线性回归
应用线性回归 进行分析时要求自变量是连续型,线性回归用直线(回归线)建立因变量和一个或多个 自变量之间的关系。
② 逻辑回归
逻辑(Logistic)回归是 数据分析中的 常用算法,其输出的是 概率估算值,将此值用 Sigmoid 函数进行映射到 [0,1] 区间,即可用来 实现样本分类。逻辑回归 对样本量有一定要求,在样本量较少时,概率估计的 误差较大。
③ 多项式回归
在回归分析 中有时会 遇到线性回归的 直线拟合 效果不佳,如果发现 散点图中数据点呈多项式曲线时,可以考虑使用 多项式回归来分析。使用 多项式回归可以降低模型 的误差,但是 如果处理不当易造成 模型过拟合,在 回归分析 完成之后 需要 对结果 进行分析,并 将结果可视化 以查看其拟合程度。
④ 岭回归
岭回归在共线性数据分析中应用较多,也称为脊回归,它是一种有偏估计的回归方法,是在最小二乘估计法的 基础上做了改进,通过 舍弃最小二乘法的无偏性,使回归 系数更加稳定 和 稳健。其中 R方值 会稍低于 普通回归分析方法,但回归系数更加显著,主要用于 变量间存在 共线性和数据点较少时。
⑤ LASSO 回归
LASSO 回归的 特点 与岭回归 类似,在拟合模型 的同时 进行变量筛选 和 复杂度调整。变量筛选是逐渐 把变量放入模型 从而得到 更好的自变量组合。复杂度调整 是通过参数调整 来控制模型的 复杂度,例如 减少自变量的数量等,从而避免 过拟合。LASSO 回归也是 擅长处理 多重共线性或存在一定 噪声和冗余的数据,可以支持连续型因变量、二元、多元离散变量的分析。
5. 深度学习
深度学习方法 是通过使用多个隐藏层和大量数据来 学习特征,从而 提升分类 或 预测的准确性,与传统的神经网络相比,不仅 在层数上较多,而且采用了逐层训练的机制来训练整个网络,以防出现梯度扩散。
深度学习包括受限 玻尔兹曼机(RBM)、深度信念网(DBN)、卷积神经网络(CNN)、层叠自动编码器(SAE)、深度神经网络(DNN)、循环神经网络(RNN)、对抗神经网络(GAN)以及 各种变种网络 结构。
这些 深度神经网络 都可以 对训练集数据 进行特征提取 和 模式识别,然后 应用于样本的分类。