首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

布隆过滤器在PostgreSQL中的应用

作为学院派的数据库,postgresql在底层的架构设计上就考虑了很多算法层面的优化。其中在postgresql9.6版本中推出bloom索引也是十足的黑科技。...Bloom索引来源于1970年由布隆提出的布隆过滤器算法,布隆过滤器用于检索一个元素是否在一个集合中,它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难。...从上面的原理可以看到布隆过滤器一般比较适用于快速剔除未匹配到的数据,这样的话其实很适合用在数据库索引的场景上。pg在9.6版本支持了bloom索引,通过bloom索引可以快速排除不匹配的元组。...在pg中,对每个索引行建立了单独的过滤器,也可以叫做签名,索引中的每个字段构成了每行的元素集。较长的签名长度对应了较低的误判率和较大的空间占用,选择合适的签名长度来在误判率和空间占用之间进行平衡。...虽然布隆过滤器不支持删除,但是在数据库索引上不存在删除布隆过滤器上元素的场景,当某个数据行被删除时仅需要删除对应行上的整个布隆过滤器(索引行)而已。

2.4K30

OpenCV 在 Android 上的应用

OpenCV 介绍 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。...在移动端上使用 OpenCV 可以完成一系列图像处理的工作。 二. OpenCV 在 Android 上的配置 我在项目中使用的 OpenCV 版本是 4.x。...下面的代码,展示了在应用层拍完照之后,将图片的路径传到 jni 层将其转换成对应的 Mat 对象,再转换成灰度图像,然后找出二维码的位置,要是能够找到的话就识别出二维码的内容。...OpenCV 进行二维码识别 val result = DetectUtils.qrDetect(filePath) L.d("opencvs识别二维码: $result") 3.2 比对图像的差异 在我们的实际开发中遇到一个应用场景...下面的代码,展示了在应用层拍完照之后,跟基准图片进行比对,并返回结果。

