基于索尼基于索尼Spresense的眼睛跟随平台中两个模型的对比

1.模型一(现在使用的)

请添加图片描述
这个模型是一个简单的神经网络,由三个主要组件组成:输入层、一个全连接层(Affine层)、一个Sigmoid激活函数层和一个Binary Cross Entropy损失层。
以下是每个组件的说明:

  1. Input 层:这是模型的输入层,表示输入数据的形状为1, 28, 28。这通常是表示灰度图像的维度,即单通道图像,宽度为28像素,高度也为28像素。
  2. Affine 层:这是一个全连接层,也被称为线性变换层。在这个层中,每个输入节点都与输出节点有一个权重(w)和偏差(b)。权重和偏差是在训练过程中通过反向传播算法更新的参数。全连接层将所有的输入节点连接到输出节点,形成一个线性的关系。在这个例子中,输入和输出的维度都是1,所以这是一个单输出的线性层。
  3. Sigmoid激活函数层:Sigmoid函数是一个常见的激活函数,它将任何实数值压缩到0到1之间。这个函数常用于二分类问题,因为它可以将输出映射到概率区间。在 Affine 层之后使用 Sigmoid 函数可以帮助我们得到一个接近于0或1的概率值,这对于二分类任务非常有用。
  4. Binary Cross Entropy Loss 层:这是损失函数层,用于衡量模型预测的结果与真实标签之间的差距。
    它测量的是模型预测的概率分布与真实类别分布之间的距离。在训练过程中,我们会最小化这个损失函数来优化模型的权重和偏差。这个模型适用于二分类问题,例如识别手写数字等任务。输入图像经过全连接层和Sigmoid激活函数后,得到一个0到1之间的概率值,表示属于某一类别的可能性。然后,Binary Cross Entropy Loss 层用来比较模型预测的概率与实际标签,以便在训练过程中调整模型参数以提高准确性。

模型二我们改进后(将在下个版本使用的)

请添加图片描述
它由几个不同的层组成,包括输入层、图像增强层、卷积层、最大池化层、双曲正切激活函数层、全连接层和sigmoid激活函数层,以及二元交叉熵损失层。
以下是对各个层及其功能的详细解释:

  1. 输入层(Dataset: x):这是模型的起始点,表示输入数据的形状为1, 28, 28,通常对应着灰度图像的尺寸。
  2. 图像增强层:这一层负责对输入图像进行增强,例如随机平移,以增加数据的多样性和泛化能力。
  3. 卷积层(核形状:7, 7):卷积层用于提取图像特征,它使用7x7的卷积核对输入图像进行滑动窗口操作,生成新的特征图。
  4. 最大池化层(形状:4, 4):最大池化层用于减小特征图的尺寸,提高计算效率,同时保留最重要的特征。
  5. 双曲正切激活函数层(Tanh):这是一种非线性激活函数,用于给模型引入非线性特性。
  6. 全连接层:全连接层将所有输入节点连接到输出节点,权重和偏差会在训练过程中被优化。
  7. Sigmoid激活函数层:Sigmoid函数将输出映射到0到1之间,适合二分类问题。
  8. 二元交叉熵损失层:这是用于训练过程中的损失函数,用于衡量模型预测结果与真实标签之间的差距。

两个模型对比

模型2与模型1相比,模型2增加了图像增强层和卷积层,以及最大池化层和双曲正切激活函数层。
这些额外的层提供了以下优势:
•图像增强层:通过对输入图像进行随机平移,增强了数据集的多样性,提高了模型的泛化能力,使其更能应对各种情况下的输入。
•卷积层:利用卷积核提取图像特征,减少了人工特征工程的需求,自动学习特征,提高了模型的准确性和效率。
•最大池化层:通过下采样降低了特征图的尺寸,减少了计算量,同时也保留了重要特征。
•双曲正切激活函数层:引入了非线性,使得模型能够学习更复杂的模式。总体来说,模型2比之前的模型1更加复杂且专门针对图像处理任务进行了优化。它能够更好地处理图像数据,特别是对于图像分类任务.

当我们将数据输入输入层时两个模型的工作步骤

模型一

  1. 输入层: 图片的原始像素值会作为输入传递给模型。由于模型的输入层接受1x28x28的图像,图片会被直接送入下一个处理层。
  2. 全连接层(Affine Layer): 输入的图像数据将被展平成一个向量,然后传递给全连接层。在这个层中,每个输入像素值都会乘以对应的权重,并加上一个偏差值,产生一个线性组合。这个线性组合的结果将被传递到下一层。
  3. Sigmoid激活函数层: 在全连接层之后,数据会通过Sigmoid激活函数。Sigmoid函数会将每个线性组合的输出值转换到0和1之间,引入非线性变换,使得模型能够拟合更复杂的决策边界。
  4. 二元交叉熵损失层: 在模型的最后一层,输出值会被视为该图像属于特定类别的概率。如果模型正在训练中,二元交叉熵损失函数会根据预测概率与实际标签的对比来计算损失,指导模型权重和偏差的调整,以最小化预测错误。

