| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 机器学习(一) -> 正文阅读 |
|
[人工智能]机器学习(一) |
一、绪论 机器学习:基于经验做出预测。主要内容是从数据中产生“模型”的算法,即“学习算法”。 经验:经验通常以数据形式存在 (色泽=青绿;根蒂=蜷缩;敲声=浊响 ? ?色泽=乌黑;根蒂=稍蜷;敲声=沉闷 ? ?色泽=浅白;根蒂=硬挺;敲声=清脆) 数据集:一组记录的集合 示例(样本):每条记录 属性:(色泽;根蒂;敲声) 属性值:(青绿;蜷缩;浊响) 属性空间(样本空间,输入空间):属性张成的空间 特征向量:示例在属性空间对应的坐标向量 维数:每个示例属性的数量 学习(训练):从数据中学的模型? 训练数据:训练中使用的数据 训练样本:训练中使用的每个样本 训练集:训练样本组成的集合 假设:学得模型对应关于数据的某种潜在的规律 标记:训练样本结果信息 样例:拥有标记的示例 分类:预测任务为离散值,例如”好瓜“”坏瓜“ 回归:预测任务为连续值 测试:使用模型进行预测的过程 聚类:按照属性值将示例分组 ?泛化:学得模型适用于新样本的能力 假设样本空间中全体样本服从一个未知的”分布“D,我们获得的每个样本都是独立的从这个分布上采样获取的,即”独立同分布“,训练样本越多,D信息越多,越有可能通过学习获得具有强泛化能力的模型。 归纳:从具体的事实归接触一般性规律 演绎:从一般到特殊的”特化“过程 归纳偏好:机器学习算法在学习过程中对某类假设的偏好 假设空间:将所有假设组成的空间 版本空间:与训练集一致的”假设空间“ 二、模型空间 错误率:分类错误的样本数占样本总数的比例 精度:1-错误率 误差(分为训练误差和泛化误差):学习器的实际预测输出与样本的真实输出的差异 过拟合:把训练样本自身的特点当成所有潜在样本的特点,导致泛化性能下降。 欠拟合:指队训练样本的一般性质未学好 评估 测试集:测试学习器对新样本的判别能力。以测试集的”测试误差“作为泛化误差近似。(测试集尽量与训练集互斥) 产生训练集和测试集的方法: 1.留出法 直接将数据集华为两个互斥的集合,训练集S,测试集T (一般采用若干次随即划分、重复进行实验取平均值作为结果) 2.交叉验证法 将数据集分为k个大小相似的互斥子集(每个子集尽量保持数据分布一致性,分层采样),每次利用k-1个训练集,一个作为训练集,最终返回k次实验的均值。 (若k=m,留一法) 3.自助法 重复在D中随机选择m个样本数据集D‘作为训练集,D\D’作为测试集 (既能减少样本规模不同造成的影响,也能比较搞笑的进行实验估计,数据集较小,难以有效区分训练/测试集时有用) 调参 验证集:把训练数据划分为训练集和验证集,基于验证集上的性能来进行模型选择和调参 性能度量:衡量模型泛化性能的评价标准(回归任务最常用”均方误差“) 分类问题常用性能度量:错误率和精度、查准率、查全率、F1 ? ? ?平衡点(BEP),查准率=查全率时的取值,越大表示学习器越好 用F1表示更好: ?代价敏感错误率和代价曲线 非均等代价:权衡不同的类型的错误造成的不同损失 ?cost01与cost10差别越大,损失程度相差越大。 三、线性模型 ?向量形式 ? ?线性回归 对离散属性值间存在序关系,可通过连续化降级转化为连续值 若属性值间不存在序关系,通常可以转化为k维向量 均方误差:回归任务中最常用的性能度量 多元线性回归 ? ?对数线性回归:?逼近y 对数几率回归 ? ? ? ?单位跃迁函数 ? ? ? 对数几率函数是一种sigmoid函数 ?多分类学习 经典拆分策略 “一对一”(OvO):将N个类两两配对,产生N(N-1)/2个二分类任务 "一对其余"(OvR):每次将一个类的样例作为正例、所有其他类的样例作为反例来驯良N个分类器,选择置信度最大的类别标记作为分类结果 “多对多”(MvM):若干选择为正例,若干选择为反例,有特殊的设计,不能随便选(编码矩阵) 类别不平衡问题:指分类任务中不同类别的训练样例数目差别很大的情况。 从线性分类器的角度讨论,设置阈值实现二分类 (再缩放) (1)对训练集里的反类样例进行“欠采样”,去除一些反例使正反例数目接近 (2)“过采样”,增加一些正例使正反例数目接近 (3)直接基于原始训练集学习,分类预测时移动阈值 ?四、决策树 决策树:是一类常见的机器学习方法。 一般地,一颗决策树包含一个根结点、若干内部结点和若干叶结点;叶结点对应决策结果,其他每个结点对应一个属性测试;每个结点包含的样本集合根据属性测试的结果被划分到子结点中;根结点包含样本全集 决策树学习的目的是为了产生一颗泛化能力强,即处理未见实力能力强的决策树。 ?决策树生成是一个递归过程,有三种情况会导致递归返回 (1)当前结点包含的样本权属于同一类别,无需划分 (2)当前属性集为空,或是所有样本在所有属性上取值相同,无法划分 (3)当前结点包含的样本集合为空,不能划分 纯度:都额册书的分支结点所包含的样本尽可能属于同一类别,即“纯度”越来越高 信息熵:度量样本集合纯度常用的一种指标 ? ? ?增益率:减少今昔增益准则对可取值数目较多的属性有所偏好带来的不利影响 ? ?增益率准则对可取值数目较少的属性有所偏好 基尼指数:数据集纯度的一种度量方式 剪枝处理: 在决策树学习中,尽可能正确分类训练样本,结合划分过程将不断重复,有时会造成过拟合剪掉一些分支。 预剪枝:指在决策树生成过程中,对每个结点在划分前先进性估计,若当前结点的划分不能带来决策树泛化性能提升,则停止划分并将当前结点标记为叶结点 后剪枝:是先从训练集生成一颗完整的决策树,然后自底向上的对非叶结点进行考察,若将该节点对应的字数替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点 预剪枝 ?后剪枝 ?连续值处理:采用二分法对连续属性进行处理 ?缺失值处理: 多变量决策树 五、神经网络 神经网络:是由具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统的对真实世界物体所做出的交互网络。 神经网络中最基本的成分是神经元模型,即简单单元 M-P神经元模型 ?激活函数:处理输入数据易产生神经元输出,理想中的激活函数是阶跃函数,实际常用sigmoid函数作为激活函数(也称挤压函数) ?感知机和多层网络 感知机:由两层神经元组成,输入层接受外界输入信号后传递给输出层,输出层是M-P神经元 (若·感知机对训练样例预测正确,即感知机不发生变化,否则将根据错误的程度进行权重调整) 线性可分问题:存在一个线性超平面能将它们分开,感知机学习过程一定会收敛 ?要解决非线性可分问题,需考虑使用多层功能神经元 隐层:输入层与输出层之间的一层神经元 多层前馈神经网络:每层神经元与下一层神经元全互联,神经元之间不存在同层链接。 误差逆传播算法(BP):最常用的多层网络学习算法 BP网络:一般指用BP算法训练的多层前馈神经网络 全局最小与局部极小 ?全局最小解:指参数空间中所有点的误差函数值均不小于该点的误差函数值。 局部最小解:参数空间中的某个点,其领域点的误差函数值均不小于该点的误差函数值。 通常采用以下方法试图跳出局部极小,接近全局最小 (1)以多组不同参数值初始化多个神经网络,按标准方法训练后,取其中误差最小的解作为最终参数 (2)使用“模拟退火”技术 (3)使用随机梯度下降 常见神经网络比较 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 4:16:24- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |