机器学习总结(一)

2023-11-16

机器学习总结(一)

一、基本概念

1、有监督学习:输入数据是带有标签的,称为有监督学习。
2、无监督学习:输入数据是不带标签的,称为无监督学习。
3、局部最优:函数值空间的一个有限区域内寻找最小值,这个最小值,是小于或等于附近点的函数值,但是有可能大于较远距离的点;
4、全局最大值:在函数值空间整个区域内寻找最小值。

二:机器学习的学习方式

1、监督学习
特征:监督学习是利用已知正确答案的实例来训练网络,输入数据要和其标签一一对应。
应用场景:分类问题和回归问题
算法:支持向量机、朴素贝叶斯、逻辑回归、K近邻、决策树、随机森林、AdaBoost以及深度学习。
2、非监督学习
特征:数据没有被标识,适用于无标签的数据集
应用场景:关联规则的学习和聚类等
算法:k-Mean算法、Apriopri算法

三、特征工程

特征工程:是对原始数据进行一系列工程处理,将其提炼为特征,作为输入供算法和模型使用。本质上,特征工程是一个表现和展现的数据的过程。
数据类型有:结构化数据和非结构化数据。

1、特征归一化

为了消除数据特征之间的量纲影响,需要对特征进行归一化处理,都统一到一个大致相同的数值区间内,使得不同指标之间具有可比性。
常用方法:
(1)、线性函数归一化
在这里插入图片描述
(2)、零均值归一化
将原始数据映射到均值为0,标准差为1的分布上。具体来说,假设原始特征的均值为μ、标准差为σ,那么 归一化公式定义为
在这里插入图片描述

2、类别型特征

类别型特征,主要是指性别、血型等只在有限选项内取值的特征。类别型特征原始输入通常是字符串形式,除了决策树等少量模型能直接使用字符串形式的输入,对于逻辑回归、支持向量机等模型来说,类别型特征必须经过处理转化为 数值型才能正常工作。
方法:
(1)、序号编码:
用于处理类别间具有大小关系的数据。
(2)、独热编码
用于处理类别间不具有大小关系的特征。将特征向量变为稀疏向量
注意:
a、使用稀疏向量节省空间。特征向量只有某一维取值为1,其他位置为0。
b、配合特征来降低维度。高维特征问题:一是在K近邻算法中,高维空间下两点之间的距离很难得到有效的衡量;二是在逻辑回归模型中,参数的数量会随着维度的增高而增加;三是通常只有部分维度对分类、预测有帮助,因此要降低维度。
(3)、二进制编码
分为两步,首先用序号编码给每个类别赋予一个ID,然后将类别ID对应的二进制编码作为结果。例如:在这里插入图片描述

3、高维组合特征的处理

为了提高复杂关系的拟合能力,在特征工程中经常把一阶离散特征两两组合,构成高阶组合特征。
将高维分别用k维的低维向量表示出来,参数模型:m * n ——> m * k+n * k

4、组合特征

基于决策树的特征寻找

5、文本表示模型

(1)、词袋模型:
通俗上将,就是将每篇文章看成一袋子词,并忽略每个词出现的顺序。正式定义是,将整片文章以词为单位切分开,再把每篇文章看成一个长向量,向量的每一维代表一个词,而该维的权重则是该此在文中的分量。常用TF-IDE计算权重:在这里插入图片描述
TF是单词t在文档d中出现的频率,IDF是逆文档频率,衡量单词t对表达语义所起的重要性
在这里插入图片描述
如果一个词在很多文章出现过,就要对其作出惩罚
(2)、主题模型
为了解决词袋模型中无法识别两个不同词或词组具有相同的主题。主题模型是一种特别的概率图模型,假设有K个主题,把任意文章表示成一个K维的主题向量,其中向量的每一维代表一个主题,权重代表这篇文章属于这个主题的概率。主题模型所解决的事情,就是从文本库中发现有代表的主题(得到每个主题上面词的分布),计算出每篇文章对应哪些主题。
a、pLSA主题模型
在这里插入图片描述
b、LDA
LDA是pLSA的贝叶斯版本,下面是LDA的图模型,其中α,β分别为两个狄利克雷分布的超参数,为人工设定。
在这里插入图片描述
语料库的生成过程为:对每一篇文档di,采用以下操作:
首先,从参数为α的狄利克雷分布中抽取生成文档di的主题分布θi;
然后,对文档di中的每一个词进行下面3个操作:
1)、从代表主题的多项式分布θi中抽取生成它所对应的主题zij
2)、从超参数为β的狄利克雷分布中抽样生成主题zij对应的词分布 zij
3)、从代表词的多项式分布 zij中抽样生成词wij

6、Word2Vec

Word2Vec是一种浅层的神经网络模型,有两种网络结构,分别是CBOW(Continues Bag of Words)和Skip-gram。
CBOW是根据上下文出现的词语来预测当前词的生成的概率,而Skip-gram是根据当前词来预测上下文各词的生成概率。在这里插入图片描述

四、模型评估

1、准确率:分类正确的样本占总样本个数的比例,即

