深度学习一些感受

2023-05-16

写篇文章理一理。
最近在搞文字识别,算是第一个比较正式的深度学习项目,连带看了一些文章。混淆了好多次。先记下目前对深度学习的一些理解。

首先是特征提取器。
目前深度学习应用在CV(计算机视觉)和NLP(自然语言处理)领域。

CV领域的特征提取器主要是CNN的各种变体。例如vgg,resnet,inceptionnet,mobilenet 之类的。别的不太清楚了。vgg没怎么看,resnet主要是残差连接模块能让网络更深。以前网络深的话就会引起梯度爆炸和梯度消失,为了解决这个问题之前也搞过归一化和relu之类的办法。现在再加上resnet效果更好一些。inceptionnet也没怎么看。mobilenet里面有很多一维的卷积,看过但是忘了,主要是轻便的一个网络,效果也不错,但还比不上resnet。
CV处理的问题大概就是 图像分类,目标检测,图像分割。而这些问题的解决通常是CNN的一些变体提取特征然后再加上一些自己设计的结构,就像处理结构型数据,不过那种数据是特征已经有了,当然也可以基于已有的特征继续提取新特征,而所谓的线性模型,log模型之类的就可以看做深度学习里设计的结构。比如FPN融合特征,字符级特征,单词级特征,全局特征融合之类的。图像分类任务我只弄过Alexnet,其余的不太了解; 目标检测任务主要有一个yolo系列和mask-crnn系列。maskcrnn后面又有fastercrnn等,然后一个指标就看iou之类的。当时看一个textfusenet的网络用到了fastercrnn的一部分。图像分割里面,语义分割的话我知道一个Unet,FCN,还有一些别的但是忘了,当时有个小伙伴想用我的卡打比赛,帮他调参的时候看了一下,到时候接触了具体的项目再看吧。

NLP的特征提取器一开始主要是RNN的各种变体,例如LSTM,用循环网络的原因主要是处理的数据是语言嘛,自然前后文有紧密关系。这么看的话其实RNN可以用于任何序列数据集,例如音频之类的,貌似已经有些研究,不太了解。而之前的传统的处理序列的方法我就只知道ARMA模型。群里有个小伙伴理解马尔科夫链是RNN的前身,这个我可以再想想。这样就把以前学过的统计学的东西和深度学习串起来了,哈哈。

后来又有了transformer。transformer不能说是专门的NLP的特征处理器。他主要是基于一个注意力机制。由于他一开始有一个位置编码,如果把图像的像素坐标能够合适的编码,那也可以处理图像。但是他处理的数据我感觉没有变化,都是序列和矩阵,但这个思想是独一的,所以我个人感觉把它和RNN,CNN放在一起有点不太合适。他也有很多变体,但我目前还没详细看。

当然,有一些任务都是多个领域的算法都要用的。比如我这个文字识别这块。首先要有一个文字检测确定位置,那目前常用的用的就是DBnet,然后就要矫正一下,因为文字有可能是歪的,用的有仿射变换,透视变换,TPS变换等等。然后就是识别,识别的话,一开始CNN提取特征,然后LSTM ,这个就是最简单的 CRNN了,NLP的任务貌似一般都是以编码解码器(seq2seq)的结构去做的,这里也采用了这个结构。其中CNN是编码器,RNN是解码器。后续改进的网络都是这个结构,只是把CNN改善一下成resnet或者把RNN改善一下加个注意力机制之类的。我一开始用的是ASTER,他是一个包含了矫正和识别的网络,矫正用的是TPS+STN 识别一开始也是resnet,然后是解码器,用了注意力机制,束搜索之类的。后续加入transformer的改进貌似都是把RNN部分换成transformer,CNN部分都没怎么变的感觉。
最近看到了TrOCR,用的是DEIT/BEIT和BERT。可以瞅瞅。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

