type
status
date
slug
summary
tags
category
icon
password

专业课复习-机器学习

0.简历问答

0.1介绍一下你的论文

心血管疾病是危害人类健康的主要疾病之一,在临床实践中常采用心电图分析来诊断心率失常。然而现有的方法主要依靠人工,繁琐且效率低下,设计算法辅助诊断意义重大。我们需要做的就是设计一种算法来判断心拍片段是否发生心律失常及其类型。
我们的算法主要包括信号预处理,特征提取和特征分类三个部分。在预处理部分,我们首先使用离散小波变换来对心电信号进行去噪。然后使用基于注意力机制的长短时记忆网络自编码器来对去噪后的心电信号进行特征提取。在编码器中提取到的深度特征被送到GWO-SVM分类器中,得到分类结果。
由于心电信号一般比较微弱,幅值较低,很容易被噪声干扰,因此首先需要滤除噪声。我们使用db8小波基函数对其进行九尺度分解,然后使用逆小波变换还原得到去噪后的信号。
特征提取部分,我们使用基于自注意力机制的自编码器来进行特征提取。自编码器的输入为预处理之后的心拍片段,它包括编码器和解码器两部分。在编码器中,首先使用两层堆叠的Bi-LSTM层对心电信号进行编码表示,使用固定位置编码保证自注意力机制可以获得位置信息。残差连接和层归一化(Layer Normalization)被使用来避免梯度消失和权重矩阵退化的问题。最后经过两个连续的全连接层获得心拍序列的特征向量。在解码器中,特征向量被重构以获得和输入相同的向量。
在分类器中,我们使用灰狼-支持向量机(GWO-SVM)来对提取到的深度特征进行分类。我们使用启发式算法中的灰狼优化算法GWO来对超参数进行启发式搜索。

1.机器学习

1.1SVM的原理
支持向量机SVM是一种二分类模型,它的基本技巧是定义在特征空间上的间隔最大的线性分类器;SVM还包括核技巧,将线性空间映射为高维的非线性空间,使它成为真正的非线性分类器。
SVM通过求解能够正确划分训练数据集和测试数据集并且几何间隔最大的分类超平面。
几何间隔:
实际上这个距离就是支持向量到超平面的距离。因此,SVM模型求解的最大分类超平面问题可以表示为一下约束优化问题。
notion image
对其进行转化
notion image
使用拉格朗日乘子法得到其对偶问题:
notion image
1.2LDA与SVM之间的区别?
SVM是一种二分类模型,它的目的是寻找一个超平面来对样本进行分割,分割的原则是间隔最大化,最终转化为一个凸二次规划问题来求解。
LDA线性判别分析是一种经典的有监督数据降维方法。LDA的主要思想是将一个高维空间中的数据投影到一个较低维的空间中,且投影之后要保证各个类别的类内方差小而类间均值差别大,这意味着
1.3 梯度下降法Grad Descent
梯度下降法包含多种:朴素梯度下降,随机梯度下降,小批量梯度下降,指数加权平均,动量梯度下降法。
每次梯度下降都遍历整个数据集,而mini-batch梯度下降法通过从数据集抽取小批量的数据进行小批度梯度下降,但是会产生下降过程中左右振荡的现象。而动量梯度下降法通过减小振荡对算法进行优化。算法核心便是对一系列梯度进行指数加权平均。
  • mini-batch Grad Descent:如果每执行一次梯度下降就遍历整个训练样本将会耗费大量的计算机资源。在所有样本中随机抽取一部分(mini-batch)样本,抽取的样本的分布规律与原样本基本相同,事实发现,实际训练中使用mini-batch梯度下降法可以大大加快训练速度。
  • 指数加权平均:指数加权平均值又称指数加权移动平均值,局部平均值,移动平均值。指数加权平均中各个元素所占权重呈指数分布。假设存在数列{Q1,Q2,Q3,Q4......},令V0=0。 最终得到的系数权重呈指数分布。
  • 动量梯度下降法对之前求得的mini-batch的梯度dW,db使用指数加权平均得到VdW,Vdb。并使用新的参数更新之前的参数。这样能够显著减少梯度下降过程的震荡。
1.4 Attention的时空复杂度
  • 相似度计算 运算,得到n*n矩阵,复杂度为
  • softmax计算:对每行做softmax,复杂度为,则n行的复杂度
  • 加权和:运算,得到矩阵,复杂度为
