RISC-V架构下 DSA - AI算力的更多可能性

184474f7d0023d5c46bcff4244c69f26.gif

责编 | 王子彧

出品 |进迭时空SpacemiT

AI 应用出现在我们日常的生产生活当中,赋能各行各业的劲头势不可挡。近些年,AI 算力芯片领域群雄逐鹿,通过对芯片、算力与 AI 三者发展迭代过程的理解,我们发现高能效比的算力、通用的软件栈以及高度优化的编译器,是我们的 AI 算力产品迈向成功的必要条件。

进迭时空作为计算芯片企业,对 RISC-V 架构 CPU 进行高度定制,不断挖掘其在计算中的潜力,在 RISC-V 生态强大的软件栈与 CPU 领域成熟的编译器的基础上对 RISC-V DSA 进行联合优化并提供软硬一体的计算解决方案,给 AI 领域带来高效、易用的算力。

d105d547e146ae942dcfba2ea6e9e4b2.png

GPGPU 作为 HPC 领域(通用算力)的

DSA 打开了 AI 的大门

在上世纪80年代到90年代之间,随着科技的发展,CPU 的性能每隔 18 到 20 个月左右就能翻倍。这就是英特尔(Intel)创始人之一戈登·摩尔提出的摩尔定律(Moore's law)的主要内容。这意味着每隔18个月左右,同一款软件在新发售的 CPU 处理器上的运行速度可以直接翻倍。

转折点大概在2004年5月份, 当时 Intel 取消了其新一代的单核处理器开发工作转头主攻双核处理器设计。在同年稍晚一些,Herb Sutter 写了著名的《The Free Lunch Is Over(不再有免费午餐)》,文章主要表达除非软件的开发进行了多核多线程的设计,否则将无法像过去一样每隔一年多时间即可获取一倍的加速效果。如下图所示,CPU 处理器的单核计算性能开始趋近于一个平台区间,依靠增加晶体管密度来提升计算性能已趋于乏力,不断缩小的芯片尺寸总会遇到其物理极限。这意味着获得更高的性能提升需要新的方法。

056cc4daef77abd141d62d4900189b1c.png

上图为42年间的微处理器趋势数据

在摩尔定律的加倍效应已经放缓的后摩尔时代,持续提升处理器性能的一种重要的技术理念就是 Domain-Specific Architectures(DSA),即采用可编程的专用集成电路(ASICs)去加速特定的高强度的处理器负载,比如加速图形渲染、加速 AI 神经网络的前向推理计算、提高巨量网络数据的吞吐等。

架构的定义包含指令集架构与微架构。指令集架构是软件与硬件进行对话的接口,如果说一条指令是一个单词,那么指令集(ISA)就是词典,而软件程序就像是一本使用特定词典中的词汇编写出来的一本书。

1fd14712c749fb75331b6d32b4f548c9.png

be11405f9de68d23b8cab51a26f8ecfa.png

架构设计

通过对架构进行面向特定领域的设计,缩小应用范围,获得更高的性能,或者更好的能效比,保持可编程的灵活性,这就是 DSA 的理念。

  • 面向领域的架构设计可以以较低的成本获取较高的算力,以满足算力需求。

  • 指令集架构的可编程性带来了相对通用的算力,为下一代算法的应用和覆盖更广泛的领域提供了无限的可能。

DSA 的概念由 2017 年图灵奖得主 Henessy 和 Patterson 提出,并进行了题为《创新体系结构将迎来新的黄金时代》的演说。我们生活中最为熟悉的DSA 可能就是显卡(Graphics Processing Unit即GPU),游戏影音娱乐都离不开它。

1999年,NVIDIA 公司在发布其标志性产品 GeForce 256时,首次提出了 GPU 的概念。其实就是 DSA for 3D Graphics,目的是为了加速计算 3D 虚拟世界的渲染,降低 CPU 的负载。GPU 技术的发展也促进了显卡杀手级游戏引擎的激进发展,时至今日游戏画面的逼真程度堪比真人版电影。

时间来到2006年,NVIDIA 发布了 GeForce 8800 GTX(核心代号G80),与 G80 一同发布的还有著名的 CUDA(compute unified device architecture)并提供了驱动程序和 C 语言扩展 。

CUDA 发展到今日,区别于开放计算语言 (OpenCL 跨平台并行编程的独立开放标准) ,开发人员可以使用流行的语言(C、C++、Fortran、Python、MATLAB 等)编写 CUDA 程序,并使用几个基本的关键字即可将并行性添加到他们的代码中,而不仅仅是局限于使用 C 语言。理论上 OpenCL 的运行时编译能够带来较高的执行效率,但是实际上由于 CUDA 是由同一家开发执行其功能的硬件的公司开发,所以后者能更好地匹配 GPU 的计算特性,从而提供更好的性能。

由于 CUDA 便捷的编程模型与优秀的编译器,硬件资源可以较为容易的被充分利用,使得 GPU 上的通用计算能力被充分开发,拓展了 GPU 的应用领域。如下图所示 G80 核心能够提供比同时期的以 CPU 为中心的高性能处理器相当甚至更高的计算能力。再加上便于编程利用的这一特点开始逐渐被高性能计算(High-Performance Computing HPC)社区注意到,并加入到 CUDA 的生态当中开展研究。NVIDIA 公司也提供了 cuBLAS、cuRAND、cuSPARSE、cuSolver、cuFFT、NPP 等一众实用高效的计算库,进一步扩充了 NVIDIA 的算力生态。

99fa36d33eeb454077be7be4cffa3ea4.png

2012年多伦多大学的 Alex Krizhevsky 发表了一种新的深度神经网络(DNN 亦或深度卷积神经网络 CNN 本文中一律以 DNN 指代)模型 AlexNet,该模型在 ImageNet 图像比赛中取得了有史以来最好的成绩。15.3%的 top-5 错误率与此同时第二名的错误率高达26.2%。这一结果震惊了世界,从此AI竞赛开始拉开帷幕。该网络模型拥有60 million 的单精度浮点参数量,存储到磁盘上要占用 240MB 的空间。作者表示在显存和算力依然不够的影响下这是他在两块GTX 580 3GB GPU 上能做到的极限了,如果能够有更快的 GPU 按照经验,他可以得到更好的分类结果。【ImageNet Classification with Deep Convolutional Neural Networks】

从那时起, 几乎所有的AI研究员都开始使用 GPU 去进行算法领域的探索与突破。同时 GPU 的架构设计也倾向于提供越来越多的3D能力以外的通用算力,这种设计理念被称为 General-Purpose GPU(GPGPU)。

2011年 TESLA GPU 计算卡发布,标志着 NVIDIA 将正式用于计算的 GPU 产品线独立出来,凭借着架构上的优势,GPU 在通用计算及超级计算机领域,逐渐取代 CPU 成为主角。【 HU L, CHE X, ZHENG S Q, et al. A closer look at GPGPU[J]. ACM Computing Surveys, 2016, 48(4): 1-20.】

伴随着 GPU 技术的发展,AI算法研究也突飞猛进。2014 年前后,香港中文大学的 Sun Yi 等人将卷积神经网络应用在人脸识别领域,采用20万训练数据,在 LFW 数据集上第一次得到超过人类水平的识别精度。2015年10月, AlphaGo 击败樊麾,成为第一个无需让子即可在19路棋盘上击败围棋职业棋士的电脑围棋程序,创造了历史,并于2016年1月发表在知名期刊《自然》。在 CES 2023上,奔驰宣布成为美国首家获得 L3 自动驾驶认证的厂商。AI算法在越来越多的领域的能力上接近和超越人类,也就是说在这些领域AI可以帮助降低人们的负担,释放了人类的潜力。同时也意味着商机与产业化的机会。

811a0a1ae190a43435d465abd23e795d.png

通用算力、专用算力,

GPGPU与AI DSA相向而行,殊途同归

在2014年,世界上第一款 supercomputer on a module, Jetson TX1问世,TX1采用256个NVIDIA Maxwell 架构 CUDA cores 提供了超过1  TeraFLOPs 性能。旨在能够为当时最新视觉计算应用提供所需的性能和能效。定位为Deep Learning, Computer Vision, Graphics、GPU Computing 的嵌入式平台。

00ca663b4fb7b7f5730a5c03f5719cce.png

图5.DRIVE Thor is the next generation in the NVIDIA AI compute roadmap。

来源【https://blogs.nvidia.com/blog/2022/09/20/drive-thor/】

该系列产品从2018年的1T算力的 TX1 一路发展到2024年预计发售的拥有2000T算力的 THOR 平台。值得注意的是在 XAVIER 与 ORIN 平台上有超过一半的标称算力是由 DLA 提供。

8d72377a69563f3afa77f5825e64e7b3.png

图6.Jetson Orin Technical Specifications

来源【https://www.nvidia.com/en-sg/autonomous-machines/embedded-systems/jetson-orin/】

采用 DLA 可以加速部分计算密集的算子,与采用 GPGPU 计算相比,在损失部分推理精度的前提下,采用 DLA 加速推理计算不仅能加速更快而且能耗更低。但这并不是免费的午餐,首先要想把 GPGPU 与 DLA 两块算力同时利用起来软件上就需要比较精巧的异步设计使得 CPU 负载、编解码模块、图像处理模块、GPGPU 以及 DLA 五者流水化并行处理。然而到了 THOR 这代自动驾驶平台的产品。DLA 提供的算力甚至直接被砍掉,其中原由目前还不清楚。

但是从NVDIA的官方文档中我们可以看到,DLA 支持了约15种主要 AI 算子的执行,不支持的算子类型将会回退到GPGPU进行运算。【https://docs.nvidia.com/deeplearning/tensorrt/developer-guide/index.html#dla_layers】

值得关注的是 THOR 平台的 CUDA 引入了 Transformer Engine 用来加速时下大火的基于 attention 机制的 DL 算法,Transformer 正是当下正被热议的 ChatGPT 的网络模型的重要组成部分。并且引入了对8-bit floating point (FP8) 精度的支持,这是 INT8(8-bit整形数据类型,用于加速 DNN 推理计算)的替代品能够在同等的位宽下提供更高的精度。Nvidia 在其 Edge 平台产品线上开始放弃专有的定制化大算力,逐步的在通用算力的基础上来增加领域的定制化。这也与其发布会上反复提到的,提高开发效率和加快软件迭代、算法迭代的目的相吻合。

GPU 也是一种的 DSA,GPU 的发展论证了 DSA 取得的成功。DSA、GPU、AI 这是个互相成就的故事。而 Nvidia的GPGPU 硬件的成功,与其 CUDA 生态丰富的算力软件包、易于使用的编程接口、优秀的编译器脱不开干系。由此我们可以得出一条结论,对于 DSA 算力硬件来说,这些都是走向商业成功的必要条件。

从 TX1 推出开始,对标 TX1 的竞品层出不穷。TX1 的算力来自于 GPGPU,而更加客制化的 ASIC,利用卷积操作的空间局部性进行数据复用的精妙设计,在达到同等甚至更高算力的同时硬件的成本更低。最普遍的设计是一个高能效比的 CPU 小核如 Arm Cortex A7/A53加固化的 2D 图像处理(CV)模块与固化的神经网络处理(DNN/NPU)模块。

由于小 CPU 的计算能力非常受限,将主要负责应用软件的任务调度部分,AI 应用的前处理(非 DNN 算法模型部分)主要由2D图像处理模块来承接。问题在于前处理是非常碎片化的算法,除了个别的插值、颜色域转换功能几乎所有图像处理软件都会用到,其他所需功能非常的广泛。仅 OpenCV 的核心函数、图像处理函数就包含矩阵变换、滤波、分辨率变换、颜色空间转换、直方图等等几个大类,其中每个大类中的子方法又会有若干个,无法定义哪些功能需要被固化。这还不包含3D数据处理能力与特征描述子的使用。算法厂商的需求各不相同,固化的多了浪费面积,固化的少了产品开发的难度将大幅提升。

ONNX 是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的人工智能框架训练得到的网络模型可以以相同的格式进行存储。ONNX 的规范及代码主要由微软,亚马逊,Facebook 和 IBM 等公司共同开发。以 NVIDIA 的 AI 软件生态中最富盛名的 DNN 推理开发工具库 TensortRT 为例,5.1版本支持87个 ONNX 算子,到了7.1版本支持的ONNX 算子数量为108个。功能高度固化的 ASIC 无法对新增的算子计算类型进行支持,将会越来越约束算法的迭代。而在这之上进行 AI 产品开发的算法工程师们无异于是戴着镣铐跳舞。

Google 公司研发了张量处理单元 (TPU),TPU v1 于 2015 年投入生产,并被谷歌内部用于其应用程序。TPU 是一种应用于AI领域,为AI算法提供算力的 ASIC,利用了神经网络对于数值精度不敏感的特性,其思想核心是采用低精度矩阵 Systolic Array 提供巨大算力,同时提供满足 AI 需求的最小化的运算功能。此版本(即 TPUv1)的云服务从未对用户开放开发使用。现在TPUv2 以及后续版本被广泛的应用于谷歌的搜索排序、语音识别、以图搜图、谷歌翻译等领域。

1ec9d336a3fbd0017b2e95649150a4e9.png

图:TPUv1硬件架构图

在 TPUv1 版本硬件架构图上,我们可以看到 Matrix Multiply 模块提供了64K operations 每时钟的超大算力,紧随其后的是 Activation(激活)、Normalize/Pool(归一化/池化)这些非常具现化的运算。而到了 TPUv2,我们可以看到通用的 Vector 单元代替了v1版本中 activation pipe 中的固定功能。

274ef2eb918505ae1d3460dd376d3c55.png

图:Transforming the TPUv1 datapath into the TPUv2 datapath  

来源:【The Design Process for Google’s Training Chips: TPUv2 and TPUv3  】

“我们已经在我们的数据中心内运行 TPU 一年多了,并且发现它们为机器学习提供了一个数量级更好的每瓦优化性能。这大致相当于未来七年左右的快进技术(三代摩尔定律)。谷歌的 CEO 这样评价了 TPU。”【 Google CEO Sundar Pichai cloudplatform.googleblog.com/2016/05/Google-supercharges-machine-learning-tasks-with-custom-chip.html】

在21年,David Patterson 进行了 TPU 演进十年的总结:Google 的十大经验教训 【Ten Lessons From Three Generations Shaped Google’s TPUv4i : Industrial Product】 其中就指出DSA既要专门优化,也要灵活。TPUv2 引入的通用算力给 TPU 提供了更强大的能力,不仅仅局限于 TPUv1的模型推理功能,还能进行模型的训练,这往往需要更复杂的运算。Google 也是通过 XLA:一个用于 TPU 的高度定制优化的机器学习编译器,为机器学习(PyTorch、TensorFlow)与数值、科学计算(Jax、Julia、Nx)提供便捷通用的编程使用接口,通过云服务提供给用户,为尤其此生态下的用户带来了良好的用户体验。

0bc93e1054cc8b756ddc57ebef60e301.png

DSA成功带来的启示

通过以上的成功案例我们可以发现,GPGPU、TPU 的迭代的共同点是通过越来越高度的架构定制带来了越来越澎湃的专用算力。同时保留或者新增通用的算力。通过高度优化的编译器和丰富的软件栈,让用户能够轻松的将硬件算力充分地利用起来。那么通用算力、编译器、软件栈这些显然都在 CPU 平台是最丰富最成熟的,而对于 CPU 来说 “ Domain-specific architecture design is all you need ”。

f17a393a816c200b9054b1ea0bb583e9.png

RISC-V DSA能否把AI算力做好

GPU 的发展,满足了大型 DNN 网络的内存带宽和计算能力的需求。由于计算能力的提高和可用数据量的增加,DNN 已经演变成更宽、更深的架构。DNN 中的层数可以达到数万层,参数达数十亿,研究人员很难在硬件资源(例如,内存、带宽和功耗)有限的便携式设备中部署 DNN。迫切需要在资源受限的边缘设备(例如,手机、嵌入式设备、智能可穿戴设备、机器人、无人机等)中有效部署 DNN 的方法。于是AI科学家们又开展 AI 模型小型化的研究,也就是用最少的参数量,最少的计算量去达到想要的模型精度。于是shufflenet、mobilenet、网络架构搜索 (NAS) 算法等轻量级神经网络结构开始被推出。能够在很少的参数量上去达到与大参数量模型接近的精度。同时神经网络的参数剪枝、参数量化、紧凑网络、知识蒸馏、低秩分解、参数共享、混合方式等等压缩技术与计算加速技术开始成为研究的热门。

6f9de4224030dc1eb2e939b7f85dc60b.png

图 3. Top-1 ImageNet-1k 精度与计算复杂度的球形图。

每个球的大小对应于模型的复杂性。(转载自参考文献 [ Bianco, S.; Cadene, R.; Celona, L.; Napoletano, T. Benchmark Analysis of Representative Deep Neural Network Architectures. IEEE Access. 2018, 6, 64270–67277.])。

3905803e7baf374cfa6d1530a6184c6b.png

图4. 模型大小与精度比较。

EfficientNet-B0 是AutoML MNAS开发的基线网络,而 Efficient-B1 到 B7 是基线网络扩展得到的。特别的,EfficientNet-B7 达到了最新的 84.4% top-1 / 97.1% top-5 精度,同时比现有最好的 CNN 小 8.4 倍。

同时 AI 科学家们也发现提升模型参数量带来模型精度提升的效应在减弱,如图4所示在图像分类的任务上,模型的精度随着参数量的提升是越来越接近85% Top-1准确率的这个平台。也就是说在成熟的视觉领域我们得到一定 AI 能力的算力需求是趋于收敛的。那么给定任务给定模型给定图像处理的帧率我们就可以得到我们的算力需求。完成指定领域的任务,最终的算力需求是可以被定义并且趋同。

这一切都意味着 AI 不再是超级算力、超级计算机上独享的能力。AI 将会在任何地方,这同时也对我们的通用处理器发起了挑战。

DSA 可以有效、高效的去完成领域任务,然而 C++ 编程、CPU 上的经验可能就无法被利用上了。在 David Patterson 的十大经验教训里也提到 DSA 的软件栈目前不及 CPU,尤其在编译器领域还不够成熟。那么如果 DSA 能够利用 CPU 的软件栈丰富且成熟的优势岂不是如虎添翼?

例如 CUDA 以提供了多种常用编程语言的支持加以关键字拓展的方式去进行并行软件编程,加之本身卓越的通用计算能力。使得其开发生态越来越壮大。有实力的客户甚至放弃使用 TensoRT 通过自身的 GPGPU 技术积累开发出了适合自己业务需求的更高效的软件,比 NVIDIA 提供的 TensoRT 性能提高了一倍。【滴滴自研NVIDIA GPU汇编器:https://on-demand.gputechconf.com/gtc-cn/2019/pdf/CN9667/presentation.pdf】

600d931f8b01eb1a5fc6a7cfdcbc8f15.png

那么我们何不在CPU上将AI算力提供出来,这条路是不是可行的呢?

81066894518ab5f56403371816f16786.png

27bef3afd52f01d7937978b85d193634.png

如上图所示,在过去CPU上的浮点能力由于SIMD拓展的提出,

在频率提升很缓慢的时代依旧得到了巨大的提升。

并随着SIMD数据并行宽度的提升有一个线性的增长。

近年来 Intel x86 CPU 处理器上的 SIMD 由64bit 的 MMX(Multi Media eXtension,多媒体扩展指令集)增长到了512bit 的数学拓展 AVX512 与 AI 拓展 VNNI。使得在四核 Core i7-1185G7 @ 3.00GHz 的处理器上可以获取 3Tops 的算力。提供了 AI 所谓的 MAC 能力,加之本身的通用 SIMD 计算能力是可以有效 COVER 如智能机器人、智能视频、语音终端设备等 AI 场景。但此等 SOC 做 AI 终端过于奢侈,且定位还是通用而不是 AI DSA。

Intel 最新的 AMX 矩阵拓展架构、Arm 架构下的 SME 矩阵拓展架构以及IBM 的 AMM 指令集更是将 CPU 能提供的 AI 算力又提升了一个台阶。在架构代号为 Sapphire Rapids 的 server 级处理器上可以通过 AMX 获得每时钟周期1024个 mac 是 VNNI 拓展提供的算力的8倍(128个 mac 每时钟周期)。

【https://edc.intel.com/content/www/tw/zh/products/performance/benchmarks/architecture-day-2021/】

CPU 上完全可以长出使能 AI 应用大算力,正如过去长出了适合多媒体处理的算力。【https://en.wikipedia.org/wiki/MMX_(instruction_set)】

6bdcb2306ec4782857fc71e28cf690e5.png

为什么是RISC-V

如果要对CPU架构进行领域定制,需要获取对应的架构级授权(Architectural License)。区别于 IP Core 的授权,架构级授权特指指令集(ISA)授权,允许客户自行定制优化。

关于 CPU 业界两大阵营 x86 与 ARM 的架构授权的情况是什么样的呢?x86的专利主要掌握在英特尔和 AMD 这两家公司手中,到目前为止国内没有任何一家厂商拥有 x86 的架构级授权,海光信息与兆芯采用的是 x86 架构 IP 内核授权模式。海思、飞腾均已经获得 ARMv8 架构的永久授权。尽管 ARM 此前表态 ARMv9 架构不受美国出口管理条例 (EAR) 约束,华为海思等国内 CPU 产商依然可获授权,但是 ARMv9 不再提供永久授权,采用 ARM 架构仍有长期隐患。而且即使在拥有 ARM 架构级授权的情况下做出指令集定制与改动,也必须经由 ARM 参与支持修改才可以,否则将触发违约条款。

RISC-V 因其相对精简的指令集架构(ISA)以及开源宽松的 BSD 协议使得Fabless 可以基于 RISC-V 架构进行任意的架构拓展与定制。相信 RISC-V DSA 可以利用其经典的 CPU 的编程模型与相对低成本获取的 AI 算力,加之标准 RISC-V Vector 拓展提供的通用算力。能够给 AI 嵌入式场景下 1-10T算力需求范围的 AI 产业应用带来全新的商业化硬件方案。

参考资料:

  1. 《Intel cancels Tejas, moves to dual-core designs》, 【https://www.eetimes.com/Intel-cancels-Tejas-moves-to-dual-core-designs/】

  2. 《The Free Lunch Is Over》,

    【http://www.gotw.ca/publications/concurrency-ddj.htm】

  3. 《ImageNet Classification with Deep Convolutional Neural Networks》,Alex Krizhevsky,Ilya Sutskever,Geoffrey E。

  4. 【 HU L, CHE X, ZHENG S Q, et al. A closer look at GPGPU[J]. ACM Computing Surveys, 2016, 48(4): 1-20.】

  5. 《DRIVE Thor is the next generation in the NVIDIA AI compute roadmap》

    【https://blogs.nvidia.com/blog/2022/09/20/drive-thor/】

  6. Jetson Orin Technical Specifications,

    https://www.nvidia.com/en-sg/autonomous-machines/embedded-systems/jetson-orin/】

  7. DLA支持的层和限制,【https://docs.nvidia.com/deeplearning/tensorrt/developer-guide/index.html#dla_layers】

  8. ONNX-Tensorrt,

    https://github.com/onnx/onnx-tensorrt/blob/7.1/operators.md】

  9. 《Google CEO Sundar Pichai》, 【cloudplatform.googleblog.com/2016/05/Google-supercharges-machine-learning-tasks-with-custom-chip.html】

  10. MnasNet: Towards Automating the Design of Mobile Machine Learning Models

    – Google AI Blog (googleblog.com)

  11. 滴滴自研 NVIDIA GPU 汇编器:

    https://on-demand.gputechconf.com/gtc-cn/2019/pdf/CN9667/presentation.pdf】

  12. intel性能指标参数,

    https://edc.intel.com/content/www/tw/zh/products/performance/benchmarks/architecture-day-2021/】

  13. MMX介绍,

    https://en.wikipedia.org/wiki/MMX_(instruction_set)】

d52266539c6b1e440e358373fe31bede.gif

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

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

相关文章

解忧杂货铺(五):用了无法离开的网站资源

目录 1、概述 2、网站列表 2.1 油猴 2.2、在线文档转换 2.3、电子书搜索 2.4、学吧导航 2.5、茶杯狐看片 2.6、极简插件 2.7、图片风格更改 2.8、千帆搜索 2.9、俄罗斯以图搜图 2.10、在线图片处理工具 2.11、英语在线真题 2.12、快搜 2.13、菜鸟教程 2.14、导航…

Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例

Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例 一、Opencv大图找小图说明二、Opencv的window安装1.下载windows下的安装包2.安装3.Java中Opencv加载测试 三、Java中通过Opencv进行模板匹配大图找小图四、进行多图查找五:案例下载bilibili视…

利用OpenCV的函数matchTemplate()实现在图像中寻找、检索、搜索模板图像【图像模板匹配】

利用OpenCV的函数matchTemplate()实现在图像中寻找、检索、搜索模板图像【图像模板匹配】 在博文 https://www.hhai.cc/thread-220-1-1.html 中我们利用直方图的反向投影原理可以寻找图像中具有某个直方图特征的部分。 但是有时候会遇到这样的情况:图像中某个部分的…

chatgpt赋能python:Python以图搜图:如何用Python优化SEO?

Python以图搜图:如何用Python优化SEO? 随着搜索引擎算法的普及,优化您的SEO策略需要更多的创意和技巧。一种方法是使用Python以图搜图,具有该技能可以使您的网站上升到搜索结果列表的顶部。在这篇文章中,我们将探讨Py…

使用Milvus搭建以图搜图服务

使用Milvus搭建以图搜图服务 介绍安装MilvusJava调用Milvus插入、查询引入Maven依赖创建Milvus客户端实现Milvus插入向量数据实现Milvus 查询向量 结尾 介绍 网上相关的实现比较少,最多也只能查到Milvus,但不知道怎么使用。最后通过ChatGPT了解到了相关…

chatgpt赋能python:Python在SEO中的应用之以图找图

Python在SEO中的应用之以图找图 在SEO优化中,一个重要的环节是优化图片,而通过利用Python编写的代码,可以实现以图搜图,简化了图片优化的流程和提高了优化效率。 什么是以图找图 以图搜图,即通过一张已知图片搜索出…

自研芯片架构 ,这家中国公司发布DPU芯片计划

近日,专注于智能计算领域的DPU芯片和解决方案公司中科驭数发布了其下一代DPU芯片计划,将基于自研的KPU(Kernel Processing Unit)芯片架构,围绕网络协议处理、数据库和大数据处理加速、存储运算、安全加密运算等核心功能&#xff0…

十大芯片公司盘点,转行怎么选择芯片设计公司?

不少同学想要入行IC,想要了解IC行业哪些公司比较有前景?芯片设计公司哪家强?下面IC修真院就来为大家盘点一下! 中国十大芯片企业排名 1.海思Hisilicon 2.Spreadtrum展讯 3.龙芯loongson 4.兆易创新GigaDevice 5.汇顶GOODIX 6.华大…

全球爆火的ChatGPT,能否推动芯片市场增长?

“我所热爱的是我真实的生活,因为它包含了我所有的经历和感受,是我每一天都在体验和思考的。”这句非常有诗意的话,来自最近爆火的ChatGPT。 ChatGPT作为一款智能机器人,上知天文下知地理,不仅能写文案,还…

拿走!H5版本ChatGPT开源等你

近些日子忙里偷闲的研究chatGPT,也小弄了一个公众号版本,一个H5版本的,现在H5版本的也就是开放给大家体验的版本,还不知道的伙伴可以关注#公众号:李连活,回复“888”领取体验,和AI畅快聊天问答。…

ChatGPT分销版如何接入文心一言(文心千帆)?

对于ChatGPT分销版的对话通道接入还是比较简单的,为什么这么久才接入? 其实很久之前我们就在申请接入百度的文心一言(文心千帆),但是最之前的条件确实太苛刻了,需要签订各种协议以及缴纳各种费用&#xff0…

GPT-4震撼发布:多模态大模型,直接升级ChatGPT、必应,开放API,游戏终结了?...

ChatGPT 点燃了科技行业的明灯,GPT-4 能燎原吗? 谁能革得了 ChatGPT 的命?现在看来还是 OpenAI 自己。 在 ChatGPT 引爆科技领域之后,人们一直在讨论 AI「下一步」的发展会是什么,很多学者都提到了多模态,我…

(抛砖引玉)用好chatgpt小帮手,写一个实验室管理系统

本文用实际案例描述了如何用好chatgpt做一些小程序,主要是写给缺乏实际编程经验但又不得不硬着头皮上的同学。 大佬们可以直接飘过~ 目前兼着实验室管理员的工作,众做周知,电子工程师的实验室一般来说都是杂乱无章的,没有设备维护…

GPT发展史

不知道大家是否还记得年初刷屏的 DALLE2 ?因为它的爆火,大家开始不约而同的讨论起 AI 绘画会不会代替设计师的工作,这个话题至今还被人常常提起。最近,OpenAI 再放大招,推出的 ChatGPT 席卷网络,大家又开始…

IEEE IS评选AI十大新星,9位华人获奖

最近人工智能领域著名杂志 IEEE Intelligent Systems公布了 2022 年度「人工智能十大新星」(AIs 10 to Watch)名单 ,其中有九位都是华人研究者。 推荐阅读: ▶不愁失业!英伟达 CEO 黄仁勋:“AI 让每个人都能…

死磕数据库系列(三十二):MySQL 数据库、数据表管理工具介绍

关注公众号,回复“1024”获取2TB学习资源! 今天我将详细的为大家介绍 MySQL 数据库、数据表相关工具的相关知识,希望大家能够从中收获多多!如有帮助,请点在看、转发支持一波!!! 数据…

IBM停止招聘可被AI取代的职位;三星禁止员工使用ChatGPT;印象笔记官方AI免费课;清华美院AI绘画的高质量分享 | ShowMeAI日报

👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! 🤖 『IBM将停止招聘可被人工智能取代的职位』近8000名工人将被自动化取代 据彭博社报道,IBM首席执行官Arvind Krishna表示&am…

死磕数据库系列(三十一):MySQL 服务器 CPU、磁盘、内存等硬件选型

点关注公众号,回复“1024”获取2TB学习资源! 今天我将详细的为大家介绍 MySQL 服务器的磁盘及相关硬件选型的相关知识,希望大家能够从中收获多多!如有帮助,请点在看、转发支持一波!!更多关于MyS…

Linux 中 root 与 sudo 的用法与区别,居然这么多人搞不清楚。。。

点关注公众号,回复“1024”获取2TB学习资源! Linux 下面有两个概念可能大家接触的比较多,一个是 sudo 命令,还有一个是 root 账户。Sudo 命令可以以最高权限执行命令,而 root 账户下所有命令都有最高权限,也…

面试官:TCP 连接数最大不能超过 65535?那服务器是如何应对百万千万并发的?...

点关注公众号,回复“1024”获取2TB学习资源! 最大并发 tcp 连接数是多少呢? 首先,问题中描述的65535个连接指的是客户端连接数的限制。 在tcp应用中,server事先在某个固定端口监听,client主动发起连接&…