自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 视觉处理基础2

池化层 (Pooling) 降低维度, 缩减模型大小,提高计算速度. 即: 主要对卷积层学习到的特征图进行下采样(SubSampling)处理。池化层主要有两种:最大池化 max pooling最大池化是从每个局部区域中选择最大值作为池化后的值,这样可以保留局部区域中最显著的特征。最大池化在提取图像中的纹理、形状等方面具有很好的效果。平均池化 avgPooling平均池化是将局部区域中的值取平均作为池化后的值,这样可以得到整体特征的平均值。平均池化在提取图像中的整体特征减少噪声。

2024-12-03 19:36:53 946

原创 视觉处理基础1

卷积神经网络,CNN)是一种专门用于处理具有网格状结构数据的深度学习模型。CNN网络主要有三部分构成:卷积层、池化层和全连接层构成,其中卷积层负责提取图像中的局部特征;池化层用来大幅降低运算量并特征增强;全连接层类似神经网络的部分,用来输出想要的结果。

2024-12-02 19:38:00 413

原创 深度学习基础3

text{sign}(\theta_t) 是参数 \theta_t 的符号函数,表示当 \theta_t 为正时取值为 1,为负时取值为 -1,等于 0 时为 0。首先计算该批次数据的均值和方差。: 在推理阶段,批量标准化使用的是训练过程中计算得到的全局均值和方差,而不是当前批次的数据。: 通过减少网络的层数、每层的神经元数量或减少卷积层的滤波器数量,可以降低模型的复杂度,减少过拟合的风险。数据在经过 BN 层之后,无论数据以前的分布是什么,都会被归一化成均值为 β,标准差为 γ 的分布。

2024-11-28 18:56:32 1158

原创 深度学习基础2

(1)当输出层使用softmax多分类时,使用交叉熵损失函数;(2)当输出层使用sigmoid二分类时,使用二分类交叉熵损失函数, 比如在逻辑回归中使用;(3)当功能为线性回归时,使用smooth L1损失函数或均方差损失-L2 loss;梯度下降算法通过不断更新参数来最小化损失函数,是反向传播算法中计算权重调整的基础。在实际应用中,根据数据的规模和计算资源的情况,选择合适的梯度下降方式(批量、随机、小批量)及其变种(如动量法、Adam等)可以显著提高模型训练的效率和效果。

2024-11-27 22:26:23 2107

原创 深度学习基础1

传统机器学习算法依赖人工设计特征、提取特征,而深度学习依赖算法自动提取特征。深度学习的运行方式,从大量数据中学习特征,这也是深度学习被看做黑盒子、可解释性差的原因。

2024-11-26 21:12:40 1080

原创 PyTorch基础4

模型(神经网络,深度神经网络,深度学习)定义组件帮助我们在 PyTorch 中定义、训练和评估模型等。

2024-11-25 21:47:41 922

原创 PyTorch基础3

自动微分模块torch.autograd负责自动计算张量操作的梯度,具有自动求导功能。自动微分模块是构成神经网络训练的必要模块,可以实现的更新,使得算法的实现变得简单而高效。

2024-11-22 16:57:37 739

原创 PyTorch基础2

广播机制支持了不同形状的张量进行计算的实现,而无需显式地调整张量的形状。广播机制通过自动扩展较小维度的张量,使其与较大维度的张量兼容,从而实现按元素计算。点积运算要求如果第一个矩阵的shape是 (N, M),那么第二个矩阵 shape必是 (M, P),点积运算结果的shape为 (N, P)。可以用于将张量转换为不同的形状,但要确保转换后的形状与原始形状具有相同的元素数量。:要拼接的张量在除了指定拼接的维度之外的所有维度上的大小必须相同。

2024-11-21 20:04:18 1029

原创 PyTorch基础1

PyTorch会将数据封装成张量(Tensor)进行计算,所谓张量就是元素为相同类型的多维矩阵。张量可以在 GPU 上加速运行。

