【机器学习】笔记-《漫画机器学习入门》——大关真之

2023-11-23 03:10

本文主要是介绍【机器学习】笔记-《漫画机器学习入门》——大关真之,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. 机器学习:通过对各种信息的汇总与分析,达到预测未来或者对未见事物进行推测的目的。
    机器学习就是向计算机中输入各种数据,利用计算机已有的命令(计算机程序)去完成各种计算和分析判断。
    计算机可以自动获取大量数据背后隐藏的关系和规律,能够对外面世界的法则进行学习,这就是机器学习。

  2. 特征量:我认为,特征量就是衡量一个事物需要用到的主要属性,比如衡量“美丽”,特征量就有“年龄”、“皮肤状态”等等。通过将特征量转换成数值,我们才能够进行机器学习。

  3. 特征向量:将特征量集中在一起表示出来,就是特征向量。

  4. 权重:表示参数(即特征量)的重要程度,通常是0到1之间的一个小数。1表示非常重要,0表示完全不重要。此外,也可以设置为负数。

  5. 输入数据(即特征向量) → 函数模型计算 → 输出结果

  6. 回归:我们开始的时候并不知道准确的函数模型,因此首先要建立一个近似的函数模型(通过猜测)
    → 然后通过与数据(包括输入与输出)的不断拟合,对函数进行微调。

  7. 通过矩阵运算,可以简化对方程式的变形和计算。

  8. 确定直线函数:斜率+截距。

  9. 误差函数:不是一种固定的类型,可以是方差或标准差。

  10. 有监督学习:已知正确输出结果,通过修改模型函数的参数去拟合这个正确结果的过程。

  11. 无监督学习:
    在这里插入图片描述

  12. 聚类:将数据按照结构或特征进行分类。

  13. 梯度下降法:利用微分的思想,每次对参数的调整都只改变一点点,当改变参数之后误差变小,便保持这个方向调整这个参数,直到误差值保持不变或者反而有所上升时为止。依次改变各个参数。
    在这里插入图片描述

最快梯度下降法:确定多个参数的改变方向之后,同时改变参数来减少误差。
在这里插入图片描述

梯度下降法的缺点:梯度下降法能达到极小值,但有可能不是最小值。
因为微分反映的是一种变化趋势。微分是要在某个数据点附近进行计算,但对于更大更远的空间范围,微分是无能为力的。

14. 训练用数据 & 测试用数据。
15. 通用性:用一部分数据来评价全体的能力。
16. “过度学习”:即“过学习”,指模型仅仅匹配训练用数据,但不满足测试用数据。
17. 将数据分成训练用数据和测试用数据,最常用的做法:将数据分成若干组,在每一组中,都将一份数据作为测试用数据,剩下的都作为训练用数据。当然,每一组拿出多少份作为测试用数据的数目不是固定的,可以根据实际情况而定。
18.
在这里插入图片描述

  1. 线性特性:

乘法和加法无论前面组合过多少次,最后总会合并成一次乘法和一次加法运算。这种只有乘法和加法运算的情况被称为线性特性。
除法和减法,其实就是乘法和加法的逆运算,所以并没有什么本质区别。

  1. 由原始的特征量直接加权求输出,这种模型对于求解某些问题来说,过于简单,并且难以得到理想的结果。因此我们需要使模型变得复杂一些。我们可以考虑通过现有的特征量去组成新的特征量,并且也给这些新的特征量不同的权重。

复杂模型中如果只有线性特性的话,效果是不好的。

  1. Sigmoid函数,用符号sig(x)表示。利用Sigmoid函数进行非线性变换:

首先,给每一个特征值加权再将这些结果求和。
将这个结果作为Sigmoid函数的输入量x,去求sig(x)即可。

处理复杂的问题就需要使用复杂的函数。
要设计一个复杂的函数,就需要非线性变换,幂运算就是其中一种。指示函数包含了幂运算,所以也是非线性变换。

  1. 单层神经网络:原先单纯将特征量直接加权组合求结果的模型:
    在这里插入图片描述

多层神经网络:在单层神经网络的模型的基础上,增加了非线性变换。
在这里插入图片描述

中间层:

把特征量组合后进行非线性变换的是中间层(也叫做隐层)。

  1. 正向(前馈)型神经网络、双向(反馈)型神经网络、回归型神经网络结构。
  2. 对多层神经网络的模型进行微调时,不能单纯改变参数的权重,这样难以减小误差。

误差变化的程度和趋势就意味着梯度。

因此,在多层神经网络中,需要使用误差逆向传播算法(也叫做BP算法,书中没有介绍原理)对各种权值进行调整。

方法是这样的:现在轻轻搬动离输出层最近的摇杆,让摇杆的影响一步就可以直接传递到输出(方法还是要通过微分使得误差函数值变小)。
完成与输出最近的一层摇杆的调节后,再调整倒数第二层的摇杆。相当于从输出倒着向输入层的方向逐层调节摇杆。
权值不能一次变化太大。否则有可能造成输出结果反而变差。

  1. 挑选神经网络中,用来完成非线性变换的函数时,需要注意其梯度的大小,因为这将影响到多层神经网络中对权值的调整。

其实到底采用什么函数比较好,这个问题一直是众说纷纭的。
最近斜坡函数也渐渐获得了研究人员的重视。

