得物端智能视频封面推荐
一、背景
什么要做智能封面?
用户可以在得物购物,也可以在得物社区分享自己的生活。
得物社区中的视频使用双列流,每条内容包含封面、标题等。
- 对得物社区的创作者而言,选择视频封面是创作链路的重要环节。
- 对得物社区的消费者而言,封面是影响 CTR(点击率)的关键因素。
封面推荐可以降低创作者的创作成本,提高消费者 CTR。
端智能介绍
端智能(Edge/Client Intelligence)是指在边缘设备(如物联网设备、智能传感器、移动设备等)上进行数据处理和智能决策的能力。与云计算模型相比,端智能将计算、存储和分析功能移到更接近数据源的地方,优势如下:
- 低延迟 :数据在本地处理,减少了传输到远程服务器的时间,提高响应速度。
- 节省带宽 :通过在本地处理数据,仅发送必要的信息到中心服务器,减少了网络带宽的消耗。
- 数据隐私和安全 :数据在本地处理,敏感信息不必传输到云,从而提高了数据隐私和安全性。
- 可靠性 :在网络连接不稳定或中断的情况下,边缘设备可以继续进行本地处理和决策。
尽管端智能带来了很多优势,但在实际应用中也面临一些挑战:
- 计算能力的局限性 :边缘设备通常具有有限的计算资源,可能无法处理复杂的人工智能模型。
- 数据一致性与协同 :多个边缘设备之间的数据一致性和协调处理仍然是一个挑战。
- 设备管理与部署 :随着设备数量的增加,边缘设备的管理、监控和更新变得更加复杂。
考虑到用户隐私、实时性和服务端压力,我们选择用端智能推荐视频封面,并克服相关的挑战,最终获得收益。
得物端智能
对客户端而言,不需要训练模型,只需要推理。
端智能框架可以简化推理过程,常见的端智能 SDK 如下:
- 开源 SDK:MNN、TNN、NCNN、Paddle Light、TensorFlow Light 等。
- 闭源 SDK:ByteNN、Pitaya、KwaiNN、Ykit 等。
- 系统 SDK:CoreML(iOS)、MLKit(Android)等。
考虑到 iOS、Android 双端的通用性和开发成本,得物基于 MNN [1] 框架,开发得物端智能推理基建。端智能基建核心功能如下:
- 提供端智能模型管理后台,提供完整链路,管理模型的放量。
- 端侧提供统一的基建,方便业务进行模型的下载、运行管理,以及熔断和降级的处理,降低使用门槛。
- 提供相对完善的稳定性和性能监控机制,及时报警和出错时止损。
整体架构
智能封面主要开发流程如下,算法侧产出端智能模型,客户端调用模型推荐视频封面。
二、内容理解算法
算法调研
端智能封面推荐场景要求无参图片质量评价(NR-IQA)、轻量化,因此基于目前的前沿进展进行调研和摸底,确定相关实现方案。主要的调研内容:
Faster-VQA[2]:轻量化的视频质量评估模型。核心是使用优化版本的Transformer->Swin-Transformer来减少网络计算,加速效率。
UNIQA[3]:统一的图像质量评估(IQA)框架,旨在同时处理全参考(FR)和无参考(NR)任务。现有的IQA模型通常只能处理FR或NR任务之一,而人类视觉系统(HVS)则可以无缝地在两者之间转换,因此提出开发一个能够像人类一样处理不同类型图像质量评估任务的模型,统一全参/无参两类任务。
LAR-IQA[4]:轻量级的NR-IQA模型,基于MobileNetV3提出了一种新的无参考图像质量评估模型LAR-IQA。该模型旨在解决现有模型在实际应用中的局限性,特别是对于资源受限的移动设备上的实时图像质量评估任务。核心贡献点有:双分支架构、多色空间训练、Kolmogorov-Arnold Networks (KAN)结构代替MLP。
CLIP-IQA[5]:利用(引入)对比语言-图像预训练( CLIP)模型来评估图像的视觉感知,包括图像的质量(look)和抽象感知(feel),无需进行特定任务的训练。核心在于利用CLIP中蕴含的视觉语言先验,通过精心设计的提示策略来提升评估性能。同时提出了一种反义词提示配对策略(如“好照片”和“坏照片”成对使用),以减少语言模糊性并增强模型在视觉感知评估中的表现。此外,为了克服CLIP对固定尺寸输入的要求及其可能引入的额外失真问题,增加了移除位置嵌入的方法,进一步提升了模型与人类感知的一致性。
Q-Align[6]:目前NR-IQA领域的SOTA模型,将大模型引入到视觉打分任务中。通过文本定义的级别(例如好、差等)而不是直接的分数(例如3.45、1.77)来指导训练LLMs。标志着在视觉评分领域的一个重要进展,通过创新地使用离散文本定义级别来训练LMMs,不仅提高了评分的准确性和鲁棒性,还为未来的研究开辟了新的方向。
技术卡点
端侧模型存在体积限制,考虑到带宽成本、推理速度等,将模型体积控制在 30M 以内。
目前图片质量打分 sota 模型,整体都是从打分效果出发,不考虑模型性能(size/推理耗时/cpu性能/MAC等),最小的模型体积也超过 120M,不满足端上移植的要求。
现有的 Faster-VQA 和 LAR-IQA 虽然模型打分效果都不错,但是同样因为尺寸超额无法直接使用,也无法直接移植。
算法方案
轻量化网络:本次算法模型主要在手机本地部署,受限于带宽和计算资源限制,对模型尺寸有严格要求。综合考虑后采用业界比较成熟的轻量化模型 MobileNetV3 结构作为基础框架模块,从0到1重新训练轻量化图片打分模型。
数据清洗与数据集构建:考虑到图片-质量分数据的缺失,使用开源图片评价大模型对数据预标注(必要时进行人工介入清洗),通过多模型交叉打分验证和人工标注,最终总体训练数据量级超过10w+。整体流程如图所示:
轻量化图片质量评价模型
loss优化:loss设计上采用回归任务loss+主观感知偏差衡量loss,超参数控制多loss融合。
模型移植
MNN 模型支持 Tensorflow、Caffe、ONNX、Torchscripts 等主流模型文件格式,支持CNN / RNN / GAN / Transformer 等主流网络结构。
MobileNetV3 使用 PyTorch 框架创建、训练、持久化模型,需要先转换成为ONNX格式,然后再转换成 MNN 模型。通过 FP16/Int8 压缩与量化,模型最终大小为 24M,客户端可以接受。
在客户端进行模型推理调用时,需关注输入图片的尺寸、预处理方式以及输出数据格式等方面。这些参数与模型相互绑定,且在后续的迭代过程中应保持同步。
三、客户端部署
整体流程
整体流程如图所示,用户进入封面选择页,首先对视频抽帧,然后调用端智能推理。端智能输出一个评分,获取评分最高的图片作为推荐的封面。为了提高封面识别速度,采用批量异步计算。
时序图
整体架构如图所示,双端共用端智能基建,各自实现具体的业务逻辑。ClientIntelligence 作为端智能基建,底层封装了 MNN、OpenCV 等,实现了模型管理(下载、缓存等)、推理、监控等功能。
架构图
推理一致性
推理一致性(Inference Consistency)是指在不同时间、不同环境、或不同条件下,模型输出的结果保持稳定、可靠、一致的能力。这是一个非常重要的概念,尤其是在部署机器学习模型时,确保模型的推理一致性对于维护模型的质量和可信度至关重要。
推理不一致的来源:
- 在不同硬件平台上运行模型(例如不同的 CPU、GPU、TPU 等)可能会导致数值精度上的细微差异,进而影响推理结果。
- 不同的深度学习框架(例如 TensorFlow、PyTorch )可能会在推理过程中产生不一致的结果,尤其是涉及到数值计算时。
- 输入数据预处理方式不一致导致推理结果不同,可以通过数据标准化、归一化等减少对推理结果的影响。
具体到智能封面的场景,主要面临下面几种一致性:
- PyTorch、ONNX、MNN 推理一致性:不一致主要来源框架本身,端上模型为了提高推理速度,会对模型进行量化,比如将浮动精度的模型(如 Float32)转换为低精度模型(如 INT8)。框架造成的推理结果不一致无法避免。
- iOS、Android 双端推理一致性:输入数据预处理方式是影响推理一致性的关键因素,在智能封面场景,图片数据的预处理方式需要保持一致。双端由于硬件的差异,推理结果也不同。此外,使用 CPU、GPU 推理结果也会存在细微的差别。智能封面会对图片评分,选择评分最高的图片,因此硬件造成的差别在本场景下可以接受。
耗时优化
用户在封面选择页面停留时间有限,因此要尽可能地减小封面推荐耗时。
首先要定位到耗时操作,然后有针对性地优化。
在本场景中,耗时操作包含抽帧、推理,具体优化如下:
- 并行计算:多线程同时抽帧、推理,需要注意的是,并行数需要考虑 CPU 和内存的占用。
- GPU 推理:端智能同时支持 CPU 和 GPU 推理,通过 GPU 推理可以显著减小耗时。
- 不同性能的手机处理速度差别较大,低性能手机会适当减小抽帧数量,以提高运行速度。
优化后,可以在秒级完成抽帧、封面推荐全过程。
四、收益与效果评估
线上效果对比
线上智能封面、非智能封面抽样结果如下,使用智能封面功能,整体画风更优,更清晰。
智能封面
非智能封面
竞品效果对比
得物智能封面与主流短视频平台对比结果如下,整体选帧效果和主流短视频平台可比,部分场景效果较优。
得物
短视频平台A
短视频平台B
人工GSB评测
在智能封面功能上线后,我们随机抽取了线上真实的视频数据,并通过人工GSB(Good Same Bad)评估方法,对智能选帧所得的图片与默认首帧图片进行了图像质量的对比分析。
多组数据、多人次测评整体评估结果为:Good(好)361票,Same(一样)182票,Bad(差)95票。
相较于默认首帧图片,智能选帧的GSB评分提升了 41.7%,表明选帧功能在图像质量上有了显著的改进。
线上实验收益
在发布侧,采用智能封面点击率、选择率作为衡量指标,获得了显著的收益,其中智能封面点击率 5.5%,非首帧封面选择率相对提升 +25.61%。
在内容推荐侧,采用推荐双列流视频点击率作为衡量指标,pvctr 和 uvctr 都有明显提升,与对照组相比,pvctr+13.12%、uvctr+18.05%。实验结果也表明在推荐双列场景下,更好得封面内容会带来更好的消费。
五、总结
本文通过端智能推荐视频封面,帮助创作者降低发文成本,提高发文质量。
我们也希望将端智能用在更多的场景,提高用户体验。
六、参考资料
- https://github.com/alibaba/MNN
- Wu, Haoning, et al. “Fast-vqa: Efficient end-to-end video quality assessment with fragment sampling.” European conference on computer vision. Cham: Springer Nature Switzerland, 2022.
- Zhou, Hantao, et al. “UniQA: Unified Vision-Language Pre-training for Image Quality and Aesthetic Assessment.” arXiv preprint arXiv:2406.01069 (2024).
- Avanaki, Nasim Jamshidi, et al. “LAR-IQA: A Lightweight, Accurate, and Robust No-Reference Image Quality Assessment Model.” arXiv preprint arXiv:2408.17057 (2024).
- Wang, Jianyi, Kelvin CK Chan, and Chen Change Loy. “Exploring clip for assessing the look and feel of images.” Proceedings of the AAAI Conference on Artificial Intelligence. Vol. 37. No. 2. 2023.
- Wu, Haoning, et al. “Q-align: Teaching lmms for visual scoring via discrete text-defined levels.” arXiv preprint arXiv:2312.17090 (2023).
文 / Devin&linghu
关注得物技术,每周更新技术干货
要是觉得文章对你有帮助的话,欢迎评论转发点赞~
未经得物技术许可严禁转载,否则依法追究法律责任。
相关文章:
得物端智能视频封面推荐
一、背景 什么要做智能封面? 用户可以在得物购物,也可以在得物社区分享自己的生活。 得物社区中的视频使用双列流,每条内容包含封面、标题等。 对得物社区的创作者而言,选择视频封面是创作链路的重要环节。对得物社区的消费者…...
【Stable Diffusion部署至GNU/Linux】安装流程
以下是安装Stable Diffusion的步骤,以Ubuntu 22.04 LTS为例子。 显卡与计算架构介绍 CUDA是NVIDIA GPU的专用并行计算架构 技术层级说明CUDA Toolkit提供GPU编译器(nvcc)、数学库(cuBLAS)等开发工具cuDNN深度神经网络加速库(需单独下载)GPU驱动包含CUDA Driver(需与CUDA …...
介绍 Liquibase、Flyway、Talend 和 Apache NiFi:选择适合的工具
在现代软件开发中,尤其是在数据库管理和数据集成方面,选择合适的工具至关重要。本文将介绍四个流行的工具:Liquibase、Flyway、Talend 和 Apache NiFi,分析它们的应用、依赖以及如何选择适合的工具。 1. Liquibase 简介ÿ…...
Unity 接入Tripo 文生模型,图生模型
官方网站:https://www.tripo3d.ai/app/home自行注册账号并且登陆下载Unity插件:https://cdn-web.tripo3d.ai/plugin/tripo-unity.zip申请apikey: https://platform.tripo3d.ai/api-keys使用(后续过程就按照第二步下载的插件里面的…...
黑马Redis详细笔记(实战篇---短信登录)
目录 一.短信登录 1.1 导入项目 1.2 Session 实现短信登录 1.3 集群的 Session 共享问题 1.4 基于 Redis 实现共享 Session 登录 一.短信登录 1.1 导入项目 数据库准备 -- 创建用户表 CREATE TABLE user (id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT 用户ID,phone …...
Unity 增量打包AssetBundle
背景 打包太慢了,想要没改动的资源不重新打包浪费时间。 来源 官方文章:https://forum.unity.com/threads/about-incremental-build-and-asset-bundle-hashes.1436032/ 官网AB介绍:https://learn.unity.com/tutorial/assets-resources-and…...
前端 TypeError 错误永久消失术
作者:来自 vivo 互联网大前端团队- Sun Maobin 通过开发 Babel 插件,打包时自动为代码添加 可选链运算符(?.),从而有效避免 TypeError 的发生。 一、背景介绍 在 JS 中当获取引用对象为空值的属性时,程序会立即终止运行并报错&…...
【视频总结】Deep Dive into LLMs like ChatGPT 深入探索像ChatGPT这样的大语言模型|Andrej Karpathy
【视频总结】Deep Dive into LLMs like ChatGPT 深入探索像ChatGPT这样的大语言模型|Andrej Karpathy 大型语言模型(LLM)工作原理与使用指南核心观点模型训练三阶段1. 预训练阶段2. 后训练阶段(Post-training)3. 强化学…...
内网ip网段记录
1.介绍 常见的内网IP段有: A类: 10.0.0.0/8 大型企业内部网络(如 AWS、阿里云) 10.0.0.0 - 10.255.255.255 B类:172.16.0.0/12 中型企业、学校 172.16.0.0 - 172.31.255.255 C类:192.168.0.0/16 家庭…...
本地部署DeepSeek + AnythingLLM 搭建高效安全的个人知识库
环境准备: 本地部署方案请参考博客:windows平台本地部署DeepSeek大模型+Open WebUI网页界面(可以离线使用)-CSDN博客 windows平台本地部署DeepSeek大模型+Chatbox界面(可以离线使用)-CSDN博客 根据本人电脑配置:windows11 + i9-13900HX+RTX4060+DDR5 5600 32G内存 确…...
Xcode证书密钥导入
证书干嘛用 渠道定期会给xcode证书,用来给ios打包用,证书里面有记录哪些设备可以打包进去。 怎么换证书 先更新密钥 在钥匙串访问中,选择系统。(选登录也行,反正两个都要导入就是了)。 mac中双击所有 .p12 后缀的密钥ÿ…...
机械学习基础-5.分类-数据建模与机械智能课程自留
data modeling and machine intelligence - CLASSIFICATION 为什么我们不将回归技术用于分类?贝叶斯分类器(The Bayes Classifier)逻辑回归(Logistic Regression)对逻辑回归的更多直观理解逻辑 /sigmoid 函数的导数我们…...
springcloud集成gateway
本篇文章只介绍gateway模块的搭建步骤,并无gateway详细介绍 gateway详解请查看:SpringCloudGateway官方文档详解 前置处理 父模块中已指定版本 不知道如何选择版本看这篇: 手把手教你梳理springcloud与springboot与springcloudalibaba的版本…...
RocketMQ之偏移量Offset
偏移量:偏移量是 ConsumerQueue 文件中的逻辑位置,表示消息在队列中的顺序。每次消费通过偏移量在索引文件ConsumerQueue中快速找到对应的消息内容。 1.Broker端 Broker端主要通过ConsumerManageProcessor类来处理Offset的更新查询的请求,真…...
2024-2025年主流的开源向量数据库推荐
以下是2024-2025年主流的开源向量数据库推荐,涵盖其核心功能和应用场景: 1. Milvus 特点:专为大规模向量搜索设计,支持万亿级向量数据集的毫秒级搜索,适用于图像搜索、聊天机器人、化学结构搜索等场景。采用无状态架…...
Redis 集群(Cluster)和基础的操作 部署实操篇
三主三从 集群概念 Redis 的哨兵模式,提高了系统的可用性,但是正在用来存储数据的还是 master 和 slave 节点,所有的数据都需要存储在单个 master 和 salve 节点中。 如果数据量很大,接近超出了 master / slave 所在机器的物理内…...
RTD2775QT/RTD2795QT瑞昱显示器芯片方案
RTD2775QT与RTD2795QT:高性能4K显示驱动芯片 RTD2775QT与RTD2795QT是瑞昱半导体公司推出的两款高性能显示驱动芯片,专为满足现代显示设备对高清、高分辨率的需求而设计。这两款芯片不仅支持4K分辨率,还具备丰富的功能和卓越的性能࿰…...
Java进阶面试题
Java 进阶面试问题列表翻译自Java developer interview questions: The hard part,从属于笔者的Java入门与工程实践系列。最近公司打算招几个 Java 开发人员,正巧在 Reddit 上看到了该文,顺手翻译了一波。只是单纯的问题列表,可能…...
Spring Cloud-Sentinel
Sentinel服务熔断与限流 Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量控制、流量路由、熔断降级、系统自适应保护等多个维度来帮助用户保障微服务的稳定性。 官网地址:home | Sentinelhttps://sen…...
21道关于Vue3的面试题及其解析
Vue 3是一种流行的JavaScript框架,它是Vue.js的第三个主要版本,于2020年9月18日正式发布。关于Vue 3的一些关键信息: 文章目录 1. 性能优化2. 组合式API(Composition API)3. 响应式系统改进4. 更好的TypeScript支持5. …...
使用 Visual Studio Code (VS Code) 开发 Python 图形界面程序
安装Python、VS Code Documentation for Visual Studio Code Python Releases for Windows | Python.org 更新pip >python.exe -m pip install --upgrade pip Requirement already satisfied: pip in c:\users\xxx\appdata\local\programs\python\python312\lib\site-pa…...
深入理解 MyBatis 框架的核心对象:SqlSession
Mybatis框架中的SqlSession对象详解 引言 MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的工作。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息࿰…...
day09_实时类标签/指标
文章目录 day09_实时类标签/指标一、日志数据实时采集2、Flume简介2.3 项目日志数据采集Flume配置2.3.1 涉及的Flume组件和参数2.3.2 Nginx日志采集2.3.3 用户行为日志采集 二、Nginx日志数据统计1、日志格式说明2、数据ETL2.1 日志抽取2.1.1 正则表达式2.1.2 基于Spark实现Ngi…...
AWTK-WEB 快速入门(4) - JS Http 应用程序
XMLHttpRequest 改变了 Web 应用程序与服务器交换数据的方式,fetch 是 XMLHttpRequest 继任者,具有更简洁的语法和更好的 Promise 集成。本文介绍一下如何使用 JS 语言开发 AWTK-WEB 应用程序,并用 fetch 访问远程数据。 用 AWTK Designer 新…...
github不翻墙就可以访问
目录 简介资料准备windows平台设置下载运行git设置firefox设置 ubuntu平台设置下载启动服务设置系统代理git设置firefox设置证书 注意事项 简介 由于github访问不稳定,严重影响了国内软件开发,在网上搜索并验证了一些方法.现在整理出来一个可以正常使用的方法, 在windows和Lin…...
【AI-32】浅显易懂地说一下LangChain
好的!我来用最通俗的方式解释一下 LangChain 是什么,以及它为什么在 AI 开发中如此重要。 一句话理解 LangChain LangChain 是一个帮你快速搭建AI应用的工具箱,它把大型语言模型(如 GPT)和外部数据、计算工具、业务流…...
使用 Nginx 搭建代理服务器(正向代理 HTTPS 网站)指南
在网络应用中,代理服务器是用于中转用户请求和服务端响应的工具。正向代理主要用于客户端与外部服务器之间的访问代理,帮助客户端隐藏其 IP 地址或访问受限资源。本文将详细介绍如何使用 Nginx 搭建正向代理服务器,特别是针对 HTTPS 网站的代…...
Linux学习笔记之进程
进程 进程的定义 进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配的基本单位,也是操作系统结构的基础。 例如当QQ程序运行的时候,计算机会先从磁盘读取QQ程序到内存,然后OS管理这个程序,…...
win11 终端乱码导致IDE 各种输出也乱码
因为 win11 终端乱码导致IDE 各种输出也乱码导致作者对此十分头大。所以研究了各种方法。 单独设置终端编码对 HKEY_CURRENT_USER\Console 注册表进行修改对 HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processo 注册表进行修改使用命令[Console]::OutputEncoding [Syst…...
iOS主要知识点梳理回顾-5-运行时方法交换
方法交换可以放在 load 或 initialize 方法中,也可以自己根据时机来空,比如开启某个开关后才需要交换方法。如果是在load中调用,交换工作会在类加载时(程序启动)自动调用;如果是在initialize中调用…...
python后端调用Deep Seek API
python后端调用Deep Seek API 需要依次下载 ●Ollama ●Deepseek R1 LLM模型 ●嵌入模型nomic-embed-text / bge-m3 ●AnythingLLM 参考教程: Deepseek R1打造本地化RAG知识库:安装部署使用详细教程 手把手教你:deepseek R1基于 AnythingLLM API 调用本地…...
Unity开发播放视频
Unity开发播放视频 介绍VideoPlayer原理步骤VideoPlayer动态加载 总结 介绍 原生Unity播放视频VideoPlayer播放视频,这里我没有选择使用插件,还有一个播放视频的插件也可以AVPro Video,这里不过多介绍就说一下原生VideoPlayer的基础用法。 …...
【练习】图论
F. Friendly Group 图中选择一个点-1 边两端点都选择1 边一个端点选择-1 添加链接描述 #include<iostream> using namespace std; #include<vector> #include<cstring> const int N300010; int n,m; vector<int> G[N]; int temp1,temp2; bool vis[N…...
gis风场加载
https://gitee.com/openGPL json数据格式使用v1 “sakitam-gis/mapbox-wind”: “1.1.2” import { WindLayer } from "sakitam-gis/mapbox-wind"; windLayer new WindLayer("wind", res.data, {windOptions: {// colorScale: (m) > {// // consol…...
大疆无人机需要的kml文件如何制作kml导出(大疆KML文件)
大疆无人机需要的轨迹kml文件,是一种专门的格式,这个kml里面只有轨迹点,其它的属性信息都不需要。 BigemapPro提供了专门的大疆格式输出, 软件这里下载 www.bigemap.com 安装后,kml导入如下图: 然后选择…...
【CXX】2 CXX blobstore客户端说明
本示例演示了一个调用blobstore服务的C客户端的Rust应用程序。事实上,我们会看到两个方向的调用:Rust到C以及C到Rust。对于您自己的用例,您可能只需要其中一个方向。 示例中涉及的所有代码都显示在此页面上,但它也以可运行的形式提…...
图数据库neo4j进阶(一):csv文件导入节点及关系
CSV 一、load csv二、neo4j-admin import<一>、导入入口<二>、文件准备<三>、命令详解 一、load csv 在neo4j Browser中使用Cypher语句LOAD CSV,对于数据量比较大的情况,建议先运行create constraint语句来生成约束 create constraint for (s:Student) req…...
3.3 学习UVM中的uvm_driver 类分为几步?
文章目录 前言1. 定义2. 核心功能3. 适用场景4. 使用方法5. 完整代码示例5.1 事务类定义5.2 Driver 类定义5.3 Sequencer 类定义5.4 测试平台 6. 代码说明7. 总结 前言 以下是关于 UVM 中 uvm_driver 的详细解释、核心功能、适用场景、使用方法以及一个完整的代码示例ÿ…...
Docker 常用命令基础详解(一)
一、Docker 初相识 在当今数字化时代,软件开发和部署的效率与灵活性成为了关键因素。Docker,作为一款开源的应用容器引擎,犹如一颗璀璨的明星,照亮了软件开发与部署的道路,为开发者们带来了前所未有的便利。它就像是一…...
机器学习之AAE(Adversarial Autoencoder,对抗自编码器)生成数据样本
对抗自编码器(Adversarial Autoencoder,AAE)是一种结合了自编码器(Autoencoder)和生成对抗网络(GAN)的方法,用于生成新数据样本。它的目标是学习到数据的潜在分布,并通过生成对抗训练来优化潜在空间,使其接近一个已知的简单分布(例如,高斯分布)。 AAE的结构和训练…...
用大模型学大模型03-数学基础 概率论 最大似然估计(MLE)最大后验估计(MAP)
https://metaso.cn/s/r4kq4Ni 什么是最大似然估计(MLE)最大后验估计(MAP)?深度学习中如何应用,举例说明。 好的,我现在需要回答关于最大似然估计(MLE)和最大后验估计&…...
名词解释:npm,cnpm,yarn,vite,vue,electron
1. npm (Node Package Manager) 读音: “N-P-M” 或者直接读作 “npm”。 npm 是 Node.js 的官方包管理器,用于安装、发布和管理 JavaScript 软件包。它允许开发者轻松地共享代码,并且可以通过命令行工具来管理依赖关系。通过 npm init 命令可以交互式…...
ESXi安装【真机和虚拟机】(超详细)
项目简介: ESXi(Elastic Sky X Integrated)是VMware公司开发的一种裸机虚拟化管理程序,允许用户在单一物理服务器上运行多个虚拟机(VM)。它直接安装在服务器硬件上,而不是操作系统之上ÿ…...
每日一题——矩阵最长递增路径
矩阵最长递增路径问题 题目描述数据范围:进阶要求:示例示例 1示例 2 题解思路算法步骤:代码实现代码解释复杂度分析总结 题目描述 给定一个 n 行 m 列的矩阵 matrix,矩阵内所有数均为非负整数。你需要在矩阵中找到一条最长路径&a…...
设置ollama接口能外部访问
为了配置Ollama以允许外网访问,你可以按照以下步骤进行操作: 确认Ollama服务已正确安装并运行: 使用以下命令检查Ollama服务的状态: bash Copy Code systemctl status ollama如果服务未运行,使用以下命令启动它&…...
TOML介绍
0 Preface/Foreword TOML,一种配置文件格式。Toms Obvious Minimal Language. 1 介绍 TOML: Toms Obvious Minimal Language,“显而易见的最小化语言 ” JSON:不支持注释 YAML:过于复杂...
macOS部署DeepSeek-r1
好奇,跟着网友们的操作试了一下 网上方案很多,主要参考的是这篇 DeepSeek 接入 PyCharm,轻松助力编程_pycharm deepseek-CSDN博客 方案是:PyCharm CodeGPT插件 DeepSeek-r1:1.5b 假设已经安装好了PyCharm PyCharm: the Pyth…...
从云原生到 AI 原生,谈谈我经历的网关发展历程和趋势
作者:谢吉宝(唐三) 编者按: 云原生 API 网关系列教程即将推出,欢迎文末查看教程内容。本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三) 在云栖大会的精…...
京东 旋转验证码 分析
声明: 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 逆向分析 使用的第三方接码平台识别…...
R18 XR L1 enhancement
这篇是R18 XR的最后一部分,主要是L1方面的增强。 这部分增强大概的背景如下。 一些 XR 应用(例如增强现实)不仅在 DL 方向需要高数据速率,在 UL 方向也需要高数据速率。如果应用需要在 UL 方向传输视频流量,则 UL 中支持的 XR 用户数量可能非常有限。因此,增加有限的时间…...