- 博客(26)
- 收藏
- 关注
原创 机器学习(七)决策树-分类
本文介绍了决策树的基本概念、构建方法及实现工具。决策树由决策节点和叶子节点组成,具有可视化强、解释性好的优点,但易过拟合。文章详细阐述了两种构建方法:基于信息增益(通过信息熵计算属性区分能力)和基于基尼指数(衡量数据集不纯度),并比较了其计算步骤。最后介绍了Scikit-learn中的DecisionTreeClassifier API参数及可视化工具export_graphviz的使用。决策树通过递归选择最优属性划分,逐步降低不纯度,最终形成分类模型。
2025-09-05 19:51:58
1195
2
原创 机器学习(六)朴素贝叶斯分类
本文介绍了贝叶斯分类理论及其应用。贝叶斯决策的核心是选择最高概率的类别,通过比较条件概率p1(x,y)和p2(x,y)进行分类决策。文章详细解释了条件概率、全概率公式和贝叶斯推断的概念,重点阐述了朴素贝叶斯分类器对特征条件独立性的假设及其概率计算方法。针对零概率问题,提出了拉普拉斯平滑的解决方案。最后展示了使用scikit-learn库实现朴素贝叶斯分类的代码示例,包括数据加载、模型训练和预测评估等步骤,并以葡萄酒分类为例说明实际应用。
2025-09-03 16:05:13
1258
原创 机器算法(五)模型选择与调优
摘要:本文介绍了交叉验证技术及其实现方法。主要讨论了保留交叉验证(HoldOut)和K折交叉验证(K-fold)两种方法,重点分析了分层K折交叉验证(StratifiedKFold)在处理不平衡数据集时的优势。通过鸢尾花数据集实例,展示了如何使用sklearn实现分层K折交叉验证,包括数据预处理、模型训练与评估。同时介绍了超参数搜索(GridSearchCV)方法,结合交叉验证自动寻找最优参数。最后给出了KNN分类器结合网格搜索的完整代码示例,展示了如何获取最佳参数、评估模型性能。
2025-09-02 19:35:46
818
原创 机器学习(四)KNN算法-分类
A(X11,X12,……,X1n)与B(X21,X22,……,X2n)闵可夫斯基距离是将多个距离公式总结而成的一个公式。当p=1,是曼哈顿距离;p=2,欧式距离;p为无穷大,就是切比雪夫距离。
2025-09-01 20:10:17
490
原创 机器学习(三)sklearn机器学习
scikit-learn是一个基于Python的机器学习库,提供数据预处理、模型训练和评估等功能。核心功能包括数据标准化、特征编码、缺失值处理等预处理方法;支持多种监督学习算法(如KNN、逻辑回归、随机森林)和无监督学习算法(如K-means聚类);通过train_test_split划分数据集,使用fit方法训练模型,利用score或accuracy_score评估性能。典型流程包括数据加载、预处理、模型训练、预测和评估,示例展示了随机森林分类器在鸢尾花数据集上的完整应用。
2025-08-29 18:34:37
418
原创 机器学习(二)特征工程
本文系统地介绍了机器学习中的特征工程方法,主要包括三个核心环节:1)特征提取(字典、文本、图像特征转化);2)数据预处理(归一化、标准化);3)特征降维(低方差过滤、主成分分析)。重点阐述了稀疏矩阵处理、TF-IDF加权、皮尔逊相关系数等关键技术,并提供了Python中sklearn工具库的API调用示例。通过特征工程,可将原始数据转化为适合机器学习的高质量特征,有效提升模型性能。文章采用技术说明与代码实践相结合的方式,帮助读者掌握特征工程的核心流程和实现方法。
2025-08-26 19:41:30
1166
原创 大模型开发基础(一)自注意力机制和多头注意力机制
自注意力机制是Transformer的核心组件,通过查询(Q)、键(K)、值(V)向量建模序列内部依赖关系。它首先计算Q与K的点积相似度,经softmax归一化后对V加权求和,生成包含全局信息的表示。多头注意力将QKV分割为多个子空间并行计算,最后拼接结果并通过线性变换输出。相比RNN/LSTM,它有效解决了长程依赖问题,计算效率更高,在NLP和CV领域取得突破性进展。文中通过书店找书的例子形象解释了QKV概念,并给出PyTorch实现代码展示完整计算流程。
2025-08-14 09:51:44
1390
原创 自然语言处理( NLP)基础
NLP包括但不限于语言理解、语言生成、机器翻译、情感分析、语音识别和语音合成。同时在中文环境,但需要考虑中文的特殊性,如中文分词、中文语法和语义分析。
2025-08-12 18:32:02
5823
原创 深度学习 --全连接神经网络 基本组件
神经网络(Neural Networks)是一种模拟人脑神经元网络结构的计算模型,用于处理复杂的模式识别、分类和预测等任务。生物神经元如下图:人脑神经元处理信息的过程:多个信号到达树突,然后整合到细胞体的细胞核中当积累的信号超过某个阈值,细胞就会被激活产生一个输出信号,由轴突传递。而神经网络由多个互相连接的节点(即人工神经元)组成。人工神经元(Artificial Neuron)是神经网络的基本构建单元,模仿了生物神经元的工作原理。
2025-08-04 20:01:24
1017
原创 yolo算法 --1 目标检测基础
目标检测是计算机视觉的核心任务,主要用于识别图像中的物体类别和位置(通过边界框标注)。其技术分为两阶段(高精度,如R-CNN系列)和单阶段(高速,如YOLO系列)方法。关键评估指标包括交并比(IoU)、置信度、混淆矩阵,以及综合性能指标mAP(平均精度均值)。后处理技术NMS用于消除冗余检测框。YOLO等模型由主干网络(特征提取)、颈部网络(特征融合)和检测头(预测输出)组成。检测速度通过FPS和FLOPS衡量,适用于实时场景如自动驾驶和视频监控。
2025-07-30 19:54:41
1143
原创 深度学习-- PyTorch框架
PyTorch张量操作与自动微分指南 本文详细介绍了PyTorch深度学习框架的核心功能,重点讲解了张量(Tensor)的基本概念、创建方法、常见操作以及自动微分机制。主要内容包括: 张量基础:PyTorch使用张量作为核心数据结构,支持多种数据类型和GPU加速计算 张量操作:涵盖创建方法(tensor/Tensor)、形状变换(reshape/view)、矩阵运算(matmul)、广播机制等 自动微分:通过autograd模块实现梯度计算,包括标量和向量梯度计算、叶子节点概念、反向传播原理 梯度控制:讲解
2025-07-29 18:13:51
727
原创 数据结构与算法 ——1 变位词判断
本文介绍了四种判断变位词的算法:1. 双重循环法:逐个比对字符并将匹配字符标记,时间复杂度O(n²);2. 排序比较法:排序后比较字符串,时间复杂度O(nlogn);3. 穷举法:生成全排列比较,效率低;4. 计数法:统计字符出现次数比较,最优时间复杂度O(n)。其中计数法效率最高但需额外空间,可用字典优化。文章通过代码实现展示了各算法的具体实现方式。
2025-07-23 20:10:31
547
原创 卷积神经网络-- 3 多通道卷积与偏置过程
多通道卷积就是分别对每个通道进行卷积,然后把结果加起来。在图像处理中,通道是指图像的不同分量。例如,灰度图像只有一个通道也就是亮度。彩色图像,有三个通道(RGB)。以彩色图像为例,包含三个通道。输入为(3,5,5),分别表示3个通道,每个通道的宽为5,高为5。假设卷积核只有1个,卷积核通道为3,每个通道的卷积核大小仍为3x3,padding=0,stride=1。每一个通道的像素值与对应的卷积核通道的数值进行卷积,因此每一个通道会对应一个输出卷积结果,
2025-07-22 19:28:19
1433
1
原创 卷积神经网络--2 池化
摘要:池化是卷积神经网络中的降采样操作,通过聚合局部区域特征来减小特征图尺寸。常用2×2的池化核实现最大值池化(保留显著特征)或平均值池化(获取整体特征)。池化的主要作用包括:降低计算量、增强特征鲁棒性、提高模型效率,但会丢失部分信息。代码示例展示了卷积后使用最大池化和平均池化的处理过程及结果输出。池化参数通常设置步长等于核大小,能够有效减少过拟合风险。
2025-07-21 20:20:22
852
原创 卷积神经网络--1 二维卷积运算
卷积神经网络(CNN)是一种受生物视觉启发的前馈神经网络,通过卷积层、池化层和全连接层构建。CNN具有三大特征:局部连接(神经元仅处理输入数据的局部区域)、权重共享(同一卷积核权重保持不变)和池化操作(降低特征图尺寸)。这些特性使CNN能有效提取图像局部特征,具有平移、缩放和旋转不变性,同时大幅减少参数数量,避免过拟合。相比全连接网络,CNN更适用于图像处理任务,通过二维卷积运算(或互相关运算)高效抽取特征。整体而言,CNN凭借其独特结构在图像识别等任务中表现出色。
2025-07-21 19:07:33
758
原创 机器学习(一) 数据集
机器学习(Machine Learning)本质上就是让计算机自己在数据中学习规律,并根据所得到的规律对未来数据进行预测。机器学习包括如聚类、分类、决策树、贝叶斯、神经网络、深度学习(Deep Learning)等算法。机器学习的基本思路是模仿人类学习行为的过程,如我们在现实中的新问题一般是通过经验归纳,总结规律,从而预测未来的过程。
2025-07-14 20:07:06
1224
原创 python-Matplotlib
标记:.点标记,o圆圈标记,v向下三角标记,^向上三角标记,<向左三角标记,>向右三角标记,s方形标记,p五边形标记,*星形标记,h六边形标记1,H六边形标记2,x叉号标记,D菱形标记,d细菱形标记,|竖线标记,_横线标记。Shape:网格的形状,格式为(rows,cols),表示网格的行数和列数,在figure中式全局设置。用于在子图中添加网格线。left和right:x轴的范围,left是x轴的最小值,right是x轴的最大值。b蓝色,g绿色,r红色,c青色,m洋红色,y黄色,k黑色,w白色。
2025-07-07 16:42:09
711
1
原创 数据结构1
当结合使用appendleft和popleft时,实际上在实现一个栈的数据结构,因为栈说后进先出,而这两个操作正好模拟栈的压栈和弹栈行为。3.入栈的操作,当有数据加入到栈,判断数组长度是否达到阈值,是则抛已满的异常,否则将数据追加到数组的尾部。deque是一个双端队列的实现,它提供了在两端快速添加和移除元素的能力。1.获取头节点的后续节点,定义一个临时节点,将该节点指向临时节点。2.对于每个节点,其右子树中的所有节点的键值都大于该节点的键值。3.对于每个节点,其右子树中的所有节点的键值都大于该节点的键值。
2025-07-07 16:41:53
1057
原创 OpenCv-图像预处理
如下图所示,左侧是原图像(3,3),右侧是目标图像(5,5),原图像的几何中心点是(1,1),目标图像的几何中心点是(2,2),根据对应关系,目标图像的几何中心点对应的原图像的位置是(1.2,1.2),那么问题来了,目标图像的原点(0,0)和原始图像的原点是重合的,但是目标图像的几何中心点相对于原始图像的几何中心点偏右下,那么整体图像的位置会发生偏移,所以参与计算的点相对都往右下偏移会产生相对的位置信息损失。那么放大后图像的(0,0)坐标处的像素值就是原图像中(0,0)坐标处的像素值,也就是10。
2025-04-27 19:16:09
846
原创 OpenCv-图像基础
OpenCV(开放源代码计算机视觉库)是一个开源的计算机视觉和机器学习软件库。由一系列 C++ 类和函数构成,用于图像处理、计算机视觉领域的算法实现。
2025-04-12 11:57:43
1338
原创 python-Pandas
pandas是一个开源的第三方Python库,从Numpy和Matplotlib的基础上构建而来,是python语言的一个拓展程序库,用于数据分析。Pandas可以从各种文件格式比如CSV、JSON、SQL、Micrsoft Excel导入数据,可以对各种数据进行运算操作,比如归并、再成形、选择、还有数据清洗和数据加工特征。
2025-04-03 16:00:11
866
原创 Python基础
切片:参数是start、end、step,下标从0开始,支持负数。python中变量就是变量,没有类型。一般所说类型变量指向的内存中的对象类型。注释的功能:1、对代码的注释,可以方便阅读理解。f-string格式化字符串以f开头,字符串中的表达式用{}包起来。使用的变量必须声明,在声明变量时不需要指定变量类型。变量是用赋值语句创建,用来绑定一个数据的有名对象。三引号是字符串模板,可以包含单引号或双引号。用引号引起就是字符串,空或空格也算。''' ''' (多行,单引号)注意:需要缩进来组织代码和代码块。
2025-03-10 17:37:22
570
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