
算法
文章平均质量分 84
算法
abka
abka 阿布卡赫赫
展开
-
详解Transformer (Attention Is All You Need)
注意力(Attention)机制[2]由Bengio团队与2014年提出并在近年广泛的应用在深度学习中的各个领域,例如在计算机视觉方向用于捕捉图像上的感受野,或者NLP中用于定位关键token或者特征。谷歌团队近期提出的用于生成词向量的BERT[3]算法在NLP的11项任务中取得了效果的大幅提升,堪称2018年深度学习领域最振奋人心的消息。而BERT算法的最重要的部分便是本文中提出的Transformer的概念。转载 2022-10-27 23:54:59 · 1209 阅读 · 0 评论 -
新目标检测框架 | 基于改进的one-shot的目标检测
特别是使用一个度量学习模块,而不是经典的分类器,来计算来自新感兴趣的类的support image和query image的标记窗口之间的相似性。另一种方法如下图(b),LSTD框架选择利用来自新感兴趣的类的support样本来优化区域候选网络(RPN,即取代传统的滑动窗口方案)和基于深度学习的检测器,并期望原始检测流能够以有限的支持样本数量自适应地识别新类。相比之下,所提出的OSCD实现了C-RPN和C-Detector的条件目标检测,以更加关注支持类的对象,并过滤掉其他类的无关对象。转载 2022-09-16 10:18:59 · 523 阅读 · 0 评论 -
golang 两个slice/map 求交集、并集,交集放在pair对象,方便后续处理
上面的工具用来计算两个slice的补集,交集测试代码:原创 2022-07-07 12:05:28 · 2345 阅读 · 0 评论 -
缓存更新策略概览(Caching Strategies Overview)
缓存是一种用于更快数据检索的数据存储技术。从某种意义上说,它比从其主存储(如数据库)获取数据更快。为了实现这一点,我们通常缓存频繁请求或计算的数据。现在,让我们仔细看看可能需要考虑的不同缓存策略。请记住,每个应用程序的需求都是不同的,您应该据此选择缓存策略。旁路缓存 策略Cache-Aside Strategy(旁路缓存 策略)是使用最广泛的缓存策略之一。该策略背后的主要思想是,仅当应用程序请求对象时,才将对象存储在缓存中。 Cache-Aside(旁路缓存)的基本流程如下:Read-Through C原创 2022-07-06 11:48:01 · 920 阅读 · 0 评论 -
Dijkstra (1965) 信号量 demo使用 golang实现
Dijkstra (1965) 引入了信号量的概念 信号量是一个整数变量,可通过两个标准原子操作访问:等待(自旋锁,即停止阻塞并递减这些信号量)和信号量(即信号量计算它接收到的信号) 信号量是用于向进程发送共享资源状态信号的变量(信号量的值可以为 0,表示没有保存唤醒,或者如果有一个或多个唤醒处于未决状态,则为某个正值) 这是如何运作的? 如果资源不可用,则相应的信号量会阻塞任何等待该资源的进程 阻塞的进程被放入由信号量维护的进程队列中(避免忙等待!) 当进程释放资源时,它通过信号量发出信号原创 2022-05-20 10:49:38 · 299 阅读 · 0 评论 -
Quorum 机制(分布式系统)
Quorum机制,是一种分布式系统中常用的,用来保证数据冗余和最终一致性的投票算法,其主要数学思想来源于鸽巢原理。基于Quorum投票的冗余控制算法在有冗余数据的分布式存储系统当中,冗余数据对象会在不同的机器之间存放多份拷贝。但是同一时刻一个数据对象的多份拷贝只能用于读或者用于写。该算法可以保证同一份数据对象的多份拷贝不会被超过两个访问对象读写。算法来源于[Gifford, 1979][3][1]。 分布式系统中的每一份数据拷贝对象都被赋予一票。每一个读操作获得的票数必须大于最小读票数(r.原创 2022-03-02 10:44:22 · 3532 阅读 · 0 评论 -
最小的K个数
描述给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。数据范围:0\le k,n \le 100000≤k,n≤10000,数组中每个数的大小0 \le val \le 10000≤val≤1000要求:空间复杂度O(n)O(n),时间复杂度O(nlogn)O(nlogn)首先想到的是使用堆排序:这里使用arraylist模拟堆:import j...原创 2022-01-20 20:59:18 · 346 阅读 · 0 评论 -
Faiss:Facebook 开源的相似性搜索类库
Facebook 在今年 3 月份发布了 Facebook AI 相似性搜索(简称 Faiss)项目,该项目提供的类库可以从多媒体文档中快速搜索出相似的条目——这个场景下的挑战是基于查询的传统搜索引擎无法解决的。Facebook 人工智能实验室(FAIR)基于十亿级别的数据集构建了最近邻搜索算法的实现,这比之前介绍的已知文献中在 GPU 上实现的最先进且最快的 k-selection 算法还要快大约 8.5 倍,因此创造了新的记录,包括第一个基于十亿高维向量构建的 k 最近邻图。关于相似性搜索传统的原创 2021-12-09 12:40:25 · 885 阅读 · 0 评论 -
乘积量化(Product Quantization)
乘积量化1。简介 乘积量化(PQ)算法是和VLAD算法是由法国INRIA实验室一同提出来的,为的是加快图像的检索速度,所以它是一种检索算法,在矢量量化(Vector Quantization,VQ)的基础上发展而来,虽然PQ不算是新算法,但是这种思想还是挺有用处的,本文没有添加公式。 它原文中是接在VLAD算法后面,假设我们使用VLAD算法获得了1M的图像表达向量,向量的维度为D=128,则对于一幅查询图像来说,我们需要计算1M个余弦距离,这样实时性就比较差。所以如何加快这种距离的计算速度就转载 2021-12-09 12:52:50 · 902 阅读 · 0 评论 -
PE-CE P in MPLS network网络术语
PE-CE 是 MPLS VPN 网络中经常使用的术语。PE(Provider Edge 运营商边缘路由器)是位于提供商网络并连接到位于客户驻地的 CE(Customer Edge 用户边缘路由器)路由器。在谈论 PE-CE 时,您经常还会看到 P 路由器( P router),它是位于提供商网络核心的提供商路由器。PE-CE is a term that is often used in MPLS VPN networks. The PE (Provider Edge) is the router..原创 2021-12-09 10:23:31 · 3979 阅读 · 0 评论 -
Eclipse Mosquitto An open source MQTT broker
Eclipse Mosquitto 是一个开源(EPL/EDL 许可)消息代理,它实现了 MQTT 协议版本 5.0、3.1.1 和 3.1。Mosquitto 重量轻,适用于从低功耗单板计算机到完整服务器的所有设备。MQTT 协议提供了一种使用发布/订阅模型执行消息传递的轻量级方法。这使其适用于物联网消息传递,例如低功耗传感器或移动设备(如电话、嵌入式计算机或微控制器)。Mosquitto 项目还提供了一个用于实现 MQTT 客户端的 C 库,以及非常流行的 mosquitto_pub 和 mos原创 2021-12-09 11:36:05 · 437 阅读 · 0 评论