因此最后的self-attention的时间复杂度为
1.5 Self-Attention中的Softmax作用?
一句话解释Attention->给序列中的各个元素分配一个权重系数
用Softmax函数对注意力得分进行数值转换。一方面可以进行归一化,得到所有权重系数之和为1的概率分布,另一方面可以用softmax函数的特性突出重要元素的权重。
Attention函数通过三步得到注意力值:
(1)Q与K进行相似度计算得到权值。
(2)对权值softmax进行归一化。
(3)用归一化的权值与V加权求和。

2.人工智能

2.1A*算法
A*算法是一种很常用的启发式搜索算法,它通过下面这个函数来计算每个节点的优先级:
其中:
  • 为节点n的综合优先级,当我们要选择下一个要遍历的节点时,我们总会选取综合优先级最高(值最小)的节点。
  • 是节点n距离起点的代价。
  • 是节点n距离终点的预计代价,这也就是A*算法的启发式函数。
A*算法在运算过程中,每次从优先队列中选取f(n)值最小的节点作为下一个待遍历的节点。
此外,A*算法使用两个集合来表示待遍历的节点,与已经遍历过的节点,通常称之为open_setclose_set
完整的A*算法描述如下:
A*算法中的启发函数:
启发式函数会影响A*算法的行为。
在极端情况下,当启发函数h(n)始终为0,则将由g(n)决定节点的优先级,此时算法就退化成了Dijkstra算法。
如果h(n)始终小于等于节点n到终点的代价,则A*算法保证一定能够找到最短路径。但是当h(n)的值越小,算法将遍历越多的节点,也就导致算法越慢。
如果h(n)完全等于节点n到终点的代价,则A*算法将找到最佳路径,并且速度很快。
如果h(n)的值比节点n到终点的代价要大,则A*算法不能保证找到最短路径,不过此时会很快。
对于网格形式的图,有以下这些启发式函数可以使用:
  • 如果图形中只允许朝上下左右四个方向移动,则可以使用曼哈顿距离
  • 如果图形中允许朝八个方向移动,则可以使用对焦距离
  • 如果图形中允许朝任何方向移动,则可以使用欧几里得距离

3.小样本学习

小样本学习在机器学习领域具有重大意义和挑战,是否拥有从少量样本中学习和概括的能力,是将人工智能和人类智能进行区分的明显分界点,因为人类可以仅通过一个或几个示例就可以轻松地建立对新事物的认知,而机器学习算法通常需要成千上万个有监督样本来保证其泛化能力。小样本学习(Few-shot Learning)包括两种类型,基于生成模型和基于判别模型。
  • 判别方法由数据直接学习决策函数 或者条件概率分布 作为预测的模型,即判别模型。判别方法关心的是对给定的输入, 应该预测什么样的输出
  • 生成方法由数据学习输入和输出联合概率分布 , 然后求出后验概率作为预测的模型,即生成模型。
4.2半监督学习
半监督学习属于弱监督学习的一个分支领域。通常来说包含三类:
  • 不完全监督(incomplete supervision),即只有训练集的一个(通常很小的)子集是有标签的,其他数据则没有标签。
  • 不确切监督(inexact supervision),即只有粗粒度的标签,例如,某些图像问题只有人工打标的粗粒度的标签。
  • 不准确监督(inaccurate supervision),模型给出的标签不总是真实的。
发展史:
(1)self-training,自我训练,也称之为伪标签技术。其基本思路就是,在已标注的数据上训练, 然后对未标注数据进行预测,取预测置信度最高的样本直接对其进行标签定义,然后将这类样本纳入当前训练样本中继续训练,直到模型的预测结果不再发生变化。
(2)直推式学习
(3)半监督学习开始得到一些应用
(4)半监督学习的思想与方法被应用于文本等特定领域并逐渐发展
(5)半监督学习的思想出现在很多领域中,例如mixup、mixmatch等更加复杂的深度学习相关半监督技术。
 
 
 
 
 
保研专业课复习-数学保研复试——数据结构
JsingMog
JsingMog
一个热爱探索未知的少年
公告
type
status
date
slug
summary
tags
category
icon
password
🎉JsingMog个人博客将持续更新🎉
博客将涉及各种内容
个人成长、研究历程、升学经历等等
-- 感谢您的支持 ---
👏欢迎到来👏