- 博客(26)
- 收藏
- 关注
原创 TransNeXt 深度解析:聚合注意力机制的突破性视觉骨干网络
自定义 TransNeXtimg_size=640, # 输入分辨率pretrain_size=224, # 预训练分辨率embed_dims=[64, 128, 256, 512], # 自定义通道数depths=[2, 2, 10, 2], # 自定义深度聚合注意力:优雅地统一局部和全局注意力,模拟中央凹视觉感知像素聚焦注意力:解决 token 聚焦问题,增强局部信息保留序列长度缩放:使模型能够适应不同输入分辨率连续位置偏置:支持任意分辨率的位置编码。
2025-11-30 16:46:32
632
1
原创 ConvNeXtV2 深度解析:全卷积掩码自编码器的突破
FCMAE 框架:首次证明纯卷积网络可以有效进行掩码自监督预训练GRN 层:简洁优雅的特征增强机制,解决特征坍塌问题性能提升:在相同参数量下超越 ConvNeXt V1,与 ViT 系列模型竞争。
2025-11-30 10:27:29
1173
原创 深入理解 MCP:AI 应用的“USB-C 接口“
是一个开放标准协议,专门用于连接 AI 应用与外部系统。简单来说,MCP 就像是 AI 应用的"USB-C 接口"——正如 USB-C 为电子设备提供了标准化的连接方式,MCP 为 AI 应用提供了一种标准化的方式来连接外部数据源和工具。macOSWindows},"args": ["-y",},"env": {MCP 代表了 AI 应用连接外部世界的标准化未来。它通过提供统一的协议标准,解决了 AI 模型与数据源之间碎片化集成的痛点,为构建真正智能、可扩展的 AI 系统奠定了基础。
2025-11-27 20:08:19
622
原创 使用PyTorch实现手写数字识别系统:从理论到实践
手写数字识别是计算机视觉领域的经典入门项目。卷积神经网络(CNN)模型设计专业级数据预处理与增强模型训练与优化技巧验证评估与结果分析实际应用部署深度学习的精髓不在于记住多少模型,而在于掌握从数据到解决方案的系统化思维能力。设计并训练了CNN手写数字识别模型;实现了数据预处理流水线;建立了模型评估体系;开发了单图预测接口;应用了TensorBoard可视化训练过程多语言支持:扩展中文字符识别在线学习:增量更新模型参数注意力机制:提升困难样本识别。
2025-08-15 19:06:01
546
原创 神经网络概念
我们要学习的(Deep Learning)是神经网络的一个子领域,主要关注更深层次的神经网络结构,也就是所以,我们需要先搞清楚什么是神经网络!
2025-08-11 19:52:39
1187
原创 机器学习基石:深入解析线性回归
回归分析用于预测连续型数值。它研究自变量(特征)与因变量(目标)之间的关系。根据房屋面积、地段预测房价根据广告投入预测产品销量核心目标:找到特征与目标之间的最佳映射函数。1.实际数据中 x和y组成的点 不一定是全部落在一条直线上2.我们假设有这么一条直线ywxby=wx+bywxb是最符合描述这些点的3.最符合的条件就是这个方程带入所有x计算出的所有y与真实的y值做均方差计算4.找到均方差最小的那个w5.这样就求出了最优解的函数(前提条件是假设b=0)回归预测连续值,线性回归。
2025-08-04 20:00:11
380
原创 精通分类:解析Scikit-learn中的KNN、朴素贝叶斯与决策树(含随机森林)
掌握KNN、朴素贝叶斯、决策树及随机森林的原理与实战技巧,是构建高效分类系统的基石。理解算法背后的假设、优缺点及适用场景,结合Scikit-learn强大的API和调优工具(如),能针对实际问题游刃有余地选择与优化模型。没有“最好”的算法,只有“最合适”的算法。持续探索不同模型在数据上的表现,是机器学习工程师的精进之道。代码实践提示:本文所有代码示例均基于版本,运行前请确保安装正确依赖(可视化决策树需额外安装graphviz。
2025-08-01 19:11:22
2478
原创 初始sklearn 数据集获取、分类、划分与特征工程
步骤核心工具关键注意事项数据获取make_*pandas理解数据集结构任务识别观察目标变量y类型分类(离散) vs 回归(连续)数据划分设置, 分类问题用stratify特征工程文本提取,无量纲化, 预处理类训练/测试集分开处理,避免数据泄露熟练运用 sklearn 的数据处理工具箱,能将原始数据转化为模型可理解的“语言”,为构建高性能机器学习模型奠定坚实基础。每一步的严谨性都直接影响最终结果的可靠性。
2025-07-31 20:22:43
1094
原创 图像轮廓与凸包
轮廓提供精确形状描述,凸包简化几何分析,两者结合可高效处理计算机视觉中的物体形态问题。在学习中尽可能理解为什么要这样,再关注API的使用。
2025-07-28 19:54:59
1110
原创 图像梯度处理与边缘检测
图像梯度是描述像素灰度变化的 “数学工具”,而边缘检测则是基于梯度寻找图像中 “有意义边界” 的技术。从简单的 Sobel 算子到复杂的 Canny 算法,每一种方法都在平衡精度、效率与抗噪声能力。理解梯度与边缘检测的原理,主要在于理解为什么梯度处理使用数学中的一阶方差和二阶方差且卷积核如何发挥作用,边缘检测主要在于边缘方向不一定会是常见的45,90等,如何确认图像的梯度和方向就是需要重点理解的。1%29+1%29+1%29+
2025-07-25 18:17:33
1050
原创 图像旋转:从单点到整体的变换
总之,图像旋转是一个涉及多个环节的复杂过程,单点旋转是基础,图片旋转是扩展,而插值方式和边缘填充方式则是保证旋转后图像质量的关键。不同的插值方式和边缘填充方式各有优劣,在实际应用中,我们需要根据具体需求选择合适的方法,以获得理想的旋转效果。
2025-07-24 19:06:57
1125
原创 OpenCV 图像预处理:颜色操作与灰度、二值化处理详解
颜色加法、颜色转换、灰度实验和二值化处理是 OpenCV 图像预处理中的重要操作。颜色加法可调整图像视觉效果,颜色转换能适应不同任务需求,灰度实验简化图像信息,二值化处理进一步突出目标。掌握这些操作的原理、实现方法和关键要点,能帮助我们更好地进行图像预处理,为后续的计算机视觉任务奠定坚实的基础。在实际应用中,需根据具体场景灵活选择和组合这些操作,以达到最佳的预处理效果。
2025-07-23 18:28:10
1925
原创 OpenCV 入门:基础图像操作
本文我介绍了 OpenCV 的基本操作,包括图像的读写显示、像素操作、几何图形绘制以及实时视频流处理。这些基础操作是进行更复杂计算机视觉任务的基石,例如目标检测、图像分割等。OpenCV 的强大之处在于它将复杂的视觉算法封装成简单易用的接口,让开发者可以专注于业务逻辑而非底层实现。
2025-07-22 17:11:50
689
原创 Numpy 库相关操作
在实际应用中,Numpy库以高效的多维数组对象为核心,搭配丰富的数学函数库,让复杂的数值运算变得简洁而快速,同时结合 Pandas、Matplotlib 等库,能构建更强大的数据处理。
2025-07-21 19:59:12
414
原创 模块化编程:从概念到实践的解析
os:处理操作系统交互,如文件操作、路径处理常用方法:os.path.join()(拼接路径)、os.mkdir()(创建目录)、os.listdir()(列出目录内容)。sys:获取系统信息和控制解释器常用方法:sys.version(Python 版本)、sys.argv(获取命令行参数)、sys.exit()(退出程序)。datetime:处理日期和时间。
2025-07-18 20:08:38
830
原创 深入理解 Python 中的迭代器与生成器:区别、实现与应用
迭代器和生成器都是 Python 中实现迭代功能的重要工具,它们各有特点和适用场景。迭代器需要手动实现迭代协议,适合自定义复杂的容器遍历和处理中等规模数据;生成器通过 yield 关键字简化了迭代器的实现,具有惰性计算的特性,更适合处理海量数据、实现简单协程和简化代码逻辑。在实际开发中,我们需要根据具体的需求和数据情况,选择合适的工具来实现迭代功能,以提高代码的效率和可维护性。
2025-07-17 17:33:03
1003
原创 类与对象:编程世界的基础构建块
类和对象是面向对象编程的基石,类定义了事物的共性,对象则是共性的具体体现。属性描述了事物的特征,方法定义了事物的行为,不同类型的属性和方法在不同场景下发挥着重要作用。掌握这些概念,能帮助我们构建出更贴近现实世界、逻辑清晰且易于维护的程序。1. 实例属性:每个对象独有的属性。2. 类属性:所有对象共享的属性。3. 私有属性:只能在类内部访问的属性(Python中使用双下划线前缀表示私有,但实际上是一种名称修饰,并非完全不可访问,可暴力访问,但约定上不允许外部直接访问)。
2025-07-16 19:00:43
899
原创 递归函数与装饰器函数:Python 中的两种重要函数形式
递归函数通过自身调用将复杂问题分解,以简洁的代码解决具有递归结构的问题,但需注意控制递归深度。装饰器函数则为函数功能扩展提供了优雅的方式,在不修改原函数的前提下添加额外功能,是 Python 中实现 AOP(面向切面编程)的重要手段。掌握这两种函数的用法,能让我们在处理复杂问题和进行代码设计时,拥有更多灵活、高效的选择,写出更具 Python 风格的优雅代码。
2025-07-15 17:04:16
585
原创 函数的位置传参、关键词传参及其可变性和解包操作
函数的参数传递机制是 Python 函数灵活性的重要保障。位置传参是基础,简单直接但依赖顺序;关键词传参更清晰,可忽略顺序但需指定参数名;可变参数 *args 和 **kwargs 让函数能应对不确定数量的参数;解包操作 * 和 ** 则简化了可迭代对象向函数参数的传递。学习掌握这些参数传递方式,并能根据实际场景灵活组合运用,不仅能让我们的代码更简洁、高效,还能提高代码的可读性和可维护性,为编写高质量的 Python 程序打下坚实的基础。
2025-07-14 15:20:01
731
原创 Python 推导式及 常见语句和内置函数总结
推导式让序列生成更简洁,常见语句控制程序流程,内置函数简化数据处理 —— 这三者是 Python 高效编程的基石。熟练运用它们,能显著提升我们编写代码的质量和开发效率。。
2025-07-11 17:02:15
508
原创 Python 复合类型总结:序列、映射与集合
类型核心特点代表类型适用场景序列类型有序,可通过索引访问存储有序数据,如列表、文本、坐标映射类型键值对,通过键访问dict存储关联数据,如用户信息、配置项集合类型无序,去重,支持集合运算去重、关系判断、成员检测掌握这三类复合类型的特性,能在处理不同数据场景时选择最合适的工具:用序列处理有序数据,用映射管理关联数据,用集合实现去重与关系运算。合理搭配使用,可显著提升 Python 代码的效率与可读性。。
2025-07-10 11:06:01
1150
原创 Python 复合类型:可变与不可变解析
复合类型是可以容纳多个元素的数据类型,像列表、元组、字典、集合等都属于此类。而可变与不可变,主要描述的是这些类型创建后,其内部元素是否能被修改。不可变类型:一旦创建,其内部元素的值就不能被直接修改。若要 “修改”,实际是创建了一个新的对象,原对象保持不变。可变类型:创建后,内部元素可以直接被修改,且修改是在原对象上进行的,不会创建新对象。在编程时,要根据具体需求选择合适的类型。若数据创建后无需修改,且需作为字典键,优先用不可变类型,如元组;若需频繁修改数据,用可变类型如列表、字典更合适。
2025-07-10 10:21:32
791
原创 一刷3Blue1Brown线性代数
例如,旋转矩阵的特征向量是垂直于旋转平面的轴(三维空间中),它们在旋转中纹丝不动。特征向量为我们提供了分析变换的 “捷径”:将空间分解为特征向量张成的轴,变换就简化为沿各轴的独立缩放。如果你曾被线性代数的符号迷宫困住,不妨打开 3Blue1Brown 的视频,看那些跳动的箭头如何编织出空间变换的韵律。若三个向量共面,则它们只能张成二维空间 —— 这种 “维度” 的变化,正是空间变换的核心逻辑起点。拉长 3 倍,平面被均匀拉伸,所有图形按比例放大,面积变为原来的 6 倍(2×3)。两个不共线的二维向量(
2025-07-09 16:59:42
1224
原创 Python 基础变量类型之字符串和数字类型
print(words) # 输出:['I', 'love', 'Python', 'because', 'Python', 'is', 'easy', 'to', 'learn']需要注意的是,由于计算机内部对浮点数的存储方式采用二进制,有些十进制小数在转换为二进制时可能无法精确表示,会存在一定的精度误差。例如,当整型和浮点型进行运算时,结果会是浮点型。在编程中,经常需要将变量的值插入到字符串中,这就用到了字符串格式化。而在 Python 中,变量无需预先声明类型,解释器会根据赋值自动推断变量的类型。
2025-07-09 11:13:49
784
原创 conda 环境配置及 IDE(vsCode、PyCharm、Jupyter)开发环境配置全攻略
如果在命令行中输入 conda 命令时提示 “conda 不是内部或外部命令,也不是可运行的程序或批处理文件”(Windows)或 “command not found: conda”(macOS 和 Linux),可能是因为 conda 没有添加到环境变量中。在 Jupyter Notebook 中,需要将内核与 conda 环境关联起来,才能在 Notebook 中使用该环境的依赖。conda 的核心功能之一就是环境管理,通过创建不同的环境,可以为不同的项目提供独立的依赖环境,避免相互干扰。
2025-07-08 17:14:46
2256
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