当前位置: 首页 > news >正文

深度学习,计算机视觉任务

目录

计算机视觉任务

1.K近邻算法

2.得分函数

3.损失函数的作用

4.向前传播整体流程

5.反向传播计算方法

计算机视觉任务

机器学习的流程

  1. 数据获取

  2. 特征工程

  3. 建立模型

  4. 评估与应用

计算机视觉

图像表示:计算机眼中的图像,而一张图片被表示为三维数组的形式,每个像素的值从0到255。

计算机视觉面临的挑战:照射角度、形状改变、部分遮蔽和背景混入

1.K近邻算法

K(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。该方法的思路是:在特征空间中,如果一个样本附近的k个最近(即特征空间中最邻近)样本的大多数属于某一个类别,则该样本也属于这个类别。

K近邻计算流程

  1. 计算已知类型数据集中的点与当前点的距离

  2. 按照距离依次排序

  3. 选取与当前点距离最小的K个点

  4. 确定前K个点所在的类别的出现概率

  5. 返回前K个点出现频率最高的类别作为当前点预测分类

数据库样例:CIFAR-10

数据库简介:

10类标签、50000个训练数据、10000个测试数据、大小均为32*32

图像的距离计算方式实际上与矩阵的加减法很相似。

K近邻的局限性:不能用来图像分类,因为背景主导是一个最大的问题,我们关注的是主体(主要成分)

2.得分函数

根据得分函数,计算出每个输入的类别得分如下:我们只有类别的得分并不能评判分类效果,损失函数便是用来评估分类效果的好坏程度。

线性函数:从输入--->输出的映射

f(x, W) = Wx

得分函数公式是一种用来描述某种情况下得分的计算方式,一般用于评分、评价等方面。得分函数公式通常由多个参数组成,每个参数代表一种影响因素,通过对这些参数进行加权运算得出最终得分。

3.损失函数的作用

损失函数(loss function)是将随机事件或其有关随机变量的取值映射为非负实数的函数。

在机器学习中,损失函数用于度量模型预测结果和真实结果之间的差距,通常是越小越好。比如在回归问题中,可以使用均方误差(MSE)和平均绝对误差(MAE)等作为损失函数;在分类问题中,可以用交叉熵(CrossEntropy)作为损失函数,或者用二分类问题的二元交叉熵(BCELoss)等。

矩阵来源是优化而来的结果。

神经网络的作用是通过适合的矩阵Wi来处理相应的问题。

uTools_1688799265492

做不同任务就是损失函数的不同。

损失函数其实有很多,我们需要的是一个最贴近实际的函数形式。

损失函数

这里的1相当于是一个近似值的估计。

uTools_1688799735799

虽然这两个模型的损失函数值相同,模型A考虑的是局部,模型B考虑的是全局,它们两的侧重方向是不一样的,只是结果恰好相同而已。

损失函数=数据损失+正则化惩罚项(R(W))

我们总是希望模型不要太复杂,过拟合的模型是没有用的。

uTools_1688802832405

4.向前传播整体流程

正向传播算法,也叫前向传播算法,顾名思义,是由前往后进行的一个算法。

Softmax分类器

现在我们得到的是一个输入的得分值,但如果给我一个概率值岂不更好!

如何把一个得分值转换成一个慨率值呢?

这和数学建模有共同之处,往往能除以一个相近的函数就能得到一个概率值。

uTools_1688803136943

归一化和计算损失值

向前传播:

uTools_1688803485728

5.反向传播计算方法

举一个例子:

uTools_1688803749742

它的函数式是:f(x,y,z) = (x+y)z

q=x+y f=q*z

uTools_1688803849371

想要求的值:f对x的偏导,f对y求偏导,f对z求偏导。

这就是我们在高数中学到的链式法则,梯度是一步一步传播的

uTools_1688804086446

我们所看到的绿色线就是我们上一部分向前传播计算,红色的部分会把上一次的梯度携带到下一层的反向传播的计算中。

反向传播算法,简称BP算法,适合于多层神经元网络的一种学习算法,它建立在梯度下降法的基础上。BP网络的输入输出关系实质上是一种映射关系:一个n输入m输出的BP神经网络所完成的功能是从n维欧氏空间向m维欧氏空间中一有限域的连续映射,这一映射具有高度非线性。它的信息处理能力来源于简单非线性函数的多次复合,因此具有很强的函数复现能力。这是BP算法得以应用的基础。

 

相关文章:

深度学习,计算机视觉任务

目录 计算机视觉任务 1.K近邻算法 2.得分函数 3.损失函数的作用 4.向前传播整体流程 5.反向传播计算方法 计算机视觉任务 机器学习的流程: 数据获取 特征工程 建立模型 评估与应用 计算机视觉: 图像表示:计算机眼中的图像&#…...

使用 Docker 部署 canal 服务实现MySQL和ES实时同步

文章目录 0. 环境介绍0. 前置步骤1. 安装Kibana和Elasticsearch2. 安装Canal和Canal Adapter2.1 修改数据库配置2.1.1 修改配置2.1.2 验证mysql binlog配置2.1.3 查看日志文件2.1.4 用JDBC代码插入数据库 2.2 安装Canal Server2.3 安装Canal Adapter修改两处配置文件配置文件取…...

const易错详解

const对比 常量指针 int b; (1)const int *a &b;//常量指针(2)int const *a &b; //常量指针常量指针:指向的变量值不能被修改 ![常量指针](https://img-blog.csdnimg.cn/9d795b11eb6d484297ea7cbead28463f.png 指针常量 int b; int* const a&b;…...

网络安全—黑客技术【自学】

一、黑客是什么 原是指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。但后来,黑客一词已被用于泛指那些专门利用电脑网络搞破坏或者恶作剧的家伙。 二、学习黑客技术的原因 其实,网络信息空间安全已经成为海陆空之…...

作为数据产品经理的一天

数据产品经理作为这两年大数据行业的热门职业,经常有小伙伴会问我数据产品经理是做什么的,给大家简单讲下作为数据产品经理的一天是怎么度过得,算是一篇记录文吧,看完或许大家对这个职业的了解会更深入一些。 01 早上10点&#…...

Rust 编程小技巧摘选(7)

Rust 编程小技巧(7) 1. 结构体 Display trait 结构体的两种形式,对应的成员取法不同; 前者用 self.成员变量名 self.x, self.y;后者用 self.成员索引号 self.0, self.1, self.2, ...... use std::fmt::Display; use std::fmt::Result; us…...

爬虫程序中使用爬虫ip的优势

作为一名爬虫技术员,我发现在爬虫程序中使用代理IP可以提升爬取效率和匿名性。今天,我就来详细讲解一下代理IP在爬虫程序中的工作原理及应用。 首先,我们来了解一下代理IP在爬虫程序中的工作原理。当我们使用爬虫程序进行数据采集时&#xf…...

json-server的入门

由于前端开发的时候,需要向后端请求数据,有的时候后端还没有准备好,所以需要使用一些简单的静态数据,但是我们更加希望能够模拟请求以及请求回来的过程,这个时候就需要使用json-server Json-Server的介绍 json-server…...

uniapp调查问卷评价功能

我本来用的是uniapp官方提供的组件uni-rate组件&#xff0c;但修改成我想要的样式有点麻烦&#xff0c;于是我就自己手写一个&#xff0c;比用组件简单一点&#xff1b; dom结构 <text class"formTit must">请您对本次活动进行评价</text> <view cl…...

Centos Linux带进度条复制(同步)文件和文件夹

centos linux 内建文件复制/备份命令 rsync 目的&#xff1a;我想从一个磁盘复制一堆文件到另一个磁盘&#xff0c;不希望改变文件的属性&#xff08;尤其是所有者、还有创建时间、修改时间&#xff09;&#xff0c;最好还得能给我显示进度条。文件太多了&#xff0c;好几百GB…...

从数据仓库到数据结构:数据架构的演变之路

在上个世纪&#xff0c;从电子商务巨头到医疗服务机构和政府部门&#xff0c;数据已成为每家组织的生命线。有效地收集和管理这些数据可以为组织提供宝贵的洞察力&#xff0c;以帮助决策&#xff0c;然而这是一项艰巨的任务。 尽管数据很重要&#xff0c;但CIOinsight声称&…...

kafka-2.12使用记录

kafka-2.12使用记录 安装kafka 2.12版本 下载安装包 根据你的系统下载rpm /deb /zip包等等, 这里我使用的是rpm包 安装命令 rpm -ivh kafka-2.12-1.nfs.x86_64.rpm启动内置Zookeeper 以下命令要写在同一行上 /opt/kafka-2.12/bin/zookeeper-server-start.sh /opt/kafka-2…...

C++笔记之将定时器加入向量并设置定时器的ID为i

C笔记之将定时器加入向量并设置定时器的ID为i code review! 文章目录 C笔记之将定时器加入向量并设置定时器的ID为i关于代码中的void operator()() 运行 代码 #include <chrono> #include <iostream> #include <thread> #include <vector>// 定义定时…...

将一组元素四舍五入到指定精度(小数位数)numpy.around()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 将一组元素四舍五入 到指定精度(小数位数) numpy.around() [太阳]选择题 关于以下代码说法错误的一项是? import numpy as np anp.array([21.3,9.67,8.5, -1.13, -2.67]) print(【显示】a为…...

tinyint这个值在MySQL中的值有哪些

在MySQL中&#xff0c;TINYINT是一种整数数据类型&#xff0c;用于存储小范围的整数值。它占用1个字节的存储空间&#xff0c;可以表示的值范围是从-128到127&#xff08;有符号&#xff09;或者从0到255&#xff08;无符号&#xff09;。 以下是在MySQL中使用TINYINT数据类型…...

JVM 内存结构

1、方法区&#xff08;线程共享&#xff09; 存储静态变量(静态方法、变量、代码块)、常量池、类信息 2、堆信息&#xff08;线程共享&#xff09; 存储实例对象&#xff0c;例如 new 出来的对象信息 A a1 new A() 3、虚拟机栈&#xff08;线程隔离&#xff09; 每个线程的都有…...

基于百度语音识别API智能语音识别和字幕推荐系统——深度学习算法应用(含全部工程源码)+测试数据集

目录 前言总体设计系统整体结构图系统流程图 运行环境模块实现1. 数据预处理2. 翻译3. 格式转换4. 音频切割5. 语音识别6. 文本切割7. main函数 系统测试工程源代码下载其它资料下载 前言 本项目基于百度语音识别API&#xff0c;结合了语音识别、视频转换音频识别以及语句停顿…...

数字万用表测量基础知识--使用DMM测量电流

概览 DMM&#xff08;即数字万用表&#xff09;是一种电气测试和测量仪器&#xff0c;可测量直流和交流信号的电压、电流和电阻。本文介绍如何正确使用和理解数字万用表(DMM)。 使用DMM测量电流 另一个常见的测量功能是直流和交流电流测量。电压是通过与电路并联进行测量&am…...

【BASH】回顾与知识点梳理(二十)

【BASH】回顾与知识点梳理 二十 二十. 十六至十九章知识点总结及练习20.1 总结20.2 练习 该系列目录 --> 【BASH】回顾与知识点梳理&#xff08;目录&#xff09; 二十. 十六至十九章知识点总结及练习 20.1 总结 shell script 是利用 shell 的功能所写的一个『程序 (prog…...

Arduino驱动SGP40空气质量传感器(气体传感器篇)

目录 1、传感器特性 2、硬件原理图 3、控制器和传感器连线图 4、驱动程序 SGP40空气质量传感器是业内知名的瑞士公司Sensirion推出的新一代SGP40数字VOC传感器芯片。基于Sensirion的CMOSens技术,SGP40在单个芯片上提供了完整的传感器系统,包括温控微加热板和室内空气质量…...

生产环境部署 AI Agent 的最佳实践

生产环境部署 AI Agent 的最佳实践 第一部分 生产AI Agent的爆发与部署困境深度剖析 (本部分约12000字) 1.1 核心概念:从“玩具Agent”到“生产级Agent”的定义边界 1.1.1 什么是广义的AI Agent? 在过去两年里,“AI Agent”无疑是大模型(LLMs)生态系统中最炙手可热的…...

ATCODER ABC C题解炼

这&#xff0c;是一个采用C精灵库编写的程序&#xff0c;它画了一幅漂亮的图形&#xff1a; 复制代码 #include "sprites.h" //包含C精灵库 Sprite turtle; //建立角色叫turtle void draw(int d){for(int i0;i<5;i)turtle.fd(d).left(72); } int main(){ …...

53、竞态条件和同步---------多线程、竟态条件和同步

竞态条件和同步线程是程序执行的最小单位&#xff0c;一个进程可以包含多个线程&#xff0c;多个线程共享进程的资源&#xff08;如内存空间&#xff09;。在多线程环境中&#xff0c;线程之间的并发执行可能导致对共享资源的竞争。 竞态条件&#xff08;Race Condition&#x…...

硬件工程师的调试日常与职场趣事

1. 硬件工程师的日常&#xff1a;那些让人哭笑不得的瞬间 作为一名从业十年的硬件工程师&#xff0c;我见过太多同行们面对电路板时那副欲哭无泪的表情。这个行业就是这样——充满了让人抓狂的瞬间&#xff0c;但也正是这些时刻&#xff0c;让我们这群"电路修理工"有…...

【typst-rs】greet.rs文件

以下是对greet.rs的详细解析。 use std::io::{self, Read};/// This is shown to users who just type typst the first time. #[rustfmt::skip] const GREETING: &str color_print::cstr!("\ <s>Welcome to Typst, we are glad to have you here!</> ❤…...

为什么你的API吞吐量卡在8k QPS?Span<T> + MemoryPool<T>组合拳让Kestrel直冲23k QPS(附压测报告)

第一章&#xff1a;为什么你的API吞吐量卡在8k QPS&#xff1f;Span<T> MemoryPool<T>组合拳让Kestrel直冲23k QPS&#xff08;附压测报告&#xff09;当默认 ASP.NET Core Web API 在 Kestrel 上稳定输出 8,000 QPS 时&#xff0c;瓶颈往往不在网络层或 CPU&…...

.NET 诊断技巧 | 日志框架原理、手写日志框架学习堪

一、 什么是 AI Skills&#xff1a;从工具级到框架级的演化 AI Skills&#xff08;AI 技能&#xff09; 的概念最早在 Claude Code 等前沿 Agent 实践中被强化。最初&#xff0c;Skills 被视为“工具级”的增强&#xff0c;如简单的文件读写或终端操作&#xff0c;方便用户快速…...

Nigate:Mac NTFS全功能读写解决方案——面向跨平台用户的高效文件交互指南

Nigate&#xff1a;Mac NTFS全功能读写解决方案——面向跨平台用户的高效文件交互指南 【免费下载链接】Free-NTFS-for-Mac Nigate: An open-source NTFS utility for Mac. It supports all Mac models (Intel and Apple Silicon), providing full read-write access, mounting…...

Shell应用手册(一) 4.常见Shell版本(bash、zsh、sh,运维主流bash详解)

在Linux/Unix系统中&#xff0c;Shell是用户与内核交互的桥梁&#xff0c;是执行命令、编写脚本的核心工具。对于运维工程师而言&#xff0c;熟练掌握Shell版本的特性与使用方法&#xff0c;是提升工作效率、实现自动化运维的基础。本文将先梳理最常见的3种Shell版本&#xff0…...

Python实战:5种常用窗函数在音频信号处理中的对比与应用

Python实战&#xff1a;5种常用窗函数在音频信号处理中的对比与应用 当你第一次用麦克风录制一段钢琴曲时&#xff0c;可能会发现频谱图上出现了许多"不该存在"的频率成分。这种现象在专业术语中被称为频谱泄漏&#xff0c;而解决它的关键工具就是窗函数。作为音频处…...