2024-11-20 18:11:18 539

原创 机器学习基础07

逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法。逻辑回归的输入是线性回归的输出。损失函数:构建过程,若有: 然后使用梯度下降算法,减少损失函数的值,更新逻辑回归前面对应算法的权重参数(回归计算W),提升原本属于1类别的概率,降低原本是0类别的概率。参数:default=True 指定是否计算截距int, default=100 最大迭代次数。迭代达到此数目后,即使未收敛也会停止。2.K-MeansK-Means是无监督的聚类算法。第一步:设

2024-11-19 18:21:49 744

原创 机器学习基础06

①利用正规方程求解的W是最优解的原因是MSE这个损失函数是凸函数。但机器学习的损失函数并非都是凸函数,设置导数为0会得到很多个极值,不能确定唯一解。②当数据量和特征较多时,矩阵计算量太大.在机器学习中,。具体来说,对于每个可训练参数,。通过计算损失函数对参数的梯度,梯度下降算法能够根据梯度的信息来调整参数,朝着减少损失的方向更新模型。

2024-11-18 19:56:26 953

原创 机器学习基础05

属于集成学习,是通过构建一个包含多个决策树(通常称为基学习器或弱学习器)的森林,每棵树都在不同的数据子集和特征子集上进行训练,最终通过投票或平均预测结果来产生更准确和稳健的预测。这种方法不仅提高了预测精度,也降低了过拟合风险,并且能够处理高维度和大规模数据集。

2024-11-15 18:58:50 1137

原创 机器学习基础04

具体来说,对于一个特征,我们计算其所有可能的分割点对应的子节点的加权平均基尼指数,然后选择最小化这个值的分割点。基尼指数(Gini Index)是决策树算法中用于评估数据集纯度的一种度量,基尼指数衡量的是数据集的不纯度,或者说分类的不确定性。通过这种方法,即使某个特征在训练集中从未出现过,其概率也不会被估计为零,而是会被赋予一个很小但非零的值,从而避免了模型在面对新数据时可能出现的过拟合或预测错误。对于一个二分类问题,如果一个节点包含的样本属于正类的概率是 (p),则属于负类的概率是 (1-p)。

2024-11-14 19:08:54 1066

原创 机器学习基础03

K-Fold交叉验证技术中,整个数据集被划分为K个大小相同的部分。一个Fold被用作验证集,其余的K-1个Fold被用作训练集。K-近邻算法(K-Nearest Neighbors,简称KNN),根据K个邻居样本的类别来判断当前样本的类别;比如在KNN算法中,k是一个可以人为设置的参数,所以就是一个超参数。如果一个样本在特征空间中的k个最相似(最邻近)样本中的大多数属于某个类别,则该类本也属于。K-折交叉验证的变种, 分层的意思是说在每一折中都保持着原始数据中各个类别的比例关系。

2024-11-13 21:05:13 829

原创 机器学习基础02

它的目的是将不同特征的数值范围缩放到统一的标准范围,以便更好地适应一些机器学习算法,特别是那些对输入数据的尺度敏感的算法。它通过对每个特征的值减去其均值,再除以其标准差,将数据转换为均值为0,标准差为1的分布。(1)特征提取, 如果不是像dataframe那样的数据,要进行特征提取,比如字典特征提取,文本特征提取。主成分分析就是把之前的特征通过一系列数学计算,形成新的特征,新的特征数量会小于之前特征数量。其中,z是转换后的数值,x是原始数据的值,μ是该特征的均值,σ是该特征的标准差。

2024-11-12 19:17:47 743

原创 机器学习基础01

机器学习(Machine Learning)本质上就是让计算机自己在数据中学习规律,并根据所得到的规律对未来数据进行预测。机器学习包括如聚类、分类、决策树、贝叶斯、神经网络、深度学习(Deep Learning)等算法。机器学习的基本思路是模仿人类学习行为的过程,如我们在现实中的新问题一般是通过经验归纳,总结规律,从而预测未来的过程。Python语言机器学习工具Scikit-learn包括许多智能的机器学习算法的实现Scikit-learn文档完善,容易上手,丰富的API接口函数。