深度学习一些感受 的相关文章

  • 面向对象模块和包

    文章目录 1 1 模块1 2 模块的使用2 包 1 1 模块 参考链接 xff1a Python 面向对象 模块和包 来源 xff1a CSDN Python面向对象 模块和包 来源 xff1a CSDN 概念 xff1a 每一个以py为拓
  • SUNDIALS库的编译和使用

    SUNDIALS库的编译和使用 1 简介 SUNDIALS SUite of Nonlinear and DIfferential ALgebraic equation Solvers 是由美国劳伦斯利福摩尔国立实验室 xff08 Lawr
  • 【ing】在Linux虚拟机上安装Sundials库(图文)

    1 Sundials库下载 Sundials下载地址 2 具体步骤 2 1 下载sundials 2 2 0 本次尝试选择sundials 2 2 0进行安装 Sundials文件内容如下 xff1a 2 2 创建安装目录 安装目录名称为
  • 基于docker部署Prometheus

    文章目录 基于Docker搭建Prometheusgitee 介绍Prometheus一 安装运行Prometheus docker版 部署Prometheus1 安装docker联网状态下阿里云离线安装包下载2 下载镜像包3 启动node
  • 程序设计思维与实践 Week11 作业 E 选做题11-1 东东与 ATM

    题目描述 xff1a 一家银行计划安装一台用于提取现金的机器 机器能够按要求的现金量发送适当的账单 机器使用正好N种不同的面额钞票 xff0c 例如D k xff0c k 61 1 2 N xff0c 并且对于每种面额D k xff0c 机
  • kubectl edit

    文章目录 kubectl edit官方文档语法示例 kubectl edit 官方文档 使用默认编辑器 编辑服务器上定义的资源 使用命令行工具获取的任何资源都可以使用edit命令编辑 edit命令会打开使用KUBE EDITOR xff0c
  • kubectl exec

    文章目录 kubectl exec通过bash获得pod中某个容器的TTY xff0c 相当于登录容器 命令行 创建一个test文件 xff1a kubectl exec exec命令同样类似于docker的exec命令 xff0c 为在一
  • kubectl describe

    文章目录 describe语法选项 示例描述一个node详细信息描述一个pod描述calico yaml中的资源类型和名称指定的pod描述所有的pod描述所有包含label k8s app 61 calico kube controller
  • k8s自动化安装脚本(kubeadm-1.21.1)

    文章目录 介绍软件架构安装教程更新内容2023 02 102022 10 202022 08 06准备部署包 操作步骤环境准备结构备注 解压部署包修改host文件初始化环境验证ansible配置 安装k8s集群登录master的节点添加no
  • Shell——docker启动yapi

    文章目录 脚本简介脚本注解执行方式脚本内容 脚本简介 基于运维统一脚本中 17 平台管理下的Yapi管理平台部署系统版本Centos7docker环境 脚本注解 该脚本快速部署yapi平台 xff0c 已通过docker commit把对应
  • Shell——查看基础信息脚本

    文章目录 脚本简介脚本注解安装方式执行方式执行结果 脚本内容新版本旧版本 脚本简介 基于运维统一脚本中 xff0c 19 脚本安装下的检查服务器脚本安装使用yum安装 yum仓库 xff0c 系统版本Centos7 脚本注解 该脚本为了快速
  • k8s自动化安装脚本(kubeadm-1.23.7)

    文章目录 介绍软件架构版本介绍更新内容2023 02 192023 02 152023 02 142023 02 102022 10 202022 08 06准备部署包 操作步骤环境准备结构备注 解压部署包修改host文件脚本使用方式初始化
  • 在VS code中打开网页预览

    在VS code中打开网页预览 在平时进行前端设计的时候 xff0c 你是否会因为无法实时观察到网页的变化而苦恼 xff0c 每一次都要重新打开html文件的过程过于繁琐 xff0c 现在就有一种新的方式能够让你在coding的时候实时观察
  • 最小生成树+思维 扩散(洛谷 P1661)

    扩散 题目描述 一个点每过一个单位时间就会向四个方向扩散一个距离 xff0c 如图 图略 两个点a b连通 xff0c 记作e a b 当且仅当a b的扩散区域有公共部分 连通块的定义是块内的任意两个点u v都必定存在路径e u a0 e
  • C语言解决百钱买百鸡问题

    百钱买百鸡问题 穷举法举例 求解 百钱买百鸡 问题 xff1a 公鸡每只5钱 xff0c 母鸡每只3钱 xff0c 小鸡3只1钱 求解思路 xff1a 设公鸡数为x xff0c 母鸡数为y xff0c 小鸡数为z xff0c 则可以得到下面
  • 程序设计思维与实践 Week12 作业 C 必做题 - 3

    题目描述 xff1a 东东每个学期都会去寝室接受扫楼的任务 xff0c 并清点每个寝室的人数 每个寝室里面有ai个人 1 lt 61 i lt 61 n 从第i到第j个宿舍一共有sum i j 61 a i 43 43 a j 个人 这让宿
  • VMware虚拟机解决空间不足,增加磁盘空间(磁盘扩容)

    在使用VMware进行linux学习过程中有时会出现磁盘空间不足的情况 xff0c 但是之前一直是只要磁盘空间不足就直接重装系统 xff0c 持续一段时间后感觉计算机科班出生的人这样做有点侮辱 xff0c 所以就静心学习了扩充磁盘的过程 x
  • Visual Studio Code + PyQt5环境搭建

    文章目录 x1f34e 前言 x1f34e 1 PyQt5工具包安装 x1f34e 2 Visual Studio Code配置 x1f34e 3 Visual Studio Code里使用PyQt5 x1f34e 4 总结 x1f34e
  • 字符串

    题目描述 一天蒜头君得到一个字符串 xff0c 他把字符串的第 i 个字符串变成 i 个 例如字符串为 span style color c7254e 34 abc 34 span xff0c 蒜头君把字符串变成了 span style c

随机推荐