模型二

1.输入层: 图片首先会被加载到模型的输入层。因为模型期望的输入形状是1x28x28,这意味着图片会被展平成一个一维数组,长度为28x28 = 784。但是,在这个特定的架构中,由于输入层直接连接到了卷积层,所以图像可能会保持其原始的2D形状(28x28),并且深度为1(因为它是灰度图,只有一个通道)。
2. 图像增强层: 在这个阶段,输入的图像可能会被随机平移,这有助于模型学习到更加鲁棒的特征,即使在轻微的位置变化下也能正确分类。
3. 卷积层: 卷积核(7x7大小)会在图像上滑动,执行点积操作以产生特征图。每个卷积核都会检测图像的不同特征,如边缘、纹理或特定的图案。由于输入图像的大小为28x28,卷积后产生的特征图的大小将取决于卷积核的步长和填充方式。
4. 最大池化层: 最大池化操作会从特征图的每个4x4区域内抽取最大值,从而降低空间维度,减少计算量,并帮助模型对位置变化具有一定的不变性。
5. 双曲正切激活函数层: 激活函数如双曲正切(tanh)会对前一层的输出应用非线性变换,允许模型学习和表示复杂的非线性关系。
6. 全连接层: 在这一步,所有特征图会被展平成一个一维向量,然后输入到一个或多个全连接层中。全连接层中的每一个神经元都与前一层的所有输出相连,这样模型就能整合所有特征图的信息,形成更高层次的抽象表示。
7. Sigmoid激活函数层: 最后一层使用sigmoid函数,将输出压缩到0和1之间,这适用于二分类问题。输出值可以被解释为输入图像属于某个类别的概率。
8. 二元交叉熵损失层: 如果是在训练阶段,损失函数(这里是二元交叉熵)会评估模型的预测与实际标签之间的差异,以便更新权重和偏置,优化模型性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/765756.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

计算机专业的概念需要拓宽|终身学习之旅利:用FlowUs打造个性化学习记录知识库

计算机相关专业长期以来一直是热门选择,这主要得益于技术的快速发展和广泛的应用场景。随着AI技术的不断进步,这一趋势在未来几年内仍有望持续。以下是从不同角度对这个问题的分析: 从AI发展的角度: 技术革新:AI技术…

axios的底层ajax,XMLHttpRequest原理解释及使用方法

定义 ajax全称asychronous JavaScript and XML 意思是异步的 JavaScript和xml, 也就是通过javascript创建XMLHttpRequest (xhr)对象与服务器进行通信 步骤 创建实例对象,初始请求方法和url,设置监听器监听请求完成…

人工智能在音乐创作中的双刃剑:创新与挑战

AI在创造还是毁掉音乐? 简介 最近一个月,轮番上线的音乐大模型,一举将素人生产音乐的门槛降到了最低,并掀起了音乐圈会不会被AI彻底颠覆的讨论。短暂的兴奋后,AI产品的版权归属于谁,创意产业要如何在AI的阴…

经典FC游戏web模拟器--EmulatorJS

简介 EmulatorJS是一个基于JavaScript和Webassembly技术的虚拟环境的实现,可以在网页中运行各种经典FC游戏系统,支持任天堂、世嘉、雅达利等经典红白机。EmulatorJS的诞生使得诸如超级玛丽、坦克大战、魂斗罗等经典FC游戏能够以一种全新的方式回归。本文…

开源模型应用落地-FastAPI-助力模型交互-WebSocket篇(六)

一、前言 使用 FastAPI 可以帮助我们更简单高效地部署 AI 交互业务。FastAPI 提供了快速构建 API 的能力,开发者可以轻松地定义模型需要的输入和输出格式,并编写好相应的业务逻辑。 FastAPI 的异步高性能架构,可以有效支持大量并发的预测请求,为用户提供流畅的交互体验。此外,F…

动手学深度学习 --带你了解chatgpt,跟上AI发展!

本书旨在向读者交付有关深度学习的交互式学习体验。书中不仅阐述深度学习的算法原理,还演示它们的实现和运行。与传统图书不同,本书的每一节都是一个可以下载并运行的 Jupyter记事本,它将文字、公式、图像、代码和运行结果结合在了一起。此外…