2024-11-11 20:28:50 981

原创 PySimpleGUI和Pymysql

PySimpleGUI 是一个用于简化 GUI 编程的 Python 包,它封装了多种底层 GUI 框架(如 tkinter、Qt、WxPython 等),提供了简单易用的 API。PySimpleGUI 包含了大量的控件(也称为小部件或组件),这些控件可以快速构建用户界面。是一个用于连接 MySQL 数据库的纯 Python 实现。它允许 Python 程序与 MySQL 数据库进行交互,执行 SQL 查询,并处理结果集。

2024-11-06 20:21:30 416

原创 face_recognition

face_recognition是一个非常流行的 Python 库,专门用于人脸识别任务。它基于 dlib 库和 HOG(Histogram of Oriented Gradients)特征以及深度学习模型,提供了简单易用的接口来进行人脸检测、面部特征点定位和人脸识别。face_recognition 库由 Adam Geitgey 开发,旨在简化人脸识别任务,使其更加容易上手。

2024-11-05 18:39:33 730

原创 OpenCV图像预处理2

高斯滤波的原理是利用高斯函数对图像进行加权平均。在滤波过程中,每个像素的值都会被其周围像素的加权平均值所取代,而这些权重则由高斯分布函数计算得出。通过这种方式,高斯滤波可以有效地减少图像中的噪声,并保留图像的整体特征。cv2.GaussianBlur() 是 OpenCV 库中用于图像模糊处理的函数之一。该函数可以对图像进行高斯模糊处理,即在每个像素周围使用高斯核来加权平均计算像素值,从而达到模糊效果。src:输入图像。ksize:高斯核的大小,通常以元组的形式指定。sigmaX。

2024-11-04 20:20:38 1050

原创 OpenCV图像预处理1

用于翻转图像。翻转可以是水平翻转、垂直翻转或同时水平和垂直翻转。:输入图像,可以是任意类型和深度的多通道图像。flipCode0:沿 X 轴翻转(垂直翻转)1:沿 Y 轴翻转(水平翻转)-1:沿 X 轴和 Y 轴翻转(同时水平和垂直翻转):可选参数,输出图像。如果未提供,输出图像将与输入图像具有相同的尺寸和类型。

2024-11-01 19:17:01 965 1

原创 OpenCV图像基础

创建一个命名窗口,以便在该窗口中显示图像或进行其他图形操作。参数说明(str): 窗口的名称。这个名称必须是唯一的,因为它是用来标识窗口的。flags (int, 可选): 窗口的标志,用于设置窗口的行为。默认值为cv2.WINDOW_AUTOSIZE: 允许调整窗口大小。: 窗口大小根据图像大小自动调整,不能手动调整。

2024-10-31 20:00:45 1194

原创 Python基础10

一个.py 文件就是一个模块模块是含有一系列数据函数类等的程序。JSON:支持的数据类型包括对象(类似于字典)、数组(类似于列表)、字符串、数字、布尔值和 null。

2024-10-30 18:53:05 792

原创 数据结构

一条相互链接的数据节点表。每个节点由两部分组成:数据和指向下一个节点的指针。n(n≥0)个结点构成的有限集合。注意:当n=0时,称为空树;对于任一棵非空树(n> 0),它具备以下性质:树中有一个称为“根(Root)”的特殊结点,用 root 表示;其余结点可分为m(m>0)个互不相交的有限集T1,T2,... ,Tm,其中每个集合本身又是一棵树,称为原来树的“子树(SubTree)”子树之间不可以相交除了根结点外,每个结点有且仅有一个父结点;一棵N个结点的树有N-1条边。

2024-10-29 18:12:35 1840

原创 Pandas基础03

