- 博客(75)
- 收藏
- 关注
原创 数据结构与算法-砖墙问题
你现在要画一条 自顶向下 的、穿过 最少 砖块的垂线。如果你画的线只是从砖块的边缘经过,就不算穿过这块砖。你不能沿着墙的两个垂直边缘之一画线,这样显然是没有穿过一块砖的。你的面前有一堵矩形的、由 n 行砖块组成的砖墙。这些砖块高度相同(也就是一个单位高)但是宽度不同。每一行砖块的宽度之和相等。采用数组记录砖缝,容易导致内存溢出,因此采用哈希表进行记录。问题假设:墙的宽度与每层砖的宽度一致,则之寻找砖缝。
2024-04-24 22:24:26 145
原创 数据结构与算法-图
图(graph)是一种非线性数据结构,由顶点(vertex)和边(edge)组成。我们可以将图 抽象地表示为一组顶点 和一组边。
2024-04-18 22:25:04 139 1
原创 数据结构与算法-哈希表
哈希表(hash table),又称散列表,它通过建立键 key 与值 value 之间的映射,实现高效的元素查询。具体而言,我们向哈希表中输入一个键 key ,则可以在时间内获取对应的值 value。
2024-04-17 22:05:01 244
原创 数据结构与算法-二叉树
二叉树(binary tree)是一种非线性数据结构,代表“祖先”与“后代”之间的派生关系,体现了“一分为二”的分治逻辑。与链表类似,二叉树的基本单元是节点,每个节点包含值、左子节点引用和右子节点引用。
2024-04-14 23:24:35 157
原创 数据结构预算法之列表
列表(list)是一个抽象的数据结构概念,它表示元素的有序集合,支持元素访问、修改、添加、删除、遍历、扩容等操作,无须使用者考虑容量限制的问题。
2024-04-14 19:45:36 334
原创 深度学习基础模型之Mamba
这项基础性模型研究旨在解决transformer模型的长序列数据计算效率低的问题,其解决方法的动机:利用选择性机制实现有效特征的提取。个人理解为通过有效特征信息的选择实现知识提取(信息压缩),这让我联想到,最初的VGG网络结构设计其实类似于模拟知识特征的压缩与抽取,但后来发现这种方式会损失边缘信息,因此提出了U-net架构,再进一步卷积的方式无法有效估计全局上下文信息的联系,进而提出注意力机制来解决这一问题。
2024-03-30 21:49:47 1028
原创 基于主成分分析的机器学习分类代码
本文内容主要实现基于主成分分析的数据降维和四种经典的机器学习分类算法,包括:支持向量机、随机森林、XGBoost分类器、scikit-learn的梯度提升分类器和Histogram-based Gradient Boosting分类器。
2024-03-29 22:07:02 337
原创 论文阅读:BLDnet: a semi-supervised change detection building damage framework using graph convolutional
内容来自于文心一言NetworkX:NetworkX是一个用于创建、操作和研究复杂网络的库。它提供了大量的图算法和绘图工具,使得构建和分析图结构变得简单。官方网站:https://networkx.org/PyTorch Geometric是基于PyTorch的几何深度学习扩展库,专注于图神经网络。它包含多种图神经网络模型和数据结构,可以方便地构建和训练GCN模型。官方网站:https://pytorch-geometric.readthedocs.io/en/latest/
2024-03-19 17:58:30 718
原创 Assertion `idx_dim >= 0 && idx_dim < index_size && “index out of bounds“` failed.
完整报错:C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\ScatterGatherKernel.cu:367: block: [3,0,0], thread: [114,0,0] Assertion。
2024-03-18 08:57:33 503
原创 c++笔记—— AutoBuffer类(opencv)
这个类用于函数和方法中的临时缓冲区。如果临时缓冲区通常很小(几K的内存),但其大小取决于参数,则在堆栈上创建一个小的固定大小数组,并在足够大时使用它是有意义的。如果所需缓冲区的大小大于固定大小,则动态分配另一个足够大的缓冲区,并在处理后释放它。因此,在典型情况下,当缓冲区大小很小时,与malloc()/ free()相关的开销是没有的。同时,对处理的数据大小没有限制。当使用的临时内存小于预分配的内存大小时,无需动态malloc/free,可以直接从内存池中取用,提高了性能变量名buf表示缓冲区的头指针。
2024-03-04 22:28:24 579
原创 图结构数据的构建-DGL库
图消息传递:定义在每条边上的消息函数,它通过将边上特征与其两端节点的特征相结合来生成消息,聚合函数接收消息,更新函数通过聚合后的消息和节点本身特征来更新节点特征。相比同构图,异构图里可以有不同类型的节点和边。这些不同类型的节点和边具有独立的ID空间和特征;基于dgl数据结构和pytorch线性层或lstm层构建图网络模型,前向传播包含,数据输入、消息聚合、数据输出。节点和边可具有多个用户定义的、可命名的特征,用以储存图的节点和边的属性。有向图一条边、无向图两条边、加权图具有权重;
2024-02-29 21:46:28 397
原创 论文阅读:基于超像素的图卷积语义分割(图结构数据)
GNN模型根据节点特征周围的边来训练节点特征,并获得最终的节点嵌入。通过利用具有不同滤波核的二维卷积对来自附近节点的信息进行整合,给定超像素方法生成的特征信息。本文是基于图卷积神经网络,利用超像素图斑对象构建图结构数据,通过对节点实现语义分类,实现超像素分割。
2024-02-29 21:13:42 704 1
原创 c++基础回顾之虚拟函数与友元函数
友元函数不被视为类成员;它们是获得了特殊访问权限的普通外部函数。友元不在类的范围内,除非它们是另一个类的成员,否则不会使用成员选择运算符(. 和 ->)调用它们。friend 函数由授予访问权限的类声明。可将 friend 声明放置在类声明中的任何位置。它不受访问控制关键字的影响。对于某些函数,当基类希望派生类重新定义合适自己的版本时,基类就把这些函数声明为虚函数。友元函数:一个不为类成员的函数,但它可以访问类的私有和受保护的成员。
2024-02-25 17:55:40 339
原创 c++基础回顾之引用
与指针相似的是,引用将存储位于内存中其他位置的对象的地址。与指针不同的是,初始化之后的引用无法引用不同的对象或设置为 null。声明方式引用保留对象的地址,但语法行为与对象一样。引用与被引用的变量指向同一地址因此,改变任意变量,会引起整体变量的改变函数参数传递引用,这使编译器能够在保持已用于访问对象的语法的同时传递对象的地址。
2024-02-20 22:46:25 353
原创 书生谱语-基于 InternLM 和 LangChain 搭建知识库
在创建web_demo时,需要根据教程将服务器端口映射到本地端口,另外需要将链接的demo从服务器中复制出来,不要直接从服务器打开demo页面,不然会显示异常。
2024-02-13 23:08:12 603
原创 IDL(ENVI)16位数据线性拉伸
调用LinearPercentStretchRaster任务#fuction 函数名;函数参数1# fuction 函数名;函数参数 1 ,函数参数 2 ,函数参数 3 function y_linear_stretch , raster_path , respath , percent;# 传递任务需要的参数2# fuction 函数名;
2024-01-23 11:41:24 437
原创 mmlab添加albumentations数据增强模块
该类型需要@TRANSFORMS.register_module()相应的进行修饰,并在跟数据变换的根目录中导入,才能在管道中使用。# self。
2024-01-18 20:57:24 415
原创 GEE-Sentinel-2月度时间序列数据合成并导出
利用每个月可获取植被指数数据取均值,合成月度平均植被指数,然后将12个月中的数据合成一个12波段的时间数据合成数据。例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-12-21 21:53:09 545
原创 c++基础代码备忘录-指针与数组
指针地址的越界,编译器难以发现错误int main()int a;// 右移越界p[-1] = 2;p[0] = 3;//okay// 左移越界*(p+1) = 4;// 根据指针地址对元素数值进行修改return 0;进行数组操作时要主要检查的数组大小,指针申请堆内存后一定要记得释放内存,不要轻易对已有指针赋值,
2023-11-19 17:30:00 76
原创 c++基础代码的备忘录-stack-heap
模板主要是用于避免函数的重复调用int main()int a = 0;int b = 0;int c = 0;free(p1);free(p2);free(p3);return 0;// 局部变量在放在stack 栈,先进后出// malloc堆,先进先出:地址// 申请内存后,必须手动释放内存(有申请、有释放)// 不释放会消耗内存// 注意内存泄漏问题// 1)申请内存地址,如果被覆盖,将无法释放// 2)函数局部变量内存没有释放。
2023-11-19 17:15:00 52
原创 c++代码备忘录-reference
函数引用,与变量名指向相同的内存,不需要向指针那样需要申请内存但引用必须要进行初始化int main()return 0;// 引用是变量的别名,对应同一个数据;// 指针与引用的区别,指针创建变量、申请内存,引用声明时必须初始化;// 引用更安全,具体到特定对象,不会乱指;没有copy数据,通过引用来访问数据内存// 会修改外部变量,加const 避免数据修改。
2023-11-19 12:33:46 53
原创 C++基础语法备忘录
模板主要是用于避免函数的重复调用// 函数模板// 声明模板// 模板内容:函数及变量类型,函数名int x;int y;// 特例话,要加<>:专门定义结构体的类型的加法计算template<>Point pt;return pt;// 3// 3.3代码参考。
2023-11-19 12:28:13 36
原创 arcpy之Cursor访问矢量-进行批量裁剪
Cursor 是一种数据访问对象,可用于在表中迭代一组行或者向表中插入新行。游标有三种形式:搜索、插入或更新。游标通常用于读取和更新属性。:创建查找CursorSearchCursor 函数用于在要素类或表上建立只读游标。SearchCursor 可用于遍历 Row 对象并提取字段值。可以使用 where 子句或字段限制搜索,并对结果排序。arcpy.MakeFeatureLayer_management:创建图层文件:按图层属性进行选择。
2023-11-19 12:19:47 69
原创 mmlab之模型预训练(mmpretrain——MAE参数配置)
通过模型预训练提升模型收敛速度首先提示一点:mmlab类函数不能重复注册;这个问题出现在我在添加新的数据类时,直接复制了原有的数据类,忘记修改类名称导致的报错遥感多通道影像在应用mmlab进行模型训练时,主要面对的修改参数就是通道数。
2023-11-12 21:00:05 228
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人