【JS】纯web端使用ffmpeg实现的视频编辑器-视频合并

纯前端实现的视频合并 接上篇ffmpeg文章 【JS】纯web端使用ffmpeg实现的视频编辑器 这次主要添加了一个函数,实现了视频合并的操作。 static mergeArgs(timelineList) {const cmd []console.log(时间轴数据,timelineList)console.log("文件1",this.readD…

openGauss真的比PostgreSQL差了10年?

前不久写了MogDB针对PostgreSQL的兼容性文章,我在文中提到针对PostgreSQL而言,MogDB兼容性还是不错的,其中也给出了其中一个能源客户之前POC的迁移报告数据。 But很快我发现总有人回留言喷我,而且我发现每次喷的这帮人是根本不看文…

容器内存

一、容器内存概述 容器本质上还是一个进程,是一个被隔离和限制的进程。因此容器内存和进程内存在表现形式上其实是一样的,这块主要涉及三部分内容:RSS,page cache和swap这三部分,容器基于memory Cgroup对内存进行限制…

Xorbits inference操作实战

1.操作环境 序号软件版本备注1Windows1.版本:Windows 10 专业版2.版本号:21H23.操作系统内部版本:19044.18892Docker Desktop4.24.2 (124339)3WSLUbuntu 22.04 LTS4Python3.105CUDA12.16Dify0.6.6 Xorbits inference 是一个强大且通用的分布…

Python基础001

Python输出语句 print输出字符串 print("中国四大名著:","西游记|","三国演义|","红楼梦|","水浒传") print(6) print(1 1)Python输入语句 input函数 input() input("我的名字是:") p…

在非 antd pro 项目中使用 umi OpenAPI

大家好,我是松柏。自从跟着鱼皮哥使用了ant design pro中的OpenAPI插件之后,我已经无法忍受自己写请求后端接口的方法了,所以这篇文章记录一下如何在非ant design pro项目中使用OpenAPI。 安装依赖 首先我们需要安装包umijs/openapi&#x…

java面试课程-SpringIOC部分源码解析

1.SpringIOC的refresh源码解析 核心: 核心使用的是: 需要完成配置类的解析,各种BeanFactoryProcessor的注册。还有写国际化配置的初始化。Web容器的内部构造。 上面几个方法是refresh方法的内容。注意可以与applicationContext里的内容一起…

Profibus DP主站转Modbus网关连接智能化电表通讯

Profibus DP主站转Modbus网关(XD-MDPBM20),是实现不同工业通信协议之间互联互通的设备,主要将Profibus DP协议转换为Modbus协议,实现数据的双向传输。通过Profibus DP主站转Modbus网关(XD-MDPBM20&#xff…

大Excel表格76M,电脑16G内存打不开,内存利用率100%虚拟内存占用16G还是卡死提示内存不足,如何才能查看里面内容?

环境: Excel2016 问题描述: 大Excel表格76M,电脑16G内存打不开,内存利用率100%虚拟内存占用16G还是卡死提示内存不足,如何才能查看里面内容? 解决方案: 遇到这种情况,说明Excel文件非常大,超出了你当前计算机配置的处理能力。以下是一些解决方法,帮助你尝试打开或…

代码随想录-Day45

198. 打家劫舍 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个…

编译原理2

推导和短语 推导 推导过程中,每一步推导都是对句型的 最右非终结符 进行替换,最右推导(规范推导); 短语 用 β 替换 A,则 β 就是 关于A 的一个短语; 直接短语是短语范围内的一步推导; 直接短语可能不…

基于python的随机森林回归预测+贝叶斯优化超参数前后训练效果对比

目录 1.导入必要的库 2.导入数据与数据预处理 3.查看数据分布 4.特征选择 5.模型建立与训练 6.训练集预测结果 7.模型评估 8.预测新数据 9.贝叶斯优化超参数 1.导入必要的库 # 导入所需的库 from sklearn.model_selection import cross_val_score import pandas as …

Sentinel实现区分来源

要区分来源就要写代码实现RequestOriginParser接口 ,注意是要实现com.alibaba.csp.sentinel.adapter.servlet.callback.RequestOriginParser 接口,别搞错接口了。 MyRequestOriginParser.java package com.codex.terry.sentinel.origin;import com.ali…

STM32mp157aaa按键中断实验

效果图&#xff1a; 源码&#xff1a; #include "key.h" void hal_key1_rcc_gpio_init() {// 使能GPIOF组RCC->MP_AHB4ENSETR | (0x1 << 5);// 设置引脚位输入模式GPIOF->MODER & (~(0X3 << 18));GPIOF->MODER & (~(0X3 << 16))…