n:要抽取的行数frac:抽取的比例,比如 frac=0.5,代表抽取总体数据的50%replace:布尔值参数,表示是否以有放回抽样的方式进行选择,默认为 False,取出数据后不再放回weights:可选参数,代表每个样本的权重值,参数值是字符串或者数组random_state:可选参数,控制随机状态,默认为 None,表示随机数据不会重复;若为 1 表示会取得重复数据axis:示在哪个方向上抽取数据(axis=1 表示列/axis=0 表示行)

2024-10-28 14:24:17 769

原创 Pandas基础02

重置索引(reindex)可以更改原 DataFrame 的行标签或列标签,并使更改后的行、列标签与 DataFrame 中的数据逐一匹配。如果为 False,则返回一个新的排序后的对象。indicator:布尔值,如果为 True,则在结果中添加一个名为 __merge 的列,指示每行是如何合并的。常见的频率包括 'D'(天)、'H'(小时)、'T' 或 'min'(分钟)、'S'(秒)'right':右连接,返回右侧 DataFrame 的所有键,以及左侧 DataFrame 匹配的键。

2024-10-26 00:12:45 630

原创 Pandas基础01

axis=0 或 axis='index' 表示删除行,axis=1 或 axis='columns' 表示删除列。若在创建DF时,copy属性为True,drop() 不会修改原 DataFrame,而是返回一个新的 DataFrame。描述:如果为 True,则直接修改原 DataFrame,而不是返回一个新的 DataFrame。异构数据表,所谓异构,指的是表格中每列的数据类型可以不同,比如可以是字符串、整型或者浮点型等。(3)单个元素(某行某列对应的值),返回的数据类型为该元素的原始数据类型。

2024-10-24 20:20:30 653

原创 Matplotlib基础

*kwargs: 其他可选参数,用于定制网格线的外观,如 color、linestyle(ls)、linewidth(lw) 等。shape: 网格的形状,格式为 (rows, cols),表示网格的行数和列数,在figure中式全局设置。允许更灵活地指定子图的位置和大小,以非等分的形式对画布进行切分,可以创建复杂的布局。loc: 子图的起始位置,格式为 (row, col),表示子图在网格中的起始行和列。实例化 figure 对象,即绘制图形的对象,可以通过这个对象,来设置图形的样式等。

2024-10-23 21:18:00 724

原创 Numpy基础02

对于二维数组来说,axis=1 表示沿着水平方向,axis=0 表示沿着垂直方向,axis默认值为None,amin,amax求整体的最值。如果数组的长度是偶数,则中位数是中间两个数的平均值。在 NumPy 中,计算方差时使用的是统计学中的方差公式,而不是概率论中的方差公式,主要是因为 NumPy 的设计目标是处理。对于二维数组来说,axis=1 表示沿着水平方向,axis=0 表示沿着垂直方向,axis默认值为None,求整体的差值。当 axis =0 时,删除指定的行,若 axis=1,删除指定的列。

2024-10-22 19:27:25 872

原创 Numpy基础01

对数组在横向或纵向上进行一定次数的重复进行填充, 使参与运算的数组维度相同.维度匹配:如果两个数组的维度数不同,维度数较少的数组会在前面补上长度为 1 的维度。长度匹配:如果两个数组在某个维度上的长度不同,但其中一个数组在该维度上的长度为 1,则该数组会沿着该维度进行广播。不匹配:如果两个数组在某个维度上的长度既不相同也不为 1,则广播失败,抛出 ValueError。

2024-10-21 17:19:51 594

原创 Python基础09

在class外部不能访问,也不能在子类中访问作用:(1)指隐藏类的实现细节(2)一定程度上,保证class内部数据安全私有属性:__变量名私有方法:__方法名()

2024-10-18 21:12:09 1164

原创 Python基础08

数据成员:变量方法成员:函数class 类名(继承列表):实例属性(类内的变量) 定义实例方法(类内的函数) 定义类变量(class variable) 定义类方法(@classmethod) 定义静态方法(@staticmethod) 定义。