在这里插入图片描述
对于准确率而言,存在正样本和负样本一说,也就是,得到的准确率即便是高达99%,也可能时负样本,即你最不想要得特征。解决这个问题,使用平均准确率(每个类别下的样本准确率的算数平均)作为模型评估的指标。

2、精确率:

分类正确的正样本个数占分类器判定为正样本的样本个数(这里面有可能把正样本判定为正样本,也有可能是把负样本判定为正样本)的比例。

3、召回率:

分类正确的正样本个数占真正的正样本个数的比例。
为了综合评估一个排序模型的好坏,不仅要看模型在不同 Top N下的Precision@N和Recall@N,而且最好绘制出模型的P-R(Precision- Recall)曲线。这里简单介绍一下P-R曲线的绘制方法。
P-R曲线的横轴是召回率,纵轴是精确率。P-R曲线上的一个点代表着,在某一阈值下,模型将大于该阈值的结果判定为正样本,小于该阈值的结果判定为负样本,此时返回结果对应的召回率和精确率。整条P-R曲线是通过将阈值从高到低移动生成的。下图是P-R曲线样例图。
当召回率接近0时,模型A的精确率为0.9,B接近于1,B得分前几位的样本全部是真正的正样本,而A即便得分最高的几个样本也存在误差。且随着召回率的增加,精确率在下降,所以,只用某个点对应的精确率和召回率是不能全面评估模型的性能的。
在这里插入图片描述

4、F1 score:

是精确率和召回率的调和平均值
在这里插入图片描述

5、RMSE

在这里插入图片描述
对于RMSE,模型在95%的时间里预测误差都小于1%,说明,大部分时间预测效果都是好的,然而RMSE却比较差,可能的原因就是,在其他5%的时间里,存在严重的偏离点。一般要么是去掉这些偏离点,要么是用别的更好的指标,如平均绝对百分比误差(MAPE),定义是:
在这里插入图片描述

6、ROC曲线

Receiver Operating Characteristic Curve,横坐标是假阳性率(False Positive Rate,FPR),纵坐标是真阳性率(True Positive Rate,TPR),
在这里插入图片描述
P是真实的正样本数量,N是真实的负样本数,TP是P个正样本中被分类器预测为正样本的个数,FP是N个负样本中被分类器预测为正样本的个数。
评价ROC的好坏,是使用AUC值。AUC是指ROC曲线下的面积大小。AUC值一般在0.5~1之间,值越大,说明分类器越可能把真正的正样本排在前面,分类性能越好。

7、余弦距离

(1)分析两个特征向量之间的相似性,使用余弦相似度来表示,取值范围是[-1,1],相同的两个向量之间的相似度为1。1-余弦相似度=余弦距离,取值范围只[0,2],相似的两个向量余弦距离为0。
(2)在文本、图像、视频等领域,研究对象的特征维度比较高,余弦相似度在高维情况下依然保持“相同是为1,正交时为0,相反时为-1”的性质。

8、模型评估的方法

(1)、Holdout检验
将原始数据随机分为训练集和验证集,如训练集占70%,验证集占30%,通过绘制ROC曲线、计算精确率和召回率等评价模型性能;
缺点是:验证集计算出的评估指标与原始分组有很大关系
(2)、交叉验证
将全部样本划分为k个大小相等的样本子集;依次遍历这k个子集,每次把当前的子集作为验证集,其余所有子集作为训练集,进行模型的训练和评估,最后把k次评估指标的平均值作为最终的评估指标,k通常去10。
缺点是:时间开销大
(3)、自助法
对于总数为n的样本集合,进行n次有放回的随机抽样,得到的大小为n的训练集。n次采样过程中,有的样本会被重复采样,有的没有被抽出过,将这些没有抽出的样本作为验证集,进行模型验证,这就是自助法的验证过程。
在自助法的采样过程中,对n个样本进行n次抽样,当n趋向于无穷大时,最终有多少数据从未被采样过的计算过程:
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器学习总结(一) 的相关文章

  • 【C++】栈和队列(stack&queue)

    栈和队列 一 stack的介绍和使用 1 概念 2 常见接口 3 使用 1 最小栈问题 2 栈的压入 弹出序列 3 逆波兰表达式 4 stack 的模拟实现 二 queue的介绍和使用 1 概念 2 常见接口 3 使用 用队列使用栈 4 q

