自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (2)
  • 收藏
  • 关注

原创 openCV(三)绘制几何图形

openCV内置了几何图形绘制函数,通过简单的操作就可以绘制几何图形。例如,可以绘制直线、矩形、圆形、椭圆、多边形、文字等,分别对应函数。注意:起始角度和终止角度不足360°时,椭圆不闭合,画的是圆弧。:表示轴的长度(短半径(X)和长半径(Y)):表示偏转的角度(逆时针旋转):表示圆弧起始的角度(逆时针):表示圆弧终止的角度(逆时针)实际应用:画一条对角线的直线。设为-1,那么会绘制实心椭圆。:表示要绘制的椭圆圆心。:表示要绘制圆的圆心。:表示要绘制圆的半径。

2023-06-08 10:33:33 769

原创 图像分类的Tips和Tricks

图像分类技巧汇总

2022-12-29 20:10:27 1011 1

原创 openCV(二)基础操作

opencv对图像的色彩变化、像素读写、算术运算

2022-12-14 23:21:31 441

原创 openCV(一)基础背景

opencv基数及图像读取与显示

2022-12-12 21:20:17 653

原创 解决:python调用pyside找不到dll load failed问题

解决pyside2导入时dll load failed问题

2022-08-15 16:07:47 414

原创 DataWhale深度学习(五)循环神经网络

循环神经网络1 计算图2 RNN基本原理3 RNN训练算法BPTT4 LSTM基本原理5 其他RNN网络6 RNN主要应用参考资料循环神经网络(recurrent neural network, RNN) 是一类用于处理序列数据的神经网络。1 计算图计算图是形式化一组计算结构的方式,它的元素包括节点(node)和边(edge),节点表示变量,可以是标量、矢量、张量等,而边表示的是某个操作,即函数。用两个计算图来表示一个嵌套函数:还可以用一个图来表示一个复合函数:对于计算图的求导可以使用链式法

2021-12-01 12:04:20 863

原创 DataWhale深度学习(四)卷积神经网络

卷积神经网络1 卷积2 卷积神经网络基本原理2.1 卷积层2.2 激活函数2.3 池化层2.4 全连接层2.5 输出层2.6 卷积神经网络的训练3 经典卷积神经网络3.1 LeNet-53.2 AlexNet3.3 VGGNet3.4 Inception Net3.5 ResNet3.6 DenseNet4 主要应用卷积神经网络是指哪些至少在一层中使用卷积运算代替一般的矩阵乘法运算的神经网络,是一种专门用来处理具有类似网格结构的数据的神经网络,例如图像数据。该网络使用了卷积这种数学运算,这是一种特殊的线性

2021-11-27 15:14:42 944

原创 DataWhale深度学习(三)前馈神经网络

