- 博客(52)
- 收藏
- 关注
原创 yolo模型训练
衡量预测边界框(Bounding Box)与真实边界框的位置偏差,常用 CIoU(Complete Intersection over Union)或 DIoU(Distance IoU)损失。传统 YOLO 直接预测边界框坐标,而 DFL 模型预测边界框坐标的分布(如高斯分布),通过聚焦真实值附近的分布提升定位精度,尤其对小目标检测效果显著。:衡量预测类别与真实类别的匹配程度,常用交叉熵损失(Cross Entropy Loss)或 Focal Loss(解决类别不平衡)。
2025-08-14 17:11:59
211
原创 SSM框架注解大全
Lombok | 添加在类上,将在编译期生成此类中所有属性的Setter方法,也可以添加在类的属性上,将在编译期生成此属性的Setter方法 || Lombok | 添加在类上,将在编译期生成此类中所有属性的Getter方法,也可以添加在类的属性上,将在编译期生成此属性的Getter方法 || Spring MVC | 添加在请求参数上,用于标记此参数必须是对象格式的参数,如果未添加此注解,参数必须是FormData格式的 |
2025-08-13 16:23:07
928
原创 Spring MVC
MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分。MModel,模型层,负责业务逻辑判断,数据库存取VView,视图层,负责界面展示,向用户呈现数据的方式(html页面、图片、文本等)CController,控制器,负责接收用户请求,并根据请求调用相应的模型来处理业务逻辑Plain Ordinary Java Object:简单的Java对象;是没有继承任何类或实现任何接口的简单 Java 对象,也不依赖于其他复杂的框架或技术;
2025-08-13 16:13:14
943
原创 MyBatis
Mybatis是一个优秀的持久层框架,底层基于JDBC实现与数据库的交互;使用此框架程序员只需要通过注解或者修改xml配置文件的方式配置好需要执行的SQL语句,MyBatis框架会根据SQL语句生成对应的JDBC代码并对数据库中数据进行增删改查操作。Mybatis框架的简单应用架构,如图所示:该项目是一款社交媒体应用,用户可以在平台上发表短文等信息,分享自己的想法、心情和生活。共设计3张表。XML是一种可扩展性语言,用户可以自己定义标签,用来描述特定类型的数据;
2025-08-13 16:08:06
727
原创 Spring
Spring是一款主流的 Java EE 开源框架,目的是用于简化Java企业级引用的开发难度和开发周期。从简单性、可测试性的角度而言,任何Java应用都可以从Spring中受益。Spring框架提供自己提供功能外,还提供整合其他技术和框架的能力。自2004年4月,Spring1.0 版正式发布以来,Spring已经步入到了第6个大版本,即 Spring6,本课程采用正式版本。Spring官网地址:https://spring.io/
2025-08-13 16:00:40
910
原创 MySQL
数据存储文件管理阶段优点 : 数据可以长期保存,可以存储大量的数据,使用简单。缺点 : 数据一致性差,数据查找修改不方便,数据冗余度可能比较大。数据库管理阶段优点 : 数据组织结构化降低了冗余度,提高了增删改查的效率,容易扩展,方便程序调用处理缺点 : 需要使用sql 或者其他特定的语句,相对比较专业数据库应用领域数据库的应用领域几乎涉及到了需要数据管理的方方面面,融机构、游戏网站、购物网站、论坛网站 … …都需要数据库进行数据存储管理。基本概念。
2025-08-03 09:49:12
722
原创 Django web开发
2005年发布,采用Python语言编写的开源web框架一个重量级的 Python Web框架,Django 配备了常用的大部分组件基本配置路由系统原生HTML模板系统视图 viewModel模型,数据库连接和ORM数据库管理中间件数据后台管理系统 adminDjango的用途网站后端开发微信公众号、微信小程序等后台开发基于HTTP/HTTPS协议的后台服务器开发在线语音/图像识别服务器在线第三方身份验证服务器等Django的版本。
2025-08-01 17:52:11
657
原创 Python爬虫
爬虫:即网络蜘蛛、网络机器人,抓取网络数据的程序;用Python程序模仿人点击浏览器并访问网站,而且模仿的越真实越好;只要涉及到条件, 必须添加 []//dl/dd[1]只要获取属性值,加 @匹配结果类型列表中存放字符串xpath表达式的末尾为: /text() 、/@href 得到的列表中为’字符串’列表中存放节点对象**其他剩余所有情况得到的列表中均为’节点对象’ **作用将爬取的数据存放到本地的csv文件中使用流程打开csv文件初始化写入对象写入数据[参数为列表]示例代码。
2025-08-01 17:38:32
1244
原创 自然语言处理(NLP)
NLP(Nature Language Processing,自然语言处理)是计算机学科及人工智能领域一个重要的子学科,它主要研究计算机如何处理、理解及应用人类语言。所谓自然语言,指人说的话、人写的文章,是人类在长期进化过程中形成的一套复杂的符号系统(类似于C/Java等计算机语言则称为人造语言)。以下是关于自然语言处理常见的定义:自然语言处理还有其它一些名称,例如:自然语言理解(Natural Language Understanding),计算机语言学(Computational Linguistics
2025-07-01 17:38:51
3049
原创 Opencv
OpenCV提供了查找图像轮廓的函数cv2.findContours(),该函数能够查找图像内的轮廓信息,而函数cv2.drawContours()能够将轮廓绘制出来。图像轮廓是图像中非常重要的一个特征信息,通过对图像轮廓的操作,我们能够获取目标图像的大小、位置、方向等信息。我们对图像中的目标进行分析和检测时,目标往往具有一定的倾斜角度,自然条件下拍摄的图像,完全平正是很少的。样本图像中,粉红色区域为镀盘区域,镀盘内部空洞为瑕疵区域,利用图像技术检测镀盘是否存在瑕疵,如果存在则将瑕疵区域标记出来。
2025-07-01 17:17:30
825
原创 模型评估与优化
在样本数量较少的情况下,如果将样本划分为训练集、测试集,可能导致单个集合样本数量更少,可以采取交叉验证法来训练和测试模型.将所有数据,划分成N等分,用每份都去训练,用每份都去测试所有的数据,都去训练,所有的数据都去测试“交叉验证法”(cross validation)先将数据集D划分为k个大小相同(或相似)的、互不相交的子集,每个子集称为一个"折叠"(fold),每次训练,轮流使用其中的一个作为测试集、其它作为训练集. 这样,就相当于获得了k组训练集、测试集,最终的预测结果为k个测试结果的平均值.
2025-02-08 15:04:35
1038
原创 分类——朴素贝叶斯
概率是反映随机事件出现的可能性大小. 随机事件是指在相同条件下,可能出现也可能不出现的事件. 例如:(1)抛一枚硬币,可能正面朝上,可能反面朝上,这是随机事件. 正/反面朝上的可能性称为概率;(2)掷骰子,掷出的点数为随机事件. 每个点数出现的可能性称为概率;(3)一批商品包含良品、次品,随机抽取一件,抽得良品/次品为随机事件. 经过大量反复试验,抽得次品率越来越接近于某个常数,则该常数为概率.我们可以将随机事件记为A或B,则P(A), P(B)表示事件A或B的概率.PA∣BPAPB。
2025-02-08 12:32:29
638
原创 分类——支持向量机
支持向量机(Support Vector Machines)是一种二分类模型,在机器学习、计算机视觉、数据挖掘中广泛应用,主要用于解决数据分类问题,它的目的是寻找一个超平面来对样本进行分割,分割的原则是间隔最大化(即数据集的边缘点到分界线的距离d最大,如下图),最终转化为一个凸二次规划问题来求解。通常SVM用于二元分类问题,对于多元分类可将其分解为多个二元分类问题,再进行分类。所谓“支持向量”,就是下图中虚线穿过的边缘点。支持向量机就对应着能将数据正确划分并且间隔最大的直线(下图中红色直线)。
2025-02-08 12:26:27
973
原创 分类——决策树
决策树是一种常见的机器学习方法,其核心思想是相同(或相似)的输入产生相同(或相似)的输出,通过树状结构来进行决策,其目的是通过对样本不同属性的判断决策,将具有相同属性的样本划分到一个叶子节点下,从而实现分类或回归. 以下是几个生活中关于决策树的示例.【示例1】【示例2】在上述示例模型中,通过对西瓜一系列特征(色泽、根蒂、敲声等)的判断,最终我们得出结论:这是否为一个好瓜. 决策过程中提出的每个判定问题都是对某个属性的“测试”,例如“色泽=?”,“根蒂=?”. 每个测试的结果可能得到最终结论,也可能需要进行下
2025-02-08 12:24:11
954
原创 分类——逻辑回归
1)逻辑回归是分类问题,用于实现二分类问题2)实现方式:利用线性模型计算,在逻辑函数作用下产生分类3)多分类实现:可以将多分类问题转化为二分类问题实现4)用途:广泛用于各种分类问题。
2025-02-08 12:20:49
1147
原创 决策树回归
核心思想:相似的输入必会产生相似的输出。例如预测某人薪资:年龄:1-青年,2-中年,3-老年学历:1-本科,2-硕士,3-博士经历:1-出道,2-一般,3-老手,4-骨灰性别:1-男性,2-女性年龄1⎩⎨⎧学历1学历2学历3年龄2⎩⎨⎧学历1学历2学历3年龄3⎩⎨⎧学历1学历2学历3。
2024-12-29 01:38:08
999
原创 线性回归问题
设给定一组属性xxx1;x2;;x_2;...;x_n)xxx1;x2;...;xnyw1x1w2x2w3x3wnxnbyw1x1w2x2w3x3...wnxnbywTxbywTxb其中,ww1;w2;;wnxx1;x2;;xnw=(w_1;w_2;
2024-12-29 01:35:42
1137
原创 matplotlib
plt.figure方法不仅可以构建一个新窗口,如果已经构建过title='A’的窗口,又使用figure方法构建了title=‘A’ 的窗口的话,mp将不会创建新的窗口,而是把title='A’的窗口置为当前操作窗口。案例:绘制两条曲线: sin_x = sin(x) cos_x = cos(x / 2) / 2 [0-8π]linestyle: 设置线型,常见取值有实线(‘-’)、虚线(‘–’)、点虚线(‘-.’)、点线(‘:’)案例:绘制正弦、余弦曲线,并设置线型、线宽、颜色、透明度。
2024-12-29 01:26:21
664
原创 pandas
pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入 了大量库和一些标准的数据模型,提供了高效地操作大型结构化数据集所需的工具。
2024-12-29 01:18:41
775
原创 numpy
Numerical Python,数值的Python,补充了Python语言所欠缺的数值计算能力。Numpy是其它数据分析及机器学习库的底层库。Numpy完全标准C语言实现,运行效率充分优化。Numpy开源免费。
2024-12-29 01:13:39
695
原创 L1-002 打印沙漏
可以发现,上半部分是一个倒三角形,下半部分是一个正三角形,两个三角形共用一个定点。表示的不是总行数,而是一个三角形的行数),那么每一个三角形部分有。,那么便可以根据此公式去计算最多可以打印多少行。数量也是一个等差数列,,以及最终会剩余多少个。
2024-08-10 18:53:37
765
原创 数位dp
数位dp往往都是这样的题型,给定一个闭区间lr,求这个区间中满足某种条件的数的总数。 考虑人类计数的方式,最朴素的计数就是从小到大开始依次加一。但我们发现对于位数比较多的数,这样的过程中有许多重复的部分。例如,从7000数到7999、从8000数到89994、和从9000数到9999的过程非常相似,它们都是后三位从000变到999,不一样的地方只有千位这一位,所以我们可以把这些过程归并起来,将这些过程中产生的计数答案也都存在一个通用的数组里。
2024-08-10 15:36:42
901
原创 区间dp
dpdpdp 区间dpdpdp就是在区间上进行动态规划,求解一段区间上的最优解。主要是通过合并小区间的 最优解进而得出整个大区间上最优解的dpdpdp算法。
2024-08-10 15:36:00
652
原创 树型dp
树型dp即在树上进行dp。 树是无环图,顺序可以是从叶子到根节点,也可以从根到叶子节点。 一般树型dp的特征很明显,即状态可以表示为树中的节点,每个节点的状态可以由其子节点状态转移而来(从叶子到根的顺序),或是由其父亲节点转移而来(从根到叶节点的顺序),也可是两者结合。 找出状态和状态转移方程仍然是树型dp的关键。
2024-08-10 15:35:15
615
原创 线段树
线段树,是一种 二叉搜索树。它将一段区间划分为若干 单位区间 ,每一个节点都储存着一个区间。它功能强大 ,支持区间求和,区间最大值,区间修改,单点修改等操作。线段树的思想和分治思想很相像。线段树的每一个节点都储存着一段区间LRL...R的信息,其中叶子节点LRL = RLR。它的大致思想是:将一段大区间平均地划分成222个小区间,每一个小区间都再平均分成222个更小区间……以此类推,直到每一个区间的LLL等于RRR(这样这个区间仅包含一个节点的信息,无法被划分)。
2024-08-10 15:34:19
898
原创 动态规划
2.每一件物品都有无限个,其实并不是无限个,因为背包的容量是有限的,即每一件物品的最多数量为。 2.求这一个上下区间内的最大连续子段和,也就是找上下区间固定的所有子矩阵的最大连续和;行的元素和,那么便可以通过前缀和数组获得到任意上下区间中的元素和,也就变为了一维问题;件物品,在背包容量为(放入这件物品后剩余大小)时能取到的最大价值,两个取最大值;背包的基础上增加了每一件物品的数量,并且数量是指定的;数组中的最大值,便是此序列的最长上升子序列长度;的值,但是因为内层循环是从小到大的,所以在用到。
2024-08-09 16:36:30
1106
原创 并查集
2.每当两个点连接时,都可以将其中一个点的。值,表示此两点的上一层相同——两个点为同一整体; 思路:在普通并查集的基础上还需要记录长度。 1.在普通并查集的基础上进行完善,如果。的大小需要为普通并查集的二倍,前半部分表示。值都相同,他们都在同一个整体中; 3.每次连接时,必须将。一定在一起,否则,有人说谎; 1.种类并查集,如果。过程中连接过得所有点的。在一起,两个内容都进行。 1.用一个数组。
2024-08-09 16:34:15
852
原创 图
1.无向图的邻接矩阵一定是一个对称矩阵(即从矩阵的左上角到右下角的主对角线为轴,右上角的元与左下角相对应的元全都是相等的)。思路:将图的存储结构使用边集数组的形式表示,并将边集数组按权值从小到大排序,遍历边集数组,每次选取一条边并判断是否构成环路,不会构成环路则将其加入最小生成树,最终只会包含。 2.接下来,从最短距离开始,如果此路的起点和终点在一个整体中,便不对此边进行操作,否则,选择此条边,并更改。的顶点的时候,都要将符合条件的边进行遍历,当边较多的时候,该循环会带来较大的时间复杂度。
2024-08-09 16:32:28
1395
原创 树
树(TreeTreeTree)是nnnn≧0n ≧ 0n≧0)个结点的有限集。n0n=0n0时称为空树。在任意一颗非空树中:有且仅有一个特定的称为根的结点。当n1n>1n1时,其余结点可分为mmmm0m > 0m0) 个互不相交的有限集T1T1T1T2T2T2T3T3T3……、TmTmTm,其中每个集合本身又是一棵树,并且称为根的子树。 二叉树是nnnn0n>=0n>=0。
2024-08-09 16:31:11
673
原创 快速幂
这样不仅能把非常大的指数给不断变小,所需要执行的循环次数也变小,而最后表示的结果却一直不会变。 6.此时,发现指数又变成了一个奇数1,按照上面对指数为奇数的操作方法,应该抽出了一个底数的一次方,这里即为。,用一次(底数做平方操作)的操作减少了原本一半的循环量,特别是在幂特别大的时候效果非常好,例如。又能够在执行“缩指数”操作了,把指数缩小一半,底数执行平方操作。,尽量想办法把指数变小来,这里的指数为10。,底数只是做了一个小小的平方操作,而指数就从。 5.把指数缩小一半,底数执行平方操作,
2024-08-09 16:22:17
548
原创 数据结构基础
但是,数组最大的缺点就是我们的插入和删除时需要移动大量的元素,所以呢,大量的消耗时间,以及冗余度难以接收。 队列这种数据结构非常容易理解,就像我们平时去超市买东西,在收银台结账的时候需要排队,先去排队的就先结账出去,排在后面的就后结账,有其他人再要过来结账,必须排在队尾不能在队中间插队。 1.如果一个数先移动到最左边,再移动到最右边,那么最后输出的时候这个数一定是在最右边,也就是一个数最终出现在哪里,以他最后一次出现为准; 5.输出时,先输出队列中的元素,然后将。从原位置删除,为了便于获取。
2024-08-09 16:20:58
930
原创 排序算法
3.然后,左边和右边的数据可以独立排序。对于左侧的数组数据,又可以取一个分界值,将该部分数据分成左右两部分,同样在左边放置较小值,右边放置较大值。 2.将大于或等于分界值的数据集中到数组右边,小于分界值的数据集中到数组的左边。此时,左边部分中各元素都小于分界值,而右边部分中各元素都大于或等于分界值。 思路:先把数组从中间分成前后两部分,然后分别对前后两部分进行排序,再将排好序的两部分数据合并在一起。 思路:将排序的区间分成若干个有跨度的子区间,对每一个子区间,进行插入排序,跨度不断。
2024-08-09 16:17:29
269
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人