2024-10-17 23:37:17 1049

原创 Python基础07

def 函数名():语句。如果函数内部有return语句。若return执行,则返回return所连接的变量或表达式的值。若函数内部所有return都不执行,返回None,即无返回值。LEGB优先调用顺序

2024-10-16 22:56:04 401

原创 Python基础06

for out_exp in input_list:迭代 input_list 将 out_exp 传入到 out_exp_res 表达式中。for out_exp in input_list:迭代 input_list 将 out_exp 传入到 out_exp_res 表达式中。for out_exp in input_list:迭代 input_list 将 out_exp 传入到 out_exp_res 表达式中。out_exp_res:列表生成元素表达式,可以是有返回值的函数。

2024-10-15 20:10:44 308

原创 线性代数基础02

几何定义:向量是一个有方向和大小的量,通常用箭头表示。向量的起点称为原点,终点称为向量的端点。代数定义:向量是一个有序的数组,通常表示为列向量或行向量。例如,一个 n 维列向量可以表示为:一个 n 维行向量可以表示为:其中 v1,v2,…,vn是向量的分量。行向量和列向量再本质上没有区别。向量的表示几何表示:在二维或三维空间中,向量通常用箭头表示,箭头的方向表示向量的方向,箭头的长度表示向量的大小。代数表示:向量可以用列向量或行向量表示,如上所述。坐标表示:在二维或三维空间中,向量可以用坐标表示。

2024-10-14 14:12:49 1002 1

原创 线性代数基础01

行列式是一个数学概念,主要用于线性代数中,它是一个可以从方阵(即行数和列数相等的矩阵)形成的一个标量(即一个单一的数值)。以3阶行列式为例:从上述公式可以看出:3阶行列式按行展开后为6项,每项为3个不同行不同列的3个元素相乘aij元素的行标i都是123的自然排列aij元素列标j则为:123、231、312、321、213、132,总数为3!=6分别计算列标排列的逆序数:N(123) = 0 偶数N(231) = 1 + 1 = 2 偶数N(312) = 2 偶数。

2024-10-12 19:02:16 2795

原创 概率论基础02

由上图可知,F(-x)是曲线中红色部分的面积,F(x)是曲线中黄色部分的面积,由分布函数的性质可知,整个曲线的面积=1,所以蓝色部分的面积=1-黄色部分面积=1-F(x),另外正态分布曲线是以y轴对称的,蓝色部分的面积=F(-x),所以:F(-x)=1-F(x)对于离散型随机变量函数的分布函数计算,最简单的方法是列出随机变量X的分布表,然后根据新的函数关系计算出新随机变量Y的值,其值对应的概率就是X原来值对应的概率值,然后形成分布表,如果Y值有重复,则将重复值对应的概率相加即可。

2024-10-10 17:34:13 1141

原创 概率论基础01

设 A和 B 是两个事件。如果满足以下条件,则称事件 A 和事件 B 是独立的:其中:P(AB)是事件 A 和事件 B 同时发生的概率(联合概率)。P(A)是事件 A 发生的概率。P(B) 是事件 B 发生的概率。

2024-10-09 19:25:35 931

原创 高数基础02

定积分是微积分中的一个重要概念,用于求解函数在某个区间上的累积效应或面积。

2024-10-09 13:48:48 982

原创 高数基础01

函数f 是从一个集合 X(称为定义域,X包含于实数集R)到另一个集合 Y(称为值域)的映射。对于定义域中的每一个元素 x,函数f都指定了一个唯一的元素 y 在值域中

2024-10-08 19:56:20 908

原创 Python基础05

即一个字典中键不可重复,值可以。移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。从调用它的集合中移除所有在指定集合中出现的元素,即只保留那些仅存在于调用它的集合中的元素。创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值。添加元素到集合,且参数可以是列表,元组,字典等 ,x 可以有多个,用逗号隔开。将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。

2024-09-30 19:38:12 672

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除