元数据驱动的 AI 开发:从数据目录到模型训练自动化
元数据驱动的 AI 开发:从数据目录到模型训练自动化
一、引言
在人工智能技术蓬勃发展的当今时代,AI 开发已成为各行业实现创新的核心驱动力。然而,数据规模爆炸式增长、类型复杂多样、来源分散等问题,导致数据管理混乱、模型训练效率低下等挑战。元数据作为描述数据的数据,通过数据目录技术实现集中管理,正成为破解 AI 开发瓶颈的关键。本文将结合金融科技、医疗等领域案例,深入解析元数据如何驱动数据准备、特征工程、模型训练全流程自动化,并附关键代码示例与思维导图总结,助力读者掌握落地实践。
二、元数据与数据目录技术概述
(一)元数据的定义与分类
元数据是描述数据的结构化信息,可分为四大类:
技术元数据:记录数据类型、表结构、存储位置等技术属性(如 MySQL 表的字段类型、索引信息)。
业务元数据:从业务视角定义数据含义,如 “信用评分” 的计算规则、“客户流失” 的业务定义。
操作元数据:记录数据处理流程,如数据加载时间、ETL 任务执行日志。
管理元数据:涵盖数据权限、安全策略,如 “用户身份证号” 的访问控制规则。
(二)数据目录的核心功能
数据目录是元数据的集中管理平台,具备五大核心能力:
元数据集成:自动采集数据库、数据湖等多源元数据,支持 Apache Atlas、Alation 等工具。
数据发现:通过业务术语搜索(如 “客户交易数据”)、数据血缘分析(追踪数据来源)快速定位数据。
质量评估:定义完整性、准确性等指标,实时监控数据质量(如检测缺失值比例)。
合规管理:识别敏感数据(如医疗记录),分级设置访问权限,生成合规审计报告。
三、元数据驱动的数据准备与管理
(一)数据发现与整合:代码示例与金融案例
传统数据发现依赖人工搜索,效率低下。借助数据目录的元数据搜索能力,可通过业务术语快速定位目标数据。以下是提取 MySQL 表技术元数据的代码示例,用于检测数据格式一致性:
import sqlalchemy ;from sqlalchemy import inspect ;\# 连接数据库并提取表结构 ;engine = sqlalchemy.create\_engine('mysql+pymysql://user:password@host:port/db\_name') ;inspector = inspect(engine) ;table\_name = 'customer\_transactions' ;columns = inspector.get\_columns(table\_name) ;\# 打印字段元数据(类型、注释) ;for col in columns: ;print(f"字段名: {col\['name']}, 类型: {col\['type']}, 注释: {col.get('comment', '无')}") ;
案例说明:金融交易数据格式统一
某金融科技公司在客户信用评估中,通过上述代码发现transaction_amount
字段存在类型不一致(浮点型与字符串型混合)。基于业务元数据中 “交易金额应为数值型” 的定义,数据工程师自动生成转换规则:
\# 自动将字符串转换为浮点型(处理异常值:非数字字符串设为None) ;data\['transaction\_amount'] = pd.to\_numeric(data\['transaction\_amount'], errors='coerce') ;
最终实现跨数据源(内部交易系统与外部征信数据)的格式统一,数据整合效率提升 60%。
(二)数据质量评估:医疗数据缺失值处理
元数据定义的质量指标(如缺失值比例)可驱动自动化清洗。以电子健康记录(EHR)为例,blood_pressure
字段缺失率达 15%,根据业务元数据 “血压值与年龄、性别强相关”,采用回归模型填充缺失值:
from sklearn.linear\_model import LinearRegression ;\# 提取相关特征构建训练集 ;X = data\[\['age', 'gender']] # gender已转换为数值编码 ;y = data\['blood\_pressure'] ;model = LinearRegression().fit(X.dropna(), y.dropna()) ;\# 填充缺失值 ;data\['blood\_pressure'] = data\['blood\_pressure'].fillna(model.predict(X)) ;
(三)合规管理:敏感数据分级管控
在金融数据中,id_number
(身份证号)属于高敏感数据。通过管理元数据标记后,数据目录自动限制访问权限,并在数据导出时触发加密:
\# 数据导出时自动加密(示例:AES加密) ;from cryptography.fernet import Fernet ;key = Fernet.generate\_key() ;cipher = Fernet(key) ;encrypted\_id = cipher.encrypt(data\['id\_number'].astype(str).values.encode()) ;
四、元数据在模型开发中的应用
(一)特征工程自动化:金融信用评估案例
结合元数据定义的特征类型(分类 / 数值),使用scikit-learn
动态构建特征处理 Pipeline:
import pandas as pd ;from sklearn.compose import ColumnTransformer ;from sklearn.preprocessing import OneHotEncoder, StandardScaler ;\# 元数据定义特征类型 ;metadata = { ;'categorical': \['occupation', 'industry'], # 分类特征 ;'numerical': \['income', 'credit\_score'] # 数值特征 ;} ;\# 构建自动化特征处理流程 ;preprocessor = ColumnTransformer( ;transformers=\[ ;('cat', OneHotEncoder(), metadata\['categorical']), ;('num', StandardScaler(), metadata\['numerical']) ;] ;) ;\# 应用于示例数据 ;data = pd.DataFrame({ ;'occupation': \['engineer', 'teacher', 'student'], ;'income': \[8000, 6000, 3000], ;'credit\_score': \[750, 700, 650] ;}) ;processed\_data = preprocessor.fit\_transform(data) ;print(f"处理后特征维度:{processed\_data.shape}") # 输出:(3, 5)(独热编码后分类特征扩展为3维,数值特征2维) ;
价值:特征工程效率提升 40%
通过元数据自动识别特征类型,避免手动编写转换代码,且支持动态扩展新特征(如新增education_level
分类特征时,仅需更新元数据定义)。
(二)模型训练实验管理:MLflow 记录元数据
使用 MLflow 自动化记录超参数、评估指标与模型版本,解决 “模型训练过程不可复现” 问题:
import mlflow ;from sklearn.ensemble import RandomForestClassifier ;from sklearn.metrics import accuracy\_score ;\# 定义超参数空间(来自元数据) ;param\_space = { ;'n\_estimators': \[50, 100, 200], ;'max\_depth': \[None, 10, 20] ;} ;\# 启动实验并记录元数据 ;with mlflow.start\_run(run\_name="credit\_model\_v1"): ;for n\_est in param\_space\['n\_estimators']: ;for max\_d in param\_space\['max\_depth']: ;model = RandomForestClassifier(n\_estimators=n\_est, max\_depth=max\_d) ;model.fit(X\_train, y\_train) ;acc = accuracy\_score(y\_test, model.predict(X\_test)) ;\# 记录参数与指标 ;mlflow.log\_params({'n\_estimators': n\_est, 'max\_depth': max\_d}) ;mlflow.log\_metric('test\_accuracy', acc) ;\# 保存模型 ;mlflow.sklearn.log\_model(model, "model") ;
五、元数据驱动的模型训练自动化
(一)超参数优化:Optuna 动态搜索最佳配置
基于元数据定义的参数范围(如learning_rate
在 0.01-0.1 之间),使用 Optuna 实现自动化搜索:
import optuna ;\# 目标函数:根据元数据约束参数范围 ;def objective(trial): ;params = { ;'n\_estimators': trial.suggest\_int('n\_estimators', 50, 200), ;'learning\_rate': trial.suggest\_float('learning\_rate', 0.01, 0.1), ;'max\_depth': trial.suggest\_int('max\_depth', 5, 30) ;} ;model = GradientBoostingClassifier(\*\*params) ;model.fit(X\_train, y\_train) ;return model.score(X\_test, y\_test) # 以准确率为优化目标 ;\# 启动优化(20次试验) ;study = optuna.create\_study(direction='maximize') ;study.optimize(objective, n\_trials=20) ;print(f"最优参数:{study.best\_params},最高准确率:{study.best\_value}") ;
(二)数据变化触发重训:电商推荐系统实时更新
数据目录监控到用户行为数据(如点击、购买记录)更新后,自动触发模型重训流程:
\# 伪代码:检测数据更新时间戳 ;if new\_data.timestamp > last\_train.timestamp: ;trigger\_airflow\_dag(dag\_id="recommendation\_model\_training") # 调用Airflow调度训练任务 ;
六、案例分析:金融科技公司实践成果
某金融科技公司通过元数据驱动开发,实现三大核心价值:
数据准备效率:数据查找时间从 “数天” 缩短至 “数小时”,数据清洗耗时减少 50%。
模型开发周期:从 2-3 个月缩短至 1-2 周,超参数优化效率提升 3 倍。
合规性:敏感数据访问记录完整审计,符合 GDPR 与金融行业监管要求。
七、思维导图
八、结论
元数据驱动的 AI 开发通过数据目录实现全流程赋能:从数据发现的 “精准定位”,到特征工程的 “智能处理”,再到模型训练的 “自动化调优”,最终形成高效、可复现、合规的开发闭环。尽管面临元数据质量与系统集成等挑战,随着技术工具的成熟(如智能化数据目录、自动化框架),该模式将成为企业 AI 落地的标配,推动各行业从 “数据驱动” 迈向 “元数据驱动” 的智能时代。
相关文章:
元数据驱动的 AI 开发:从数据目录到模型训练自动化
元数据驱动的 AI 开发:从数据目录到模型训练自动化 一、引言 在人工智能技术蓬勃发展的当今时代,AI 开发已成为各行业实现创新的核心驱动力。然而,数据规模爆炸式增长、类型复杂多样、来源分散等问题,导致数据管理混乱、模型训练…...
从OpenAI收购实时数据引擎揭示AI数据库进化方向
第一章:一场技术并购背后的“数据战争” 1.1 OpenAI为何盯上Rockset? 当OpenAI宣布收购Rockset时,数据库圈层炸开了锅。这家成立于2016年的公司,其创始人团队堪称“数据库界梦之队”:CTO Dhruba Borthakur曾主导Face…...
Linux0.11内存管理:相关代码
ch13_2 源码分析 boot/head.s 页表初始化: 目标:初始化分页机制,将线性地址空间映射到物理内存(前 16MB),为保护模式下的内存管理做准备。核心流程 分配页目录表和页表的物理内存空间(通过 .…...
ShaderToy学习笔记 03.多个形状和旋转
1. 正方形和旋转 1.1. 正方形 要绘制一个正方形,我们需要定义一个点到正方形边界的距离函数。对于中心在原点的正方形,其数学表达式为: 对于一个点 p(x,y) 到正方形边界的距离函数可以表示为: d max(|x|, |y|) - r 其中: |x| 和 |y| 分…...
Arduino+ESP01S烧录
这种办法不使用与ThonnyMircopython 前言 这里我们使用烧录器烧录,淘宝十几块钱一个的东西,ESP01S做一个WIFI继电器还是蛮有用的,就是烧录起来不太方便,传统的办法接线麻烦,需多次上电,也可能因为电源问题…...
什么是Lua模块?你会如何使用NGINX的Lua模块来定制请求处理流程?
大家好,我是锋哥。今天分享关于【什么是Lua模块?你会如何使用NGINX的Lua模块来定制请求处理流程?】面试题。希望对大家有帮助; 什么是Lua模块?你会如何使用NGINX的Lua模块来定制请求处理流程? 1000道 互联…...
小白自学python第三天
学习python第三天 一、函数 1、函数介绍 函数就是组织好的,可重复使用的,用以实现特定功能的代码块。 现在我们现在需要统计多个字符串长度并且不考虑使用内置函数,你会怎么做?我们先用一种原始人办法看看吧: str…...
【CF】Day44——Codeforces Round 908 (Div. 2) C + Codeforces Round 1020 (Div. 3) DE
C. Anonymous Informant 题目: 思路: 比这场的D难,虽然也不是很难 一个很容易想到的就是由当前状态推出初始状态,那么怎么推呢? 一个性质就是如果对于某一个 x 它可以执行左移操作的话,那么它一定会到数组…...
深入理解HashMap:Hash冲突的解决机制
引言 HashMap 是 Java 集合框架中最常用的数据结构之一,它通过键值对的形式存储数据,并利用哈希算法实现高效的插入、删除和查询操作。然而,在实际使用中,由于哈希函数的有限性和哈希桶数量的限制,不可避免地会出现 哈…...
Datawhale AI春训营二期---使用AI实现老人的点餐效果(关于task2的相关思考)
文章目录 1.多次测试的结果2.分数是如何提高的3.关于上分点拨4.关于task2的收获 1.多次测试的结果 第一次和第二次的,都是使用的baseline: 第三次的: 2.分数是如何提高的 之前的几次都是通过这个baseline进行运行的,然后今天是了解了一下这…...
摩尔投票法详细介绍
原理 摩尔投票法(Boyer-Moore Voting Algorithm)是一种用于在存在多数元素的数组中,高效找出出现次数超过数组长度一半的元素的算法。其核心思想是通过元素抵消策略,逐步缩小候选范围,最终确定多数元素。 核心假设&a…...
DP之书架
现按一定顺序给出所有要放置于书架上的书,共有 n 本,第 i 本书有一个长度 hi。 书架有若干层,层与层之间的宽度不一定相等,但是一层的宽度不能小于其上所摆放的任何一本书的长度。同时,每层上的书的长度之和不能超过…...
Python Cookbook-6.11 缓存环的实现
任务 你想定义一个固定尺寸的缓存,当它被填满时,新加入的元素会覆盖第一个(最老的)元素。这种数据结构在存储日志和历史信息时非常有用。 解决方案 当缓存填满时,本节解决方案及时地修改了缓存对象,使其从未填满的缓存类变成了…...
计算机网络基本概念
层次名称主要功能第七层应用层直接面向用户,提供应用服务(如浏览网页、发邮件)第六层表示层处理数据格式、加密解密、压缩解压第五层会话层建立、管理、终止会话(连接)第四层传输层提供端到端的数据传输(如…...
Eigen线性代数求解器(分解类)
1. 核心分解类概览 Eigen 提供多种矩阵分解方法,适用于不同矩阵类型(稠密/稀疏、正定/非正定等): 分解类适用矩阵类型分解形式典型应用场景PartialPivLU方阵(可逆)APLUAPLU通用线性方程组求解FullPivLU任…...
【Android】四大组件之Service
目录 一、什么是Service 二、启停 Service 三、绑定 Service 四、前台服务 五、远程服务扩展 六、服务保活 七、服务启动方法混用 你可以把Service想象成一个“后台默默打工的工人”。它没有UI界面,默默地在后台干活,比如播放音乐、下载文件、处理…...
VO包装类和实体类分别是什么?区别是什么?
VO包装类和实体类 1. 实体类(Entity Class)是什么?2. VO包装类(Value Object Class)是什么?3. VO包装类和实体类的区别4. 实际应用中的区别5. 举例5.1. 实体类(Entity Class)的定义与…...
如何创建一个C#项目(基于VS2022版)
一.先找到要保存项目的位置,新建一个文件夹 二.打开VisualStudio,选择创建新项目 三.选择模版: 选择操作语言和操作系统 这个是跨平台的 初学在windows系统上,可选择其他,下面这个是不带窗体模版 也可根据需要选择带窗体模版 点击下一步 填写项目名称,选择项目保存位置,填写解…...
RabbitMQ 四种交换机(Direct、Topic、Fanout、Headers)详解
本文是博主在梳理 RabbitMQ 知识的过程中,将所遇到和可能会遇到的基础知识记录下来,用作梳理 RabbitMQ 的整体架构和功能的线索文章,通过查找对应的知识能够快速的了解对应的知识而解决相应的问题。 文章目录 一、直连交换机(Dire…...
聚合分销系统开发:短剧小说外卖网盘电商cpscpa系统
聚合分销系统是一种整合了多种分销项目和功能的综合性平台,其核心在于通过CPS(按销售付费)和CPA(按行为付费)两种模式,为推广者提供多样化的赚钱机会。以下是聚合分销系统的主要项目和功能: 一…...
【Flume 】Windows安装步骤、配置环境
🛠 Flume 是什么? Apache Flume 是一个高效、可靠、可扩展的数据收集系统,通常用于收集日志、流数据,比如收集数据到 HDFS、Kafka 等。 虽然 Flume 本身是为 Linux 服务器设计的,但 在 Windows 本地也是能跑起来的&a…...
【信息系统项目管理师】高分论文:论质量管理和进度管理(智慧旅游平台建设项目)
更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 论文1、规划质量管理2、质量保证3、质量控制论文 2019年3月,我作为项目经理,参加了某市智慧旅游平台建设项目,负责项目的全面管理, 该项目以打造一流的国内外生态旅游城市为目标,旨在大数据云平台建设的基…...
一致性哈希详解:优雅地扩展分布式系统
引言 对于哈希算法,相信大家一定不会陌生。它经常被用在负载均衡、分库分表等场景中。例如,在进行分库分表时,我们可能初步根据业务分析,确定 128 张表足以满足当前的数据量需求。此时,当需要插入或查询一条记录时&am…...
pytest 技术总结
目录 一 pytest的安装: 二 pytest有三种启动方式: 三 用例规则: 四 配置框架: 一 pytest的安装: pip install pytest # 安装 pip install pytest -U # 升级到最新版 二 pytest有三种启动方式: 1…...
数据库MySQL学习——day5(总结与复习实践)
文章目录 1、复习总结1.1. 数据库基础1.2. 表操作1.3. 数据操作1.4. 更新与删除 2、实践任务:创建学生管理系统数据库2.1. 数据库设计2.2. 创建表的SQL语句2.3. 插入示例数据2.4. 查询与数据操作示例 3、调试与练习4、 今日小结 1、复习总结 1.1. 数据库基础 数据…...
unity bug
发现一个奇怪的bug,就是某些unity版本打包apk时候不允许StreamingAssets里面有中文文件或者中文路径。比如下图这面这俩都是不行的。 解决方案:中文改为英文即可。 一般报错信息如下: > Configure project :launcher WARNING:The option s…...
苹果计划2026年底前实现美版iPhone“印度造”,以减轻关税及地缘政治风险
基于 6 个来源 据多家媒体报道,苹果公司计划在2026年底前,实现在印度组装销往美国的大部分或全部iPhone手机,以减轻关税和地缘政治紧张局势带来的风险。这一目标意味着苹果需将印度的iPhone产量增加一倍以上,凸显其供应链多元化战…...
新增Webhook通知功能,文档目录树展示性能优化,zyplayer-doc 2.5.1 发布啦!
zyplayer-doc是一款适合企业和个人使用的WIKI知识库管理工具,支持在线编辑富文本、Markdown、表格、Office文档、API接口、思维导图、Drawio以及任意的文本文件,支持基于知识库的AI问答,专为私有化部署而设计,最大程度上保证企业或…...
【量化交易笔记】17.多因子的线性回归模型策略
前言 上一篇介绍了 因子的评价和分析方法,让我知道如何判断该因子的作用,以及对最终结果的影响,其最大的问题,他只能评价和分析单因子,而对多个因子,不能直接加以评价。我们自然会想到,如果是多…...
五年经验Java开发如何破局创业
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息文章目录 五年经验Java开发如何破局创业一、创业方向筛选与优劣势分析**方向1:技术教育/在线课程开发****方向2:企业级技术服务外包****方向3:技…...
定制一款国密浏览器(11):SM2算法的椭圆曲线参数定义
在国密算法中,SM2 算法是最复杂的,不仅是算法本身比较复杂,其应用场景也复杂。不管 SM2 算法本身有多复杂,作为开发者,我们需要知道的是 SM2 算法是建立在椭圆曲线算法(ECC)之上。关于 SM2 算法和椭圆曲线算法之间的关系,参考我之前的一篇文章: 解读国密非对称加密算…...
RAG技术与应用---0426
大语言模型>3.10 课程中会用到python 工具箱: faiss,modelscope,langchain,langchain_community,PyPDF2 1)大模型应用开发的三种模式 提示词没多少工作量,微调又花费时间费用,RAG是很多公司招聘用来对LLM进行应用…...
STM32的开发环境介绍
目录 STM32软件环境 Keil软件在线安装 其他软件环境安装 STM32开发的几种方式 STM32寄存器版本和库函数版本 标准外设库的作用: STM32软件环境 STM32 的集成开发环境(IDE):编辑编译软件 常见的环境: (1)KEIL&a…...
【生成式AI】从原理到实践的创造性革命
目录 前言技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键技术模块说明技术选型对比 二、实战演示环境配置要求核心代码实现(文生图) 三、性能对比测试方法论量化数据对比结果分析 四、最佳实践推荐方…...
Win下Pycharm运行/调试配置脚本形参执行替换Linux下终端执行,进行调试需要注意的
Linux下终端执行 python demo/image_demo.py demo/demo.jpg rtmdet_tiny_8xb32-300e_coco.py --weights rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth --device cpuWin下Pycharm运行/调试配置脚本形参执行 主要改红色两处 如果工作目录正确,脚本形参…...
Pytorch(无CPU搭建)+Jupyter
2024年最新最简洁深度学习环境配置:AnacondaPyTorch(CPU、GPU)VScodePycahrm_哔哩哔哩_bilibili 跟 PyCharm說再見, [VSCode] PythonJupyter 超牛逼的功能 ! 5分鐘大幅提升編碼效率~ 數據分析、AI大神必備_哔哩哔哩_bilibili...
类的高级特性与语法细节
static 静态关键字 Java中的static关键字用于修饰类的成员(属性或方法),表示“静态”的含义,即属于类本身,而非某个对象。静态成员在内存中只有一份,在类加载时初始化,生命周期贯穿程序运行始终…...
基于 RAG 的 Text2SQL 全过程的 Python 实现详解,结合 LangChain 框架实现自然语言到 SQL 的转换
什么是RAG 一、核心流程:三阶段协同 RAG的核心流程分为检索(Retrieval)、增强(Augmentation)、生成(Generation)三个阶段,形成“检索→知识整合→生成”的闭环。 1. 检索ÿ…...
使用 OpenCV 进行视觉图片调整的几种常见方法
以下是使用 OpenCV 进行视觉图片调整的几种常见方法: 调整图片大小 指定目标尺寸:使用cv2.resize()函数,通过设定目标图像的宽度和高度来调整图片大小。例如,将图片调整为 200x200 像素: import cv2 image cv2.imre…...
【特殊场景应对9】视频简历的适用场景与风险分析
写在最前 作为一个中古程序猿,我有很多自己想做的事情,比如埋头苦干手搓一个低代码数据库设计平台(目前只针对写java的朋友),比如很喜欢帮身边的朋友看看简历,讲讲面试技巧,毕竟工作这么多年,也做到过高管,有很多面人经历,意见还算有用,大家基本都能拿到想要的offe…...
Dify 1.3.0 为 LLM 节点引入了结构化输出支持
Dify 1.3.0 为 LLM 节点引入了结构化输出支持 0. 引言1. 使用方法 0. 引言 Dify 1.3.0 开始,在 LLM 节点支持结构化输出:Dify 已经为 LLM 节点引入了结构化输出支持。这意味着您的语言模型现在可以返回整齐组织且易于处理的数据。后端实现由 Nov1c444 在…...
【Linux网络】HTTP协议全解析 - 从请求响应到方法与Header
📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…...
JSP实现用户登录注册系统(三天内自动登录)
JSP实现用户登录注册系统 引言 在Web开发中,用户认证是最基础且核心的功能之一。本文基于JSP技术,实现了一个包含注册、登录、自动登录(3天内)、退出等功能的用户系统,并在过程中解决了Cookie字符错误、错误信息回显…...
大数据模型现状分析
大数据模型现状分析 一、引言 在当今数字化时代,数据以前所未有的速度增长,大数据已成为推动各行业发展的核心动力。大数据模型作为挖掘数据价值的关键工具,正受到广泛关注与深入研究。通过对海量、多样且高速产生的数据进行处理和分析&…...
代码随想录算法训练营第二十八天
LeetCode题目: 509. 斐波那契数70. 爬楼梯746. 使用最小花费爬楼梯2444. 统计定界子数组的数目(每日一题) 其他: 今日总结 往期打卡 动态规划解题步骤: 确定递推公式确定遍历顺序记忆化搜索(确定dp数组以及下标的含义与初始化值)递推优化与空间优化 509. 斐波那契数 跳转: 5…...
HTML与安全性:XSS、防御与最佳实践
HTML 与安全性:XSS、防御与最佳实践 前言 现代 Web 应用程序无处不在,而 HTML 作为其基础结构,承载着巨大的安全责任。跨站脚本攻击(XSS)仍然是 OWASP Top 10 安全威胁之一,对用户数据和网站完整性构成严…...
三维重建(二十)——思路整理与第一步的进行
文章目录 一、整体思路二、细分三、之前存在问题四、任务安排五、第一步——找到内参并选定一种5.1 train的RTK5.2 test的RTK5.3 各选择一个5.3.1 train-185.3.2 test-193一、整体思路 这部分主要是宏观的讲一下整体框架。 从gshell里面提取核心参数,放入py3d,渲染出图片,…...
判断 ONNX 模型是否支持 GPU
🔍 判断 ONNX 模型是否支持 GPU 的几个关键点: ✅ 1. 检查模型支持的 Execution Provider 可以通过下面的代码打印出来当前模型使用了什么设备: 需要安装好:onnxruntime-gpu import onnxruntime as ort session ort.InferenceSe…...
CANFD技术在实时运动控制系统中的应用:协议解析、性能测试与未来发展趋势
摘要: 本文深入探讨了CANFD技术在实时运动控制系统中的应用。通过对传统CAN协议与CANFD协议的对比分析,详细阐述了CANFD在提升数据传输效率、增强系统实时性与稳定性方面的优势。文章结合具体测试案例,对CANFD总线的性能指标进行了全面评估&a…...
Java基础 4.26
1.访问修饰符细节 package com.logic.modifier;public class A {public int n1 100;protected int n2 200;int n3 300;private int n4 400;public void m1() {//在同一个类中 可以访问public protected 默认 private 修饰属性和方法System.out.println(n1 " " …...