【算法面经】九维数据CV算法工程师一面

来源:投稿 作者:LSC
编辑:学姐

1.详细聊项目

2.模型的常见优化方法

  • (1)更换模型backbone等结构

  • (2)数据准确

  • (3)平衡数据解决样本不均衡

  • (4)模型集成等

  • (5)根据loss下降的趋势调整参数

3.介绍一下Transformer的结构,推导一下一个标准的Transformer block有多少参数

input: -S sentences -N tokens at maximum -x dimention in the word embedding -m number of heads

(1)自注意力层:该层用于计算输入序列中每个位置的注意力权重,以便在不同位置捕捉不同关系。它包括多个注意力头,每个头都有自己的权重矩阵。参数数量如下:

  • 查询权重矩阵(Q):形状为(x, x)。

  • 键权重矩阵(K):形状为(x, x)。

  • 值权重矩阵(V):形状为(x, x)。

  • 输出权重矩阵(O):形状为(x, x)。

(2)前馈神经网络:这是一个全连接的前馈神经网络层,用于每个位置的特征转换。参数数量如下:

  • 第一个全连接层的权重矩阵:形状为(x, y),其中y是隐藏层的维度。

  • 第一个全连接层的偏差项:形状为(y)。

  • 第二个全连接层的权重矩阵:形状为(y, x)。

  • 第二个全连接层的偏差项:形状为(x)。

(3)Layer Normalization:该层包括用于每个子层的比例参数和偏差参数。这两个参数的形状取决于输入维度。

(4)残差连接:残差连接将输入与子层的输出相加,以防止梯度消失问题。

(5)Layer Normalization:另一层层标准化用于整个Transformer块的输出。

  • 针对自注意力层:假设有m个注意力头,x是输入维度,每个头的权重矩阵数量为4个(Q、K、V、O)。因此,自注意力层的参数数量为4 * m * x * x。

  • 针对前馈神经网络:前馈神经网络的参数数量取决于隐藏层的维度y和输入维度x。每个前馈神经网络层包括两个权重矩阵和两个偏差项,所以参数数量为2 * x * y + 2 * y。

  • 层标准化和残差连接:这两部分的参数数量相对较小,取决于输入维度x。

因此,一个标准的Transformer块的总参数数量可以表示为:

4 * m * x * x + 2 * x * y + 2 * y + 少量参数(层标准化和残差连接的参数)

4.场景题:

现在有一百万张房屋外部的图片,每张图片可能既有一些日常生活和别的场景中常见的物体比如沙滩椅,长凳,泳池,草坪等,也有很多别的场景不常见或有一定背景的人才能识别的物体比如排水管,水电表,房檐,地基等。总共的物体类别大概有50~100类。需求是设计一个算法能够较为准确的在房屋外部图片上定位这些物体。

分别处理,对于常见的物体可以使用预训练模型进行微调,或者使用目标检测模型重新训练学习,因为图片数量充足,对于不常见的图像使用预训练模型进行微调。所有的模型结构尽可能使用相同的,但是权重参数不一样,需要哪个就导入其权重。

5.场景题:

假如训练集中只有图片所包含的所有类别,但是没有相应类别的位置(bbox),那么需要先设计一个解决方法给这些类别找位置,训练集才能拿来用。请列举一些实际的办法。

关注下方《学姐带你玩AI》🚀🚀🚀

算法工程师万能简历公式+200多个简历模板(中英文)

回复“简历”轻松获取!

码字不易,欢迎大家点赞评论收藏!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Chappyz 生态迎重磅利好:多链应用程序启动、100% 收入共享计划开启

“首款由人工智能驱动的社区建设工具 Chappyz,即将在 12 月 21 日推出全新的多链平台并向社区开放,同时制定了生态收入 100% 向 Stakers 共享的计划,这不仅是 Chappyz 生态的一个全新进展,也是 Chappyz 生态发展的重磅利好。” 构…

0137 - 跳转控制语句 break、continue、return