随机推荐

  • float布局--圣杯布局

    前言 虽然现在有了flex弹性盒子模型 很多布局效果都可以通过flex盒子来实现 但由于flex盒子模型的兼容性不容乐观 ie至少要10才能支持flex 所以还是很有必要学习float流式布局的 栗子 正常的块级元素的布局是这样的 文字代表
  • 嵌入式开发中logout两种实现方式与原理

    1 如果没有logout头文件 利用 include
  • 设置文字渐变颜色在IOS系统上不显示问题

    设置的文字渐变颜色在IOS上不显示 如下代码设置渐变色 background linear gradient 180deg D37E98 27 68 FFBDD1 86 61 webkit background clip text webk
  • 并网逆变器PI控制(并网模式)

    并网逆变器PI控制 1 逆变器拓扑结构与数学模型 2 常用变换 2 1 abc alpha beta 变换及其逆变换 2 2
  • coreldraw软件完整最新版2022矢量图形设计软件

    CorelDRAW2022是一款矢量图平面设计软件 发展历史也很长 是平面设计师必学软件 和 illustrator 比起来操作性相对差一点 但在排版上比 AI 好用 还有一个很明显的优点就是在设计大型文件的时候不会很卡 矢量图形设计软件C
  • 设计模式C++学习笔记之二(Proxy代理模式)

    http www cnblogs com wanggary archive 2011 04 08 2009965 html 代理 一看名字就知道这只是个中介而已 真实的执行者在代理的后面呢 cbf4life在他的书里提的例子也很有趣 更详细
  • 基于Three.js的WebXR渲染入门

    1 Three js 渲染管线快速概览 我不会花太多时间讨论 Three JS 渲染管道的工作原理 因为它在互联网上有详细记录 例如 此链接 我将在下图中列出基础知识 以便更容易理解各个部分的去向 2 WebXR 设备 API 入门 在我们
  • AI绘画网站都有哪些比较好用?

    人工智能绘画网站是一种利用人工智能技术进行图像处理和创作的网站 这些绘画网站通常可以帮助艺术家以人工智能绘画的形式快速生成有趣 美丽和独特的绘画作品 无论你是专业的艺术家还是对人工智能绘画感兴趣的普通人 人工智能绘画网站都可以为你提供新的创
  • 【图像去噪】【TGV 正则器的快速计算方法】通过FFT的总(广义)变化进行图像去噪(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 图像去噪 TGV 正则化器的快速计算方法
  • tomcat部署war包出错解决方案

    tomcat部署war包出错解决方案 最最简单直接明了的方法 卸载重新再装一遍 笔者重装了5 6遍 算是整好了 写篇博客 希望你萌 少走弯路 这是我走的弯路 https 下载 安装 配置及部署war包出错解决方案 1 jdk的安装及配置 2
  • git、gitee创建第一个项目、导入项目到线上仓库

    1 新建一个空文件夹 2 在文件夹中运行git bash 3 克隆线上的空仓库到文件夹中 git clone 线上仓库的地址 eg git clone aaa git 4 将项目中的代码复制到文件夹中 5 提交项目代码 运行命令 1 git
  • Shell脚本相关命令

    文章目录 1 编写简单的hello world脚本 查看脚本内容 并运行 2 练习加减乘除 比较等基本的算术运算 3 使用test命令对两个数值比较 等于 小于 大于等于 注释说明含义 4 使用test命令对两个字符串比较 等于 非空 小于
  • 大数据学习线路图

    大数据学习线路图 Java教程 Java 教程 Java 简介 Java 开发环境配置 Java 基础语法 Java 对象和类 Java 基本数据类型 Java变量类型 Java修饰符 Java运算符 Java循环结构 Java分支结构 J
  • C++循环经典练习题

    目录 前言 一 方阵 二 乘法口诀表 1 正向打印 2 反向打印 三 打印三角形 1 正三角 2 倒三角 四 杨辉三角 五 水仙花数 六 斐波那契数列 七 进制转换 1 十进制转二进制 2 二进制转十进制 总结 前言 在C 的海洋中 循环是
  • Qt-4.7.2在dm365下的移植

    此篇为我的上一篇博客 Qt 4 7 2及QtEmbedded 4 7 2在ubuntu11 10下的安装 后续 主要参考 博客http blog chinaunix net uid 25652733 id 291521 html 同样 参照
  • 如何成为一个牛逼的程序员

    一个快乐的人 不是因为他拥有的多 而是因为他计较的少 心态比勤劳更重要 用心做好事 作为程序员 身边总是有牛逼的前辈 后辈或者同辈 牛逼的人总是让人羡慕 比如自己苦搞一天的 BUG 头发快抓掉完了 人家扫上两眼 改一行代码 问题就解决了 比
  • Building Mongodb with Visual Studio 2008

    Building Mongodb with Visual Studio 2008 标签 mongodbpythonjavascriptbuild数据库c 2011 08 27 14 43 938人阅读 评论 0 收藏 举报 分类 VS200
  • C++基础二:模板

    模板 模板的概念 模板就是建立通用的模具 大大提高复用性 例如生活中的模板 模板的特点 模板不可以直接使用 它只是一个框架 模板的通用并不是万能的 函数模板 C 另一种编程思想称为 泛型编程 主要利用的技术就是模板 C 提供两种模板机制 函
  • base64的原理及优缺点

    优点可以加密 减少了HTTTP请求 缺点是需要消耗CPU进行编解码
  • 机器学习总结(一)

    机器学习总结 一 一 基本概念 1 有监督学习 输入数据是带有标签的 称为有监督学习 2 无监督学习 输入数据是不带标签的 称为无监督学习 3 局部最优 函数值空间的一个有限区域内寻找最小值 这个最小值 是小于或等于附近点的函数值 但是有可