2.2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    AI 在 marketing 上的应用

    AI 在 marketing 中有很多应用,例如 搜索,推荐系统,程序化广告,市场预测,语音/文本识别(会话商务),防欺诈,网页设计,商品定价,聊天机器人等。...另一个应用是内容生成,输入一个关键词,从大量的数据里,找到和这个关键词相关的段落文章等,融合成一段文字。...一个人在不同的时间会使用电脑,手机,平板等不同的设备,AI 还可以被用来预测用户在什么时间会使用什么设备,帮助公司在特定的设备上进行有效的推送。 1....来看哪些顾客更有可能被转化 用一个矩阵来表示用户对一些广告的评分,这里需要用到矩阵分解,即要把这个矩阵分成两个矩阵的乘积,其中一个矩阵表示每个用户对某些特征的喜好程度,另一个矩阵表示这些广告在这些特征上的得分...内容生成 前面提到的其中一个应用 内容生成, 当推荐系统建立之后,要推荐的内容也可以用 AI 自动生成。 ?

    1.3K30

    用 Flatpak 在 Linux 上安装应用

    在某种程度上,这样想是令人欣慰的,因为它们感觉是可以管理的。如果一个应用实际上是散落在你的计算机上的数百个小库和资源文件的组合,那么应用在哪里?...在 Linux 上安装 Flatpak 你的 Linux 系统可能已经安装了 Flatpak。...如果没有,你可以从你的包管理器中安装它: 在 Fedora、Mageia 和类似的发行版上: $ sudo dnf install flatpak 在 Elementary、Mint 和其他基于 Debian...的发行版上: $ sudo apt install flatpak 选择一个 Flatpak 仓库 Software Repositories 如果你喜欢在终端工作,你可以用 flatpak 命令直接添加到仓库...我在 Fedora Silverblue、CentOS 和 Slackware 上使用 Flatpak,我无法想象现在没有它的生活。在你的下一个应用安装中试试 Flatpak 吧!

    1.7K10

    在 Windows 系统上启用远程应用

    在 Windows 系统上启用远程应用 需要一个远程桌面 App 进行演示, 安装 Windows 远程桌面服务太折腾, 需要安装域控制器, 再部署一整套的远程服务, 太折腾了, 如果只是演示的话, 没必要那么折腾...本文介绍一种通过修改注册表来启用远程应用的方法, 可以用于远程应用演示。 在 Windows 上允许远程桌面访问 这个没什么好说的, 非常简单, 在系统属性中设置允许远程连接到此计算机即可。...; 可以在 Applications 节点下创建任意多的节点, 理论上如果程序没有限制, 都可以作为远程应用; 编辑 RDP 文件, 使用远程应用 打开 Windows 附件中的 远程桌面连接...现在, 双击打开 rdp 文件, 就可以自动打开服务器上的记事本程序了。...设置 RDP 超时时间 当关闭远程应用时, 服务器并不会立刻终止远程会话, 因此需要在服务器上设置远程会话超时时间 搜索 gpedit.msc , 打开组策略编辑器; 依次找到 计算机配置 -> 管理模板

    3.4K61

    OpenCV在地图测试上的应用

    前言 我们在以往的UI自动化测试中,可以通过获取页面元素进行封装组合成一系列模拟真人的操作,来完成UI方面的自动化测试,但是在地图业务测试中,这种方式是无法完成的,地图是无法通过普通元素定位手段是无法获取元素的...,比如完成对比新老版本路径规划的准确性、与竞品比较路线的成熟度,但通过图像识别也是一个不错的思路,今天我们介绍一下利用图像识别的方式,在地图测试做一些应用。...OpenCV 的应用领域非常广泛,包括图像拼接、图像降噪、产品质检、人机交互、人脸识别、动作识别、动作跟踪、无人驾驶等。...注意安装以下模块和工具 GTK+ 2.x 或者更高的版本; GCC 编译器; cmake 构建工具; libtbb(英特尔线程构建模块) Python3 二、图像写入和读取 图像处理依赖于得到一幅图像、视频,并通过应用信号处理技术的

    1.4K20

    在 FPGA 上运行 eBPF XDP 应用

    面临的挑战 理论上看只要在 FPGA 上实现一个能够运行 eBPF 指令的 IP core,在通过 Linux 已有的机制把指令 offload 到硬件上就可以了,但实际应用中会碰到另一个性能问题,那就是...FPGA 较低的主频会导致顺序处理复杂 XDP 应用的延迟大幅上升 由于 FPGA 上资源有限,如果单个 IP Core 性能太差会导致整体吞吐量大幅低于使用 CPU 进行处理。...解决方法 接下来作者主要介绍如何针对 eBPF 指令在 FPGA 上运行进行优化。...eBPF 指令为了保证在内核执行的安全性,会加入大量数组边界检查的指令,这一部分同样可以通过硬件完成,这部分指令也可以被完全移除。 增加 6B store/load 指令。...Katran 作为测试应用,对比同样的应用在 FPGA 和 运行在 1.2GHz,2.1Ghz 和 3.7GHz CPU 上的性能对比。

    1.3K20

    Transformer在小目标检测上的应用

    文章分类在AI学习笔记: AI学习笔记(1)---《Transformer在小目标检测上的应用》 Transformer在小目标检测上的应用 1 小目标检测介绍 小目标检测(Small...虽然在一般目标检测方面已经取得了长足的进展,但SOD的研究进展相对缓慢。更具体地说,即使是领先的检测器,在检测小尺寸物体和正常大小物体方面仍然存在巨大的性能差距。...与CNN相比,Transformer本质上具有更高的复杂性,因为它们与Token数量(例如像素数)的数量呈二次增长的复杂性。这种复杂性来自于需要在所有Token之间进行成对相关性计算的要求。...3.3 其他 通用应用方法分为3组: 基于CNN的方法 混合方法 仅基于Transformer的方法 预训练和多尺度学习是在小目标检测中取得卓越性能最有效的策略。...DETR在具有挑战性的COCO目标检测数据集上展示了与成熟且高度优化的Faster RCNN基线相当的准确性和运行时间。此外,DETR可以很容易地推广到以统一的方式输出全景分割。

    21010

    深度学习在推荐系统上的应用

    深度推荐系统 实际上深度学习在自然语言处理,图像处理,图像识别等领域迅猛发展的近4年来,深度学习在其他领域,例如强化学习,推荐系统也得到快速的发展。...下面我们来看一下深度学习在推荐系统当中的一些应用,其主要分为5大类别,下面我们会重点介绍4个类别,分别是: Learning item embeddings Deep Collaborative filtering...YouTube Recommender,在今年的推荐系统顶级会议RecSys上,Google利用DNN来做YouTube的视频推荐。...通过对用户观看的视频,搜索的关键字做embedding,然后在串联上用户的side information等信息,作为DNN的输入,利用一个多层的DNN学习出用户的隐向量,然后在其上面加上一层softmax...5.总结 本文介绍了一些深度学习在推荐领域的应用,我们发现一些常见的深度模型(DNN, AE, CNN等)都可以应用于推荐系统中,但是针对不同领域的推荐,我们需要更多的高效的模型。

    1.7K90

    深度学习在推荐系统上的应用

    深度推荐系统 实际上深度学习在自然语言处理,图像处理,图像识别等领域迅猛发展的近4年来,深度学习在其他领域,例如强化学习,推荐系统也得到快速的发展。...下面我们来看一下深度学习在推荐系统当中的一些应用,其主要分为5大类别,下面我们会重点介绍4个类别,分别是: Learning item embeddings Deep Collaborative filtering...YouTube Recommender,在今年的推荐系统顶级会议RecSys上,Google利用DNN来做YouTube的视频推荐。...通过对用户观看的视频,搜索的关键字做embedding,然后在串联上用户的side information等信息,作为DNN的输入,利用一个多层的DNN学习出用户的隐向量,然后在其上面加上一层softmax...总结 本文介绍了一些深度学习在推荐领域的应用,我们发现一些常见的深度模型(DNN, AE, CNN等)都可以应用于推荐系统中,但是针对不同领域的推荐,我们需要更多的高效的模型。

    1.2K50

    小技巧 | 在 Android Studio 调试应用 (上)

    : 下面,添加过滤器的详细信息: 另一种减少混乱日志的方式是使用折叠功能,它可以把近似的日志折叠为同一组。...条件断点 您可能需要找到应用或游戏中与特定类型事件有关的 Bug。举例来说,在一个正在开发的游戏中,您可能希望在玩家的角色与物体碰撞而耗尽其最后的生命值时停止运行。...这里,在玩家碰撞到一个物体的逻辑基础上,设置一个 player.health == 1 的条件,从而使您可以捕捉到玩家生命值降为 0 前的最后一次物体的碰撞事件。...挂起线程 如果您在调试一个多线程应用,您将会注意到,在默认情况下断点将会挂起所有线程,但有时您可能不希望它这样做。...您也可以通过按住 Alt (在 Mac 上是 Option) 并点击断点,从而更快速地禁用断点。

    1.6K20
    领券