文章目录 1 break1.1 基本介绍1.2 基本语法1.3 注意事项和细节说明 2 continue2.1 基本介绍2.2 基本语法 3 return 1 break 1.1 基本介绍 break 语句用于终止某个语句块的执行,一般使用在 switch 或者循环[for , while , do-while]中 1.2 基本语法 { ……break…

新时代体育场馆的未来之路——气膜体育馆

近年来,我国正全面贯彻实施全民健身国家战略,秉持“发展群众体育,服务健康中国”的理念,深入推动群众参与的体育活动,努力实现全民健身与全民健康的深度融合发展。在这一大潮中,体育场馆建设成为业内的一项…

tensorflow入门

一、怎样入手TensorFlow TensorFlow是一个用于机器学习和深度学习的开源框架,它提供了一种灵活的方式来构建和训练神经网络模型。以下是一些TensorFlow框架入门的建议: 学习Python语言:TensorFlow主要使用Python语言进行开发,因此…

欧美电商平台Depop如何入驻?

对标美国二手闲鱼平台Mercia,PoshMark、东南亚Etsy,Depop是英国的一个面向创意人群的二手时尚市场,类似于Instagram,但更专注于买卖二手服装、配饰和艺术品。 有研究显示,由于购物预算减少,高达65%的受访者表示乐意在圣诞节购买或收到二手礼…

JDK bug:ciObjectFactory::create_new_metadata:原因完全解析

文章目录 1、问题2.详细日志2.关键日志3.结论4.JDK:bug最终bug链接: 京东遇到过类似bug各位大佬如果有更详细的解答可以留言。 1、问题 服务不通,接口404,查看日志有一下截图,还有一个更详细的日志 2.详细日志 # #…

AIGC实战——使用变分自编码器生成面部图像

AIGC实战——使用变分自编码 - 器生成面部图像 0. 前言1. 数据集分析2. 训练变分自编码器2.1 变分自编码器架构2.2 变分自编码器分析3. 生成新的面部图像4. 潜空间算术5. 人脸变换小结系列链接0. 前言 在自编码器和变分自编码器上,我们都仅使用具有两个维度的潜空间。这有助于…

cpp_04_类_对象_this指针_常对象_常(成员)函数

1 类 1.1 类的定义 类的作用是抽象事物(抽取事物特征)的规则。 类的外化表现是用户自定义的复合数据类型(包括成员变量、成员函数): 成员变量用于表达事物的属性,成员函数用于表达事物的行为。 类的表现…

undefined 和 null 有什么区别?

1、先看二者的相似处 (1)都属于JavaScript的7种基本类型 let primitiveTypes [string,number,null,undefined,boolean,symbol, bigint]; (2)都属于虚值 通过 Boolean(value) 或 !!value 转换为布尔值,且值都为fal…

codeforces D. Array Collapse

DP一生之敌 learn from AC-Panda and codeforces’s Tutorial 思路 d p [ i ] dp[i] dp[i] 表示以 a [ i ] a[i] a[i] 结尾的方案数, s u m [ i ] sum[i] sum[i] 表示 ∑ j 1 i d p j \sum\limits_{j1}^idp_j j1∑i​dpj​ 。对于 d p [ i ] dp[i] dp[i] 当 …

MySQL- SELECT ... FOR UPDATE语句

基本介绍 SELECT ... FOR UPDATE 是 SQL 语言中的一种语句,用于在数据库事务处理中控制并发访问。这种语句通常用在需要对数据库中的记录进行更新操作的场景中。下面是对 SELECT ... FOR UPDATE 的详细介绍: 用途:SELECT ... FOR UPDATE 用于…

智慧食堂餐卡充值文件生成器使用说明

智慧食堂餐卡充值文件生成器 下载地址: https://download.csdn.net/download/boysoft2002/88646277 或者百度网盘下载: https://pan.baidu.com/s/16cxOa5aq0CU0T0xOr2A7-A 操作使用说明 一、文件结构 下载.rar文件后,释放到非系统盘符的…

解决mp4视频无法拖动进度条的问题

现象: 海康威视的监控摄像头保存的视频,,mp4格式, 大小1G。用PotPlayer播放器进行播放, 不拖动进度条的话可以正常播放, 但拖动进度条后, 视频无法正常播放, 在 PotPlayer 中的表现就是只有进度条在走&…

TensorFlow(2):Windows安装TensorFlow

1 安装python环境 这一步请自行安装,这边不做介绍。 2 安装anaconda 下载路径:Index of /,用户自行选择自己的需要的版本。 3 环境配置 3.1 anaconda环境配置 找到设置,点击系统->系统信息->高级系统设置->环境变量…

ThinkPad E550c

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:…

基于YOLOv5的吸烟检测系统设计与实现

一、项目背景 吸烟检测作为保障公共健康和环境安全的重要任务之一,一直备受关注。传统的吸烟检测方法往往依赖人工判断,存在准确性低和实时性差的问题。为了解决这些问题,本项目基于深度学习技术进行了吸烟检测系统的设计与实现,…

buuctf-Misc 题目解答分解91-93

91.[SUCTF2018]followme 下载完就是一个流量包 ,用wireshark 打开 直接导出 http对象 这里面 有很多的这样的文件 里面都是参数 直接搜索 关键字 suctf grep -r "SUCTF" 得到flag SUCTF{password_is_not_weak} 92.[MRCTF2020]CyberPunk 用notepad 打开…

【Ehcache技术专题】「入门到精通」带你一起从零基础进行分析和开发Ehcache框架的实战指南(5-检索开发)

系列文章目录 本系列课程主要针对于Ehcache缓存框架功能的开发实践全流程技术指南! 第一节:Ehcache缓存框架的基本概念和简介第二节:Ehcache缓存框架的配置分析和说明第三节:Ehcache缓存框架的缓存方式的探索第四节:E…

隐藏通信隧道技术——防御SSH隧道攻击的思路

隐藏通信隧道技术——防御SSH隧道攻击的思路 ​ 在内网中建立一个稳定、可靠的数据通道,对渗透测试工作来说具有重要的意义。应用层的隧道通信技术主要利用应用软件提供的端口来发送数据。常用的隧道协议有SSH、HTTP/HTTPS和DNS。 SSH协议 在一般情况下&#xff…

PostgresSQL数据库中分区和分表的区别以及PostgresSQL创建表分区分表示例

1.分区分表理解 数据库分区和分表都是数据库中常用的数据分散存储技术,但它们的实现方式和应用场景有所不同。 分表:将一个大的表拆分成多个小的表,每个子表存储一部分数据。分表可以减轻单个表的数据量,提高查询效率&#xff0c…