前馈神经网络1 神经元模型2 感知器模型2.1 单层感知器2.2 多层感知器3 误差反向传播算法(BP算法)3.1 基本过程3.2 激活函数3.3 优化问题参考1 神经元模型1943 年,美国神经生理学家沃伦·麦卡洛克( Warren McCulloch ) 和数学家沃尔特 ·皮茨(Walter Pitts )对生物神经元进行建模,首次提出了一种形式神经元模型,并命名为McCulloch-Pitts模型,即后来广为人知的M-P模型。在M-P模型中,神经元可以接受多个其他神经元的输出作为输入x={x1

2021-11-23 21:29:19 1447

原创 DataWhale深度学习(二)机器学习基础

机器学习基础1 基本概念1 基本概念

2021-11-20 16:53:48 1084

原创 DataWhale深度学习(一)数学基础

深度学习数学基础1 绪论2 概率论3 信息论4 线性代数1 绪论近年人工智能异常火热,它虽然是一门新兴的学科,但是在图像、自然语言、语音等领域大放异彩。而各行各业也积极拥抱AI,使得机器学习技术炙手可热。深度学习作为机器学习的一部分也获得了大量的关注,特别是卷积神经网络在图像识别竞赛中获得巨大优势,以及DeepMind应用强化学习战胜世界围棋高手李世石,使得深度学习万众瞩目。深度学习的发展离不开数学,概率法则告诉我们AI系统如何推理,信息论使我们能够量化概率分布中的不确定性总量,对于算法以及AI框架的

2021-11-17 16:33:19 803

原创 DataWhale图网络学习(八)图预测任务实践

DataWhale图网络学习(七)超大规模数据集类的创建11

2021-07-08 23:05:33 386

原创 DataWhale图网络学习(七)超大规模数据集类的创建

超大规模数据集类的创建1 `Dataset`基类1.1 无需定义`Dataset`类情况2 图样本封装成批(BATCHING)与`DataLoader`类2.1 合并小图组成大图2.2 小图的属性增值与拼接前面介绍了可以将数据集全部加载到内存的数据集,然而在实际中,一般数据集都很大,无法全部加载到内存,因此我们需要了解按需加载样本到内存的数据集类。1 Dataset基类我们通过继承torch_geometric.data.Dataset基类来自定义一个按需加载样本到内存的数据集类,此基类与Torchv

2021-07-05 10:50:01 218

原创 DataWhale图网络学习(六)基于图神经网络的图表征学习方法

基于图神经网络的图表征学习方法1 图同构网络理论2 图同构网络实现前边我们已经了解了图节点的表征学习,其主要是根据节点的属性进行学习和预测,而现在我们要学习基于图神经网络的图表征的学习方法。图表征就是根据图的节点属性和边(及边的属性如果有的话)得到一个向量作为图的表征,基于这个表征我们再进行下一步的图预测。基于图同构网络How Powerful are Graph Neural Networks? 的图表征网络是当前最经典的图表征学习网络,我们就以这个为例来学习。图同构网络设计的动机是:目前新的图神经网

2021-07-03 21:18:47 480 1

原创 DataWhale图网络学习(五)超大图上的节点表征学习

超大图上的节点表征学习0 节点表征学习1 图网络面临的问题2 Cluster-GCN分析2.1 简单的Cluster-GCN2.2 随机多分区2.3 深层GCNs的训练问题3 Cluster-GCN实践3.1 数据集准备3.2 图节点聚类与数据加载器生成3.3 构造图神经网络的规范3.4 训练、验证与测试0 节点表征学习首先我们回忆一下图网络的节点表征学习,对于给定图G=(V,E,A)G=(\mathcal{V}, \mathcal{E}, A)G=(V,E,A),它由N=∣V∣N=|\mathcal{

2021-07-01 18:30:54 199

原创 DataWhale图网络学习(四)数据完全存于内存的节点预测与边预测实践

图网络学习四1 数据完全存于内存的数据集类1.1 `InMemoryDataset`基类简介2 节点预测实践3 边预测实践1 数据完全存于内存的数据集类1.1 InMemoryDataset基类简介在PyG中,我们通过继承InMemoryDataset类来自定义一个数据可全部存储到内存的数据集类:class InMemoryDataset(root: Optional[str] = None, transform: Optional[Callable] = None, pre_transform:

2021-06-25 18:02:59 390

原创 DataWhale图网络学习(三)基于图神经网络的节点表征学习

基于图神经网络的节点表征学习1 数据准备在图节点预测或边预测任务中,首先需要生成节点表征。高质量节点表征应该能用于衡量节点的相似性,然后基于节点表征可以实现高准确性的节点预测或边预测,因此节点表征的生成是图节点预测和边预测任务成功的关键。基于图神经网络的节点表征学习可以理解为对图神经网络进行基于监督学习的训练,使得图神经网络学会产生高质量的节点表征。在节点预测任务中,对于一个图上的很多节点,部分节点的标签已知,剩余节点的标签未知。将节点的属性(x)、边的端点信息(edge_index)、边的属性(edg

2021-06-22 11:17:55 747

原创 DataWhale图网络学习(二)消息传递图神经网络

消息传递图神经网络1 消息传递范式2 MessagePassing基类3 `MessagePassing`子类实例图计算任务成功的关键是为节点生成节点表征,而我们要利用神经网络来学习节点的表征。消息传递范式是一种聚合邻接节点信息来更新中心节点信息的范式,它将卷积算子推广到了不规则数据领域,实现了图与神经网络的连接。1 消息传递范式如下图所示,展示了基于消息传递范式的聚合邻接节点信息来更新中心节点信息的过程:图片来源于:Graph Neural Network • Introduction to G

2021-06-19 22:28:25 456

原创 DataWhale图网络学习(一)图论基础知识

图论基础知识1 图的表示1.1 图的定义(图)1.2 邻接矩阵2 图的属性2.1 节点的度2.2 邻接节点2.3 行走2.4 邻接矩阵A的n次方2.5 路径2.6 子图2.7 连通分量2.8 连通图2.9 最短路径2.10 直径2.11 拉普拉斯矩阵3 图的种类4 图结构数据上的机器学习5 图结构数据的特点和挑战5.1 图结构数据的特点5.1 深度学习在图结构数据上所面临的挑战1 图的表示1.1 图的定义(图)一个图被记为G={V,E}\mathcal{G}=\{\mathcal{V}, \math

2021-06-16 22:00:49 945

原创 DataWhale集成学习笔记(十)案例分析(一)幸福感挖掘

幸福感挖掘1 题目理解2 数据解析3 数据挖掘1 题目理解2 数据解析3 数据挖掘

2021-05-18 21:26:18 477 1

原创 机器学习(九)——线性判别分析(LDA)

线性判别分析(LDA)1 线性判别原理1.1 基于贝叶斯公式的理解1.2 基于降维分类思想的理解2 代码实践1 线性判别原理LDA的思想非常简单:对于给定数据集,设法将其投影到一条直线上,使得同类样本的投影点尽可能接近,异类样本的投影点尽可能远离;对新的测试样本,将其投影到同样的直线上,在根据投影点的位置来判断测试样本的类别。“投影后类内方差最小,类间方差最大”LDA是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的。LDA还可以用于分类。一个常见的LDA分类基本思想是:假设各个类别

2021-05-15 14:43:16 539

原创 DataWhale集成学习笔记(九)Stacking集成算法

Stacking集成算法1 Blending集成学习算法1.2 代码实例2 Stacking集成算法Stacking集成算法可以理解为一个两层的集成,第一层含有多个基础分类器,把预测的结果(元特征)提供给第二层, 而第二层的分类器通常是逻辑回归,他把一层分类器的结果当做特征做拟合输出预测结果。1 Blending集成学习算法Blending集成学习算法是一种简化版的Stacking集成算法。Blending集成学习的算法流程:将数据集划分为训练集和测试集 (test_set),然后将训练集再次

2021-05-08 10:49:28 518

原创 机器学习(八)——K近邻学习(K-Nearest Neighbor, KNN)

K近邻(KNN)1 KNN 原理1.1 模型优化1.1.1 K值的选择1.1.2 距离/相似度度量1.1.3 投票策略1.2 KNN的应用1.3 泛化性能2 代码实践2.1 回归任务2.2 分类任务2.3 缺失值填充1 KNN 原理K近邻学习是一种常用的监督学习方法,也是“懒惰学习”的代表(因为它没有显式的学习过程)。它的思想很简单:给定测试样本,基于某种距离度量找出训练集中与其最靠近的K个样本,然后基于对这K个“邻居”的投票进行预测。 KNN的建立过程很简单:给定测试样本,计算它与训练集中每一个样

2021-04-28 14:26:49 892

原创 DataWhale集成学习笔记(八)Boosting

Boosting1 Boosting原理1.1 弱学习与强学习1.2 Boosting思想2 AdaBoost3 梯度提升决策树(GBDT)4 XGBoost5 LightGBM1 Boosting原理集成学习的一般结构是:先学习一组“个体学习器”,再将他们根据某种策略组合起来。而这些“个体学习器”对于当前数据集的学习能力有强有弱,那么这些“个体学习器”的学习性能就可以用”弱学习器“和”强学习器“来表示。1.1 弱学习与强学习那么什么是弱学习器和强学习器呢?历史上Valiant和 Kearns提出了

2021-04-28 11:31:30 163

原创 机器学习(七)——LightGBM算法

LightGBM算法1 算法原理2 代码实践1 算法原理2 代码实践

2021-04-28 11:16:27 10914 2

原创 机器学习(六)——XGBoost算法

XDBoost算法1 XGBoost算法原理1.1 算法推导1.2 优缺点1 XGBoost算法原理XGBoost算法在Gradient Boosting框架下实现,是一个优化的分布式梯度增强库,旨在实现高效,灵活和便携,本质上还是一个GBDT。Xgboost算法以CART决策树为子模型,通过Gradient Tree Boosting实现多棵CART树的集成学习,得到最终模型。 XGBoost提供了并行树提升(也称为GBDT,GBM),可以解决超过数十亿个样例的问题。1.1 算法推导这里引用陈天奇

2021-04-26 23:03:58 1420 1

原创 排序算法

排序1 插入排序1.1 直接插入排序1.2折半插入排序1.3 希尔排序2 交换排序2.1 冒泡排序2.2 快速排序3 选择排序4 归并排序5 基数排序6 外排序先导概念:排序数据是由一组元素组成的表,元素由若干个数据项组成,数据项对应的值称为关键字。通俗理解这里将list称为表,将其中的数称为关键字.内排序:整个排序表都放在内存中处理,排序时不涉及数据的内、外存交换。根据是否基于比较,内排序分为基于比较的:插入排序、交换排序、选择排序和归并排序;和不基于比较的基数排序。外排序:排序过程中要进行数据的

2021-04-24 19:44:29 181

原创 机器学习(五)——梯度提升决策树(GBDT)

梯度提升决策树(GBDT)1 基于残差学习的梯度提升树2 梯度提升决策树(GBDT)3 算法实践梯度提升决策树(GBDT),在传统机器学习中算得上是TOP3的算法。GBDT使用的基学习器是CART回归树,而且无论是回归还是分类,都使用的是回归树。为什么不使用决策树呢?因为GBDT每次迭代要拟合的是梯度值,也就是说样本标签是连续的,因此需要使用回归树。(对于决策树的构造原理可以参考我这篇文章)1 基于残差学习的梯度提升树要想理解GBDT,我们先来看一下基于残差学习的梯度提升树(即,基于残差学习的加法模型

2021-04-22 20:05:00 1925 1

原创 机器学习(四)——AdaBoost

AdaBoost1 AdaBoost原理1.1 算法流程2 代码实践1 AdaBoost原理AdaBoost算法是一种Boosting算法,它在解决Boosting算法提出的两个问题时,给出的答案是:1、(改变数据分布的问题) 提高那些在前一轮分类器中被错误分类的样本的权重,减小那些被正确分类样本的权重,这样那些被分类错误的样本在后续的训练中得到了更大的关注;2、(组合各个弱分类器策略的问题) 各个弱分类器的组合是通过加权表决进行组合的,具体来说就是加大分类错误率低的弱分类器的权重,减小分类错误率高的弱

2021-04-20 11:05:12 540

原创 DataWhale集成学习笔记(七)Bagging与随机森林

Bagging1 Bagging原理1.1 自助采样法(bootstrap sampling)1.2 Bagging原理分析2 代码实践1 Bagging原理1.1 自助采样法(bootstrap sampling)给定包含mmm个样本的数据集DDD,我们对其进行采样产生数据集D′D'D′:每次随机从数据集DDD中挑选一个样本,将其拷贝放进D′D'D′中,然后再将该样本放回初始数据集DDD中,使得该样本下次仍然可以被采样到;这一过程重复nnn次,就能得到一个包含nnn个样本的的数据集D′D'D′;初始

2021-04-17 22:51:51 193

原创 机器学习(三)——决策树(Decision Tree)

决策树1 决策树原理1.1 决策树的构造1.2 划分指标1.2.1 信息增益1.2.2 基尼(GINI)系数2 剪枝处理1 决策树原理决策树是基于树形结构来进行决策的,目的是产生一颗泛化能力强的决策树,其基本流程遵循简单且直观的分而治之策略。一般的,一颗决策树包含一个根结点、若干内部结点和若干叶结点;其中叶结点对应决策结果,其他结点对应一个属性测试,每个分支代表一个判断结果的输出;每个结点包含的样本集合根据属性测试的结果被划分到子结点中;根节点包含样本全部结点。1.1 决策树的构造对于训练集D={

2021-04-16 16:35:14 599 1

原创 DataWhale集成学习笔记(六)投票法

投票法1 投票法原理2 投票法实践2.1 回归投票法2.2 分类投票法1 投票法原理投票法依据的少数服从多数的原则,在理想情况下,投票法集成的结果要优于各个基模型预测的结果。因此在分类器不理想的情况下,可以使用多个弱分类器进行投票集成,这样可以得到一个相对较好的结果。例如,对于一个二分类任务,有一个弱分类器,预测准确率为51%,那么以这个弱分类器为基分类器,集成3个,最终的预测准确率为:ACC=C32  0.512×0.49+C33  0.513=51.50%ACC=C_3^2\;0.51^2\time

2021-04-13 15:42:28 580 2

原创 机器学习专项练习题

之所以说监督学习和无监督学习之间并不存在一条严格的界限,是因为很难客观地区分监督者给定的一个值是特征(feature)还是目标(target)。(正确)解答:当深度学习网络的最后一层是一个softmax分类器时,我们可以把网络的前面部分看成是一种表示学习(Representation Learning)的计算单元。(正确)解答:表示学习指学习对观测样本XXX有效的表示。比如CNN参数的有监督训练是一种有监督的表示学习形式;对自动编码器和限制玻尔兹曼机参数的无监督预训练是一种无监督的表示学习形..

2021-04-01 15:16:52 5756

原创 DataWhale集成学习笔记(五)

本文参考模型评估和调参1 基于交叉验证的模型评估2 使用学习和验证曲线调试算法2.1 学习曲线2.2 验证曲线3 超参数调优3.1 网格搜索3.2 随机网格搜索4混淆矩阵5 ROC曲线1 基于交叉验证的模型评估由于在实际训练中,分类器往往对训练数据分类较好,而对于测试数据拟合程度较差,因此我们需要用交叉验证法来评估模型的泛化能力,并对模型进行选择。交叉验证的基本思路为将样本分成训练组和测试组,用训练组构建分类模型,用测试组验证模型并且评估模型性能。交叉验证法主要包括k-fold交叉验证法、随机子抽样法

2021-03-29 20:30:38 113

原创 DataWhale集成学习笔记(四)

构建分类模型1 收集数据并选择合适的特征2 选择模型性能的度量指标3 选择具体的模型3.1 逻辑回归模型3.1.1 逻辑回归原理3.1.2 逻辑回归应用3.1.3 代码演示3.2 基于概率的分类模型3.2.1 线性判别分析(LDA)3.2.2 朴素贝叶斯3.3 决策树3.4 支持向量机1 收集数据并选择合适的特征本次使用我们比较熟悉的鸢尾花数据集。鸢尾花数据集一共包含5个变量,其中4个特征变量,1个目标分类变量。共有150个样本,目标变量为 花的类别 其都属于鸢尾属下的三个亚属,分别是山鸢尾 (Iri

2021-03-27 22:38:24 159

原创 DataWhale集成学习笔记(三)

偏差与方差理论1 训练误差与测试误差2 估计、偏差和方差2.1 估计2.2 偏差2.3 方差2.4 权衡偏差和方差以最小化均方误差3 最小化测试误差的方法3.1 特征提取3.1.1 训练误差修正3.1.2 交叉验证3.1.3 特征选择方法3.2 正则化3.2.2 L1正则化3.2.3 L2正则化3.3 降维3.3.1 主成分分析1 训练误差与测试误差使用训练集估计模型的参数,通常我们会在训练集上计算一些被称为训练误差的度量误差,目标是降低训练误差,原则一般都是使得我们的损失函数在训练集达到最小值,其实在

2021-03-22 22:41:45 229

原创 DataWhale集成学习笔记(二)

该学习内容基于DataWhale的开源内容1 回归

2021-03-18 23:46:30 184

原创 机器学习(二)——朴素贝叶斯(NB)模型

1 基础知识1.1 条件概率条件概率是指我们感兴趣的事一件事先发生作为前提下,发生的概率。给定事件B在事件A发生的前提下发生的概率记为P(B|A):P(B∣A)=P(A,B)P(A) P(B|A) = \frac{P(A,B)}{P(A)}\,P(B∣A)=P(A)P(A,B)​其中P(A,B)表示A、B同时发生的概率,P(A)表示A事件发生的概率。1.2 贝叶斯规则我们经常会需要在已知P(A|B)的情况下求P(B|A)。例如医生知道某种病存在什么症状,但是在诊断时,医生是根据病人出现的症状确定

2021-03-17 16:31:22 1243

原创 DataWhale集成学习笔记(一)

机器学习机器学习可以分为有监督和无监督学习,二者都含有数据的特征向量;但是相比无监督,有监督有因变量,有预测的结果,也就是x和y都已知,学习过程中可以根据已知标签进行纠正;无监督学习则无因变量,主要学习寻找数据中的结构信息,比如学习数据的分布等。...

2021-03-15 23:07:31 193

原创 人脸表情识别笔记

摘要通过人脸图片对表情进行识别,受人脸姿态等其他因素地影响很大,如果达到80则是一个不错地成绩,但是该任务不仅仅是一个分类问题。1 数据在实际的任务中图片的脸部是不规整的,可能是一个人或者多个人;图片的大小可能不统一;数据集较大,数量庞大,不能一次性输入内存进行计算,而应该分批。1.1 数据存储方法**形式一:**同一类的图片放到同一个文件夹下,文件夹以类别进行命名,如下图所示。**形式二:**两个文件夹,一个文件夹存放图片数据(非结构化数据),另一个CSV文件存储标签和路径。CSV文件中每一

2020-11-28 21:41:01 207

原创 卷积、深度学习中的卷积和反卷积

本文主要浅谈博主对信号处理中卷积操作、深度学习中卷积操作和反卷积的理解。

2020-10-09 16:59:42 914 2

butter_bandpass_filter.m

matlab编写的巴特沃斯带通滤波器,对应于我的博文中的带通滤波器,需要的可以自行下载。它的参数分别为低频、高频、采样率、阶数。

2020-02-19

compute_psd.m

用于提取信号的PSD特征的函数,其他信号通用.直接调用函数即可。于文章中的PSD对应,大家可以参考自己调用matlab函数自己写,自己写的才适合自己的数据。

2019-05-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除