全连接层与卷积层参数计算

层的概念 在前面https://www.laumy.tech/2013.html有说明\"层与块\"概念,为了加深影响,本章再简要概括一下深度学习中常见的层。 在深度学习中,层(Layer)是神经网络的基本构建模块,负责对输入数据进行特定变换(如线性加权、非线性激活、特征提取等)。每一层接收输入数据,通过内部参数和计算规则生成输出,传递给下一层。常见的层有全连接层、激活函数层、卷积层、池化层、归一化层

opencv图像处理

图像滤波 图像的滤波核心是使用一个小的矩阵(滤波器或卷积核)在图像上进行滑动卷积,将计算得到的结果作为目标像素的值。 均值滤波 cv::blur(InputArray src, OutputArray dst, Size ksize, Point anchor = Point(-1,-1), int borderType = BORDER_DEFAULT); src:输入的原始图像,支持Mat格式

opencv视频流

环境准备 本文通过采集USB摄像头来示例说明 export LD_LIBRARY_PATH=/mnt/extsd/usr/lib:$LD_LIBRARY_PATH #指定库的路径 cat /sys/devices/platform/soc/usbc0/usb_host #激活USB host 摄像头采集 摄像头相关的主要使用的是VideoCapture类。 打开摄像头 cv::VideoCaptu

opencv基础操作

图像的读取和显示 读写图像 cv::Mat image = cv::imread(\"image.jpg\", cv::IMREAD_COLOR); 使用imread函数读取图像,第一个参数是图像文件的路径,第二个参数是解释图像的颜色和格式(如彩色图像、灰度图像等)。第二个参数可省略,默认是cv::IMREAD_COLOR,以彩色图像读取。 cv::imwrite(\"output.jpg\", imag

优化算法

局部最小与全局最小 对应任何目标函数f(x),当然这里的目标函数可以是损失函数。如果在x处对应的f(x)小于x附近任意点的f(x),那么f(x)是局部最小的。如果f(x)在x处的值是整个域中目标函数的最小值,那么f(x)是全局最小值。 除了局部最优解外,鞍点也是梯度为0的区域。什么是鞍点了?如下图。 在深度学习模型训练中,通常往往会有许多局部最优解或鞍点,要解决这种局部最优解需要一定程度的噪音才能

计算机视觉

图像增广 什么是图像增广?图像增广(Image Augmentation)是通过对原始图像进行一系列随机变换(如旋转、裁剪、颜色调整等)生成多样化样本的数据增强技术,旨在扩充训练数据集、提升模型泛化能力。其核心逻辑是模拟真实场景中可能存在的多样性,使模型学习到更鲁棒的特征。 深度学习中泛化能力是模型对未见过的新数据的适应能力,其核心体现在从训练数据中学习通用规律而非简单记忆特例。应用图像增广可以随

现代卷积神经网络

深度卷积神经网络AlexNet AlexNet相对LeNet的特点就是层数变得更深了,参数变得更多了。AlexNet由八层组成:五个卷积层、两个全连接隐藏层和一个全连接输出层。AlexNet使用ReLU而不是sigmoid作为其激活函数。 import torch from torch import nn from d2l import torch as d2l net = nn.Sequenti

卷积神经网络CNN

图像卷积 图像卷积是有一个卷积核,这个卷积核对输入做相关运算。卷积核从输入的张量左上角开始、从左到右、从上到下进行滑动,每到一个位置时,在该窗口的部分张量与卷积核做点积得到一个输出。 为什么要使用卷积了,主要是要解决以下问题 参数爆炸问:传统全连接网络处理图像时参数规模过大(如1000×1000像素图像需30亿参数),而CNN通过局部连接和权值共享大幅减少参数数量23。 平移不变性缺:卷积核的滑动

层与块

简单来说,如下图,第一个图中间5个神经元组成了一个层。第二图3个层组成了块。第三个图中3个块组成了整个模型。 层 层是神经网络的基本计算单元,负责对输入数据进行特定形式的变换,如线性映射、非线性激活等。其主要的功能是接收输入数据,生成输出结果。其中包含学习参数(如全连接层的权重和偏置)或无参数操作(如激活函数),输出形状可能与输入不同,例如全连接层将维度din映射到dout。 全连接层 layer

前向传播、反向传播和计算图

前向传播(Forward Propagation) 前向传播是神经网络中从输入数据到输出预测值的计算过程。它通过逐层应用权重(W)和偏置(b),最终生成预测值 y\',并计算损失函数L。 模型定义 y\' = W \\cdot x + b 损失函数(均方误差) L = \\frac{1}{n} \\sum_{i=1}^{n} (y\'(i) - y_{\\text{true}}(i))^2 示例 输入数据:x

梯度计算

什么是梯度 梯度(Gradient)是用于描述多元函数在某一点的变化率最大的方向及其大小。在深度学习中,梯度被广泛用于优化模型参数(如神经网络的权重和偏置),通过梯度下降等算法最小化损失函数。 对于多元函数 f(x_1, x_2, \\dots, x_n),其梯度是一个向量,由函数对每个变量的偏导数组成,记作: \\nabla f = \\left( \\frac{\\partial f}{\\partial

激活函数

概念 前面我们主要使用的是线性模型,但是线性模型有很多局限性,因为我们要建模的问题并不能单纯使用线性模型就能够拟合的,如下示例。 我们要拟合红色部分的函数,使用线性模型即使在怎么调整W和b都没法进行拟合出来,要拟合这样的函数,我们需要非线性的函数。 如上图,要拟合这样的模型,我们可以使用①②③函数相加再加上一个b偏置。那这里的①②③函数怎么来了,可以看出是wx+b再经过一个sigmoid转换得来,

sotfmax回归实现

什么是sotfmax回归 Softmax回归(Softmax Regression),也叫多项逻辑回归,是一种用于多分类问题的分类算法。它是对逻辑回归(Logistic Regression)的一种扩展,适用于处理输出类别数大于2的情况。Softmax回归通过使用Softmax函数来将每个类别的输出转化为一个概率分布,使得输出值能够表示每个类别的概率,并且所有类别的概率之和为1。 举个例子:假设有

线性回归实现

线性回归 线性回归模型根据给定的数据集和对应的标签,通过一个函数模型来拟合数据集以及对应标签的映射关系。而这个模型可以设置为y=wx+b的一个函数,其中x和w是一个向量。目标就是找出权重w和偏执b的值,使得模型更逼近数据集合的规律,也就是能够预测的更准确。 线性回归示例实现 pytorch本身有线性回归的函数,只是这里通过实现pytoch来加深理解 读取数据集 def data_iter(batc

小智Ai语音交互简要分析

app start 主要是初始化板级、显示、WiFi连接、音频codec、编解码、协议、音效、唤醒几个环节。 auto& board = Board::GetInstance(); //获取板级实例 SetDeviceState(kDeviceStateStarting);//设置出事状态为kDeviceStateStarting /* Setup the display */ auto

2条命令本地部署deepseek

环境是centos,下面是部署步骤。 命令1: 安装ollama 安装命令:curl -fsSL https://ollama.com/install.sh | sh 安装日志: >>> Cleaning up old version at /usr/local/lib/ollama >>> Installing ollama to /usr/local >

豆包大模型接入体验

前置条件 需要先创建获得API key和创建推理接入点。 API key获取 https://www.volcengine.com/docs/82379/1361424#f79da451 创建推理接入点 https://www.volcengine.com/docs/82379/1099522 安装python环境 python版本需要安装到Python 2.7或以上版本。执行python --v