微分之后的结果与摇杆是否容易搬动是有直接关系的。

  1. 防止过度学习的一种方法,中退取舍(dropout)法:

适当地选取一定比例的特征量,剩下的全部舍弃不用。

为了不出现过度学习,不能让某个参数值远远大于其他参数值,也不能让同一个参数在某个时刻的值远远大于其他时刻的值,否则必须对数据进行处理。

  1. 批量学习:

将全部数据收集齐了之后一起作为训练用数据使用。

在线学习:

随着数据不断地获取而逐步进行的学习。
数据的采集方法没有变,所以新数据基本有不会出现与原来数据差距极大的情况。

在线学习的通用性很好。
概率梯度下降法:这种方法是对批量学习的一种改进:

把已经获得的所有数据按照一定程度分成若干小组,对每一组数据分别进行学习。
数据分组的时候不能按自己的意愿进行。因此我们采用概率的方式去分组这些数据。

  1. 鞍点:

当有很多参数的时候,沿着某个方向滑动就有走向谷底的感觉。但是如果再向其他方向搜索的话,可能误差还会降低,这就是鞍点。

在这里插入图片描述

看到这里,对概率梯度下降法有了点新的认识,我认为概率梯度下降法就是会定时(或随机时间)调整各个分组的顺序,因此机器每一次都会重新尝试新的调整方向,这样就解决了鞍点带来的问题。

与其冲着预先规定好的方向一直走下去,倒不如时不时地左看看、右转转。
让机器进行学习的过程首先就是要尽量模仿人的这种学习过程,之后再让机器自己去寻找更适合的学习方法,这才是机器学习算法的发展方向。

  1. 单位阶跃函数。
  2. 分割用超平面:将数据集分割开来的直线(或非直线,比如曲线、曲面)。

我们不仅要正确地分割数据,还希望尽可能地将分割超平面调整到离这些数据点都比较远的地方,也就是提高数据分割的安全裕量。

  1. 感知器:可以通过移动分割超平面将不同特征的数据进行分类的模型。
  2. 支持向量机:支持向量机也是一种模型,用于尽可能地扩大安全裕量。

支持向量机的通用性非常好。能够根据分割数据指标的不同做出各种分割超平面。

  1. 矩阵:

矩阵虽然是由数字构成的,但应该看作是一些模式的排列。
我们看到的是大量的数字,但机器学习的目的就是要从这些数字中找到规律。
在一个矩阵中存在模式的个数,叫做秩。
如果矩阵的秩比较小,矩阵中空白的地方可以通过重新构建低秩矩阵来处理。

在这里插入图片描述

我们的目的是希望误差函数值尽量小,因此只要是在模型输出和数据匹配的范围内,不很重要的权值设置为零也是允许的。
当我们看到数据很复杂时,最好先别考虑选用复杂的模型去匹配。我们应该看看是不是有更加简单的规则来描述这个模型。

  1. 似然度:相似的程度。
  2. 玻尔兹曼机器学习:

我们将图像的颜色数据输入到玻尔兹曼机中,计算机通过分析这些数据,就可以得到实际图像的特征、各像素点显示某种颜色的概率,以及相邻像素间的关系等。这种学习过程就叫做玻尔兹曼机器学习。
在玻尔兹曼机器学习的时候有一个特殊的过程:将实际提供的数据输入到玻尔兹曼机之后,模型会输出伪数据(重构数据),我们要看课重构数据与实际数据的相似程度是否足够大。
玻尔兹曼机器学习是一种双向型神经网络。

在这里插入图片描述

  1. 采样:

这是玻尔兹曼机器学习中的一个过程,就是要自身不停地产生出书籍来。

  1. 玻尔兹曼机器学习在进行时,如何考虑相邻像素之间的关系:可采用的方法有:马尔科夫链蒙特卡罗方法、平均场近似法、信息交互法。
    马尔科夫链蒙特卡罗方法:

这是一种在整个网络结构中的循环,在这一过程中还要不断地采集大量的重构数据。

平均场近似法:

单纯考虑由相邻像素传送来的信息。

信息交互法:

与相邻像素进行信息的相互交流。

在这里插入图片描述

  1. 隐含变量:

无法直接取得的,或者看不见的数据。

  1. 受限玻尔兹曼机:在玻尔兹曼机的基础上,加入了开关的概念。
    开关:

当开关打开(ON)的时候,通过像素和开关之间的关系就可以决定在可见变量一侧表示出什么。

受限玻尔兹曼机:

这种方法认为可见变量(像素)之间没有任何关联,各个开关之间也没有关联。只考虑开关与像素之间的关系,叫做受限玻尔兹曼机。

  1. 对比散度算法。
  2. 深度玻尔兹曼机。
  3. 自我符号化。
  4. 降维操作:

通过输入的特征量在中间层进行重新组合,这样就可以降低输出的数量,最终只保存输入中最重要的部分。

这篇关于【机器学习】笔记-《漫画机器学习入门》——大关真之的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/414936

相关文章

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

数论入门整理(updating)

一、gcd lcm 基础中的基础,一般用来处理计算第一步什么的,分数化简之类。 LL gcd(LL a, LL b) { return b ? gcd(b, a % b) : a; } <pre name="code" class="cpp">LL lcm(LL a, LL b){LL c = gcd(a, b);return a / c * b;} 例题:

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学