- 博客(397)
- 收藏
- 关注
原创 ###聚类
一种典型的无监督学习算法,主要用于将相似的样本自动归到一个类别中。在聚类算法中根据样本之间的相似性,将样本划分到不同的类别中,对于不同的相似度计算方法,会得到不同的聚类结果,常用的相似度计算方法有欧式距离法。参数:n_clusters:开始的聚类中心数量整型,缺省值=8,生成的聚类数,即产生的质心(centroids)数。方法:estimator.fit_predict(x):计算聚类中心并预测每个样本属于哪个类别,相当于先调用fit(x),然后再调用predict(x)
2026-03-25 09:35:31
237
原创 #集成学习
Adaptive Boosting(自适应提升)基于 Boosting思想实现的一种集成学习算法核心思想是通过逐步提高那些被前一步分类错误的样本的权重来训练一个强分类器。弱分类器的性能比随机猜测强就行,即可构造出一个非常准确的强分类器。训练时,样本具有权重,并且在训练过程中动态调整。被分错的样本的样本会加大权重,算法更加关注难分的样本。(观察下图)(1)不同的训练集—>调整样本权重(2)“关注”—>增加错分样本权重(3)“器重”—>好的分类器权重大(4) 样本权重间接影响分类器权重。
2026-03-24 21:09:33
320
原创 # 决策树
决策树是什么?决策树是一种树形结构,树中每个内部节点表示一个特征上的判断,每个分支代表一个判断结果的输出,每个叶子节点代表一种分类结果决策树的建立过程1.特征选择:选取有较强分类能力的特征。2.决策树生成:根据选择的特征生成决策树。3.决策树也易过拟合,采用剪枝的方法缓解过拟合。Cart模型是一种决策树模型,它即可以用于分类,也可以用于回归。分类和回归树模型采用不同的最优化策略。Cart回归树使用平方误差最小化策略,Cart分类生成树采用的基尼指数最小化策略。criterion特征选择标准。
2026-03-18 21:30:20
384
原创 # 逻辑回归
solver损失函数优化方法训练速度:liblinear 对小数据集场景训练速度更快,sag 和 saga 对大数据集更快一些。newton-cg、lbfgs、sag、saga 支持 L2 正则化或者没有正则化2liblinear 和 saga 支持 L1 正则化penalty:正则化的种类,l1 或者 l2C:正则化力度默认将类别数量少的当做正例流失用户指的使用过产品因为某些原因不再使用该产品。随着产品的更新迭代,都会存在一定的流失情况,这时正常现象。
2026-03-10 20:52:48
360
原创 #线性回归
数据介绍给定的这些特征,是专家们得出的影响房价的结果属性。我们此阶段不需要自己去探究特征是否有用,只需要使用这些特征。到后面量化很多特征需要我们自己去寻找。
2026-03-10 20:48:45
386
原创 KNN算法
1.理解K近邻算法的思想2.知道K值选择对结果影响3.知道K近邻算法分类流程4.知道K近邻算法回归流程1.掌握KNN算法分类API2.掌握KNN算法回归API数据文件 train.csv 和 test.csv 包含从 0 到 9 的手绘数字的灰度图像。每个图像高 28 像素,宽28 像素,共784个像素。每个像素取值范围[0,255],取值越大意味着该像素颜色越深训练数据集(train.csv)共785列。第一列为 “标签”,为该图片对应的手写数字。其余784列为该图像的像素值。
2026-03-06 21:11:00
351
原创 Pandas数据分析
Python在数据处理上独步天下:代码灵活、开发快速;Pandas是Python的一个第三方包,也是商业和工程领域最流行的结构化数据工具集,用于数据清洗、处理以及分析Pandas在数据处理上具有独特的优势:底层是基于Numpy构建的,所以运行速度特别的快有专门的处理缺失数据的API强大而灵活的分组、聚合、转换功能数据量大到Excel严重卡顿,且又都是单机数据的时候,我们使用PandasPandas用于处理单机数据(小数据集(相对于大数据来说))
2026-03-05 20:17:09
383
原创 江科大Stm32学习笔记
newProject右键add group,添加User,Library,Start文件夹,并在前工作目录下创建对应的User,Library,Start文件夹将库函数文件放到对应的目录下将对应文件夹中的文件添加进来将定义添加进来然后选择C/C++ 中的Include Paths,把User、Start、Library添加进来Start文件为启动文件,本示例只需添加选择Debug,选择ST-Link下载。
2026-02-27 10:14:33
578
原创 Numpy
Numpy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组。Numpy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要简洁的多。Numpy使用ndarray对象来处理多维数组,该对象是一个快速而灵活的大数据容器。NumPy提供了一个N维数组类型ndarray,它描述了相同类型的“items”的集合。
2026-02-10 21:19:59
626
原创 迭代器与生成器
案例1: 推导式写法"""案例: 演示生成器之 推导式写法.生成器介绍:概述:所谓的生成器就是基于 数据规则, 用一部分在生成一部分, 而不是一下子生成完所有.目的:可以节省大量的内存.实现方式:1. 推导式写法.2. yield关键字"""import sys # system: 系统模块# 场景1: 生成器 推导式写法.# 需求1: 生成1 ~ 10之间的整数.my_generator = (i for i in range(1, 11)) #这里使用的是()
2026-01-26 15:57:46
191
原创 Python之网络编程
概述让多个任务"同时"执行, 目的是: 充分利用CPU资源, 提高程序的执行效率.方式并发: 针对于单核CPU来讲, 多个任务同时请求执行时, CPU做高效切换即可.并行:针对于多核CPU来讲, 多个任务同时执行.
2026-01-24 09:43:50
447
原创 装饰器与深浅拷贝
"""案例: 闭包背景介绍案例目的:引出来 闭包 相关的知识点."""# 需求: 定义函数保存变量10, 调用函数返回值 并 重复累加数值, 观察结果.# 1. 定义函数, 保存变量10num = 10return num# 2. 调用函数, 获取返回值."""案例: nonlocal关键字介绍nonlocal:它是Python内置的关键字, 可以实现 在内部函数中 修改外部函数的 变量值."""
2026-01-22 10:06:23
245
原创 创建Django项目
本文介绍了Django项目的创建和基本配置过程。首先通过django-admin命令创建项目,然后使用startapp创建子应用并注册。重点讲解了模型类的定义,包括字段类型、选项设置和外键关系等核心概念。文章还展示了如何通过makemigrations和migrate命令进行数据库迁移,最后介绍了Django管理站点的使用方法,包括创建超级用户和管理员登录。这些内容涵盖了Django项目从创建到数据库管理的基本流程。
2025-10-23 21:06:34
983
原创 ResNet代码实现
本文实现了一个PyTorch版本的ResNet网络,包含ResNet-34和ResNet-50两种结构。主要实现了两种残差块:BasicBlock(用于浅层网络)和BottleNeck(用于深层网络)。ResNet类通过residual_block方法构建包含多个残差块的网络层,支持自定义输出类别数。网络初始化采用了Kaiming初始化方法,并提供了便捷函数resnet34()和resnet50()来构建对应模型。该实现完整包含了ResNet的核心结构,包括卷积层、BN层、残差连接和全局平均池化等关键组件。
2025-10-17 08:56:58
153
原创 AlexNet
本文实现了一个基于PyTorch的AlexNet模型,用于图像分类任务。代码主要包含四个部分: Network.py定义了AlexNet的网络结构,包括5个卷积层和3个全连接层,使用ReLU激活函数和Dropout防止过拟合 Dataloader.py实现了CIFAR-10数据集的加载和预处理 Trainer.py封装了训练过程,包括损失函数(交叉熵)、优化器(Adam)和训练循环 main.py配置了训练参数并整合各模块 该实现支持CUDA加速,能自动将数据加载到GPU进行计算,并提供了模型保存和加载功能
2025-10-16 11:08:02
248
原创 特殊参数与文件IO
一定要保证文件操作完之后要关闭掉,因为程序能打开的文件数量是有上限的,并且不关闭文件会造成内存泄漏。在字典的前面加上**的作用是将字典中的元素解包成一个一个的不存在的关键字参数传递给函数。优点是,子句体结束后,文件会正确关闭,即便触发异常也可以。使用open函数,可以打开一个已经存在的文件,或者创建一个新文件。关闭文件对象后,再次使用该文件对象将会出现异常。指的是读取整个文件,返回每一行数据的列表。关闭文件,即可释放文件占用的系统资源。可变参数的本质是 将传递的参数包装成了。,用于接收任意数量的参数。
2024-09-27 10:56:04
772
原创 Python之模块、包、异常
除了系统已经定义好的异常,也可以自己定义异常所有的异常都继承自Exception,异常的继承关系如下:class 自定义异常名(Exception):a=int(input("请输入a"))b=int(input("请输入b"))try:print(a/b)raise MyException("抛出了一个自定义异常")print(e)raise的作用是抛出异常抛出异常如果没有通过try except处理,程序会停止。
2024-09-27 10:53:54
863
原创 江科大51单片机
在函数形参括号后加修饰符 interrupt m,系统编译时把对应函数转化为中断函数,自动加上程序头段和尾段,并按 51系统中断的处理方式自动把它安排在程序存储器中的相应位置。不过 AUXR 设置定时器时钟那一步是针对最新版本可以调整单片机定时器使能而添加的,我们的单片机加上会报错,需要删掉。SBUF:物理上是接收和发送两个寄存器,实际上共用相同的地址,只是使用时有不同的意义。SM0,SM1:设置工作方式。比如P2^4=1, P2^3=1, P2^2=0, 输入就是110,取反后就是001,就是LED1。
2024-09-20 17:31:15
3332
原创 QString与QByteArray
isNull(和isEmpty()两个函数都判断字符串是否为空,但是稍有差别。如果一个空字符串,只有"\0”,isNull()返回false,而isEmpty()返回true;只有未赋值的字符串,isNull()才返回true。在Qt中QByteArray可以看做是c语言中char类型的动态数组。我们在使用这种类型的时候可通过这个类的构造函数申请一块动态内存,用于存储我们需要处理的数据。
2024-08-28 08:44:43
750
1
原创 C++之STL
STL(Standard Template Library,标准模板库)STL的6大组件:容器、算法、迭代器、适配器、仿函数、空间配置容器:存放数据算法:操作数据迭代器:算法 通过迭代器 操作容器适配器:为算法 提供更多的接口仿函数:为算法 提供策略空间配置:为算法、容器提供动态空间算法分类:质变算法、非质变算法质变算法:会更改容器的值(拷贝,替换,删除等等)非质变算法:是指运算过程中不会更改区间内的元素内容,例如查找、计数、遍历、寻找极值等等。
2024-08-27 08:57:17
1125
原创 类和对象(高级)
char *str;//无参构造//带参构造//深拷贝//析构函数str=NULL;size=0;if(str!return 0;
2024-08-23 10:37:03
509
原创 C++之模版
类模板 将类中类型 抽象成虚拟类型。类模板 实例化对象 不能自动类型推导(重要)private:T1 a;T2 b;public:Data(){cout
2024-08-15 08:45:43
298
原创 C++异常
异常被抛出后,从进入try块起,到异常被抛掷前,这期间在栈上构造的所有对。象,都会被自动析构。析构的顺序与构造的顺序相反,这一过程称为栈的解旋.异常的接口声明:描述的是 可以抛出哪些类型的异常。自己的异常 一定要从exception上继承。编写字节的异常:基于标准异常。
2024-08-13 08:39:58
278
原创 C++之多态
重载:同一作用域,同名函数,参数的顺序、个数、类型不同 都可以重载。函数的返回值类型不能作为重载条件(函数重载、运算符重载)重定义:有继承,子类 重定义 父类的同名函数(非虚函数), 参数顺序、个数、类型可以不同。子类的同名函数会屏蔽父类的所有同名函数(可以通过作用域解决)重写(覆盖):有继承,子类 重写 父类的虚函数。返回值类型、函数名、参数顺序、个数、类型都必须一致。
2024-08-09 08:43:36
420
原创 C++之继承
其中继承方式有:private protected public(推荐)**public:**可以被任意实体访问**protected:**只允许子类及本类的成员函数访问**private:**只允许本类的成员函数访问公共继承 保持不变,保护继承变保护,私有继承变私有,所有父类私有在子类中不可见。
2024-08-08 08:57:31
467
原创 Python基础
变量是用来描述计算机中的数据存储空间的,我们可以通过变量来保存定义的数据变量名 = 变量值# 定义整型变量age = 30# 定义浮点类型变量# 定义布尔类型变量b = True# 定义字符串类型变量name = '张三'可以通过type()函数获取变量类型name = '张三'# 获取变量类型Python是动态类型语言,变量类型可以通过赋值进行修改# 定义整型变量age = 30# 修改成浮点类型变量age = 70.5列表用[]定义,元素之间用逗号分隔。
2024-08-05 14:10:48
903
原创 类和对象(提高)
7 {8 //类中 默认为私有9 private:10 int a;//不要给类中成员 初始化11 protected://保护12 int b;13 public://公共14 int c;15 //在类的内部 不存在权限之分17 {19 }20 };
2024-07-02 09:09:53
1064
原创 汇编基础语法
③除零外,仅有三位数,并且相邻(包括中间有0,例如0x10800000,包括首尾相邻),这三位数中,第一位仅能为1、2、3最低位仅能为4、8、c,中间位0x0~0xf。注意:在对栈操作之前,必须先设置sp的值,进栈和出栈的方式一样,ATPCS标准规定满减栈(从高往低)一个常数,该常数必须对应8位位图,即一个8位的常数通过循环右移偶数位得到该数,该数位合法立即数。①使用bl指令,因为bl跳转之前,将跳转前的pc的值保存在lr,跳转范围+/-32M。②除零外,仅有二位数,并且相邻(包括首尾)的为合法立即数。
2024-07-01 10:34:20
1259
原创 Linux之网络编程
1、创建套接字参数: @domain 地址族 :AF_UNIX 本地unix域通信 ,AF_INET IPV4 ineter网通信 [我们使用这个]@ type :使用协议类型 SOCK_STREAM 流式套接字(TCP), SOCK_DGRAM 报文套接字(UDP) ,SOCK_RAW 原始套接字: (IP,ICMP)@protocol 协议编号 0 : 让系统自动识别返回值:成功返回得到的文件描述符。失败返回 -1示例用法2、发送数据参数: @sockfd 套接字@buf 数据存放的首地址。
2024-06-14 16:58:11
1113
原创 Linux之多线程
联系比较紧密的任务,在并发时,优先现在多线程,任务联系不紧密,比较独立的任务建议选择多进程在 Linux 系统有很多命令可以查看进程,包括 pidstat 、top 、ps ,可以查看进程,也可以查看一个进程下的线程。
2024-05-31 09:31:03
497
原创 Linux之多进程
对于每种信号都有相应的默认处理方式进程退出:进程忽略进程暂停通过signal函数设置信号处理方式函数头文件函数原型函数功能:设置信号的处理方式, 如果是自定义处理方式,提供函数地址,注册到内核中函数参数signum : 信号编号函数返回值成功 : 返回信号处理函数地址失败 : 返回 SIG_ERR , 并设置 errno示例:创建一个子进程, 父进程给子进程发送 SIGUSR1 信号,并使用自定义的处理方式pid_t pid;pid=fork();
2024-05-24 10:19:14
960
原创 Shell脚本
array[0]=1array[2]=2方法1:function 函数名()命令1 命令2 ...方法2:函数名(){命令1 命令2 ...
2024-05-22 08:05:18
569
原创 Linux文件IO
在 Linux 系统下, 用于对文件操作的库函数叫做文件 I/O主要包括 open()/close()/read()/write() /lseek() 相应的系统调用 (准确说法是对系统调用的封装的库函数)文件描述符是一个非负整数, 当打开一个已存在文件或者创建一个新文件时, 内核向进程返回一个文件描述符每个程序运行后, 操作系统会默认打开三个文件 标准输入 标准输出 标准错误输出, 文件描述符分别为 0 , 1 , 2标准输入对应的设备一般为键盘标准输出与标准错误输出设备一般为显示器。
2024-05-16 20:35:51
791
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