从 RetinaNet 浅度理解目标检测 「我一个做识别的,怎么就来做分割了呢?」 RetinaNet 是一个用于目标检测的结构较为简单的深度网络。它是在 Focal Loss 的文章里顺便提出来的,可见 Focal Loss for Dense Object Detection。这篇文章本身是在讨论巨量候选框正负样本不平衡导致的 loss 失衡问题,不过本文主要是想借 RetinaNet 来初步地探索深度学习中的目标检测模型套路。 2022-06-10 学习 #深度学习
Contrastive Learning 两篇 近期的重点主要在弱监督上,所以了解了很多弱监督、半监督、无监督的技术。Contrasitive Learning(下文简称 CL)算是一种无监督学习技术。 当前深度学习往往依赖于海量数据,当数据标记不完整时,按照不完整的程度可以将监督学习划分为多种类别: 完全监督:每个样本均有完整标签。 半监督:仅有一个子集的样本具有完整标签,补集无标签。 弱监督:所有样本的标签可能不完整、有错。 无监督:所有 2022-03-07 学习 #深度学习
在 2022 年,异步 Rust 将如何发展 本文第一部分翻译自 Async Rust in 2022 在大概一年前,异步工作组一块开始编写一份文档,去描述异步发展的愿景。在 2022 年,这份文档中的一些工作已经有所进展,根据这些进展,我们想修订一下这份文档。 使用 Rust 2024 编写 Issue 聚合器 想象一下,我们已经有了 2024 年的标准 Rust,你现在打算使用 Rust 编写你的第一个项目。平时工作时你用 Gith 2022-02-18 学习 #Rust
Grad-CAM 笔记 Global Average Pooling 为了提到CAM,首先要从这里说起。 在 Network in Network 这篇论文里,作者扔掉了分类任务中喜闻乐见的全连接层,转而替换为了一个全局的平均池化。 假设 Backbone 部分最终得到了一个 C×H×WC \times H \times WC×H×W 的特征。记有 NNN 类,NNN 不必 和 CCC 相等,全连接层有 N×(C×H× 2022-01-10 学习 #深度学习
Transformer 细节理解 解决什么 Transformer 解决的是 Sequence-to-Sequence 问题,笼统地讲是从一个输入的序列推理一个结果序列,例如 从问句推理答句。 从以往温度推理未来温度。 从题面推理代码。 我想特别提一下第三条,毕竟我很感兴趣。在 2022 年 2 月 1 号,DeepMind 使用钞能力(最多 41B 个参数的网络……)基于 Transformer 训练了一个从算法题面推理代 2021-11-21 学习 #深度学习
Ark Compiler Ark Compiler 一个简单的编译器,本科时几个人合作写的,起的名字比较好玩。 实现了 parser、lexer、AST、符号表,以及在此之上的简单类型检查、结构体、重载、指针等高阶特性,虽然比较简单但功能相对完整。不过其实应该算一个编译器前端,能够将 Pascal 语言编译成一种三地址中间码。 例:一个 gcd 算法(最大公约数),输入两个整数,输出它们的最大公约数。涉及到指针、函数、递 2021-10-28 Project #编译器 #C++ #Pascal
Rust小记 这些是我在使用Rust的过程中萌生的想法,也可能是遇到的问题。不必深究,仅图一乐。 GATs 这个问题是我在入门函数式时遇到的问题。 Rust对函数式的支持属于较好的一方,你能在大量的结构上找到map等操作。但是到目前为止,Rust并不是完全支持函数式编程,而问题之一就是GATs的草案至今还未落实到正式版。 The push for GATs stabilization | Rust Blog 2021-09-08 code #Rust
从图片复原高度信息 本篇文章主要解释如何从图片信息中恢复物体的三维高度信息,并借以巩固自己的知识。作为第一篇CV相关的东西,稍微玩玩。 反射与摄像机模型 在单一平行光源且无环境光的条件下,模型认为某面点p处的亮度与光源照度∣S⃗1∣|\vec S_1|∣S1∣、光源方向S⃗1\vec S_1S1、面法线N⃗(p)\vec N(p)N(p)、面反射度ρ(p)\rho(p)ρ(p)相关,满足公式 B(p)=ρ(p) 2021-07-20 学习 #CV