当前位置: 首页 > ai >正文

文献阅读笔记【物理信息机器学习】:Physics-informed machine learning

文献阅读笔记:Physics-informed machine learning

  • Summary
  • Research Objective
  • Background / Problem Statement
    • 问题背景
    • 研究现状
    • 需解决的问题
    • 问题出现的原因分析
    • 问题解决思路
  • Method(s)
    • 问题建模
    • 作者解决问题的方法/算法
      • 1. 观测偏差(Observational Biases)
      • 2. 归纳偏差(Inductive Biases)
      • 3. 学习偏差(Learning Biases)
      • 4. 混合方法
    • 是否基于前人的方法:是
    • 基于了哪些:
  • Evaluation
    • 作者如何评估自己的方法:
      • 评估指标:
    • 实验的setup是什么样的:
      • 参数设置:
      • 实验场景:
    • 感兴趣实验数据和结果有哪些:
    • 有没有问题或者可以借鉴的地方:
      • 存在的问题:
      • 可借鉴的地方:
  • Conclusion
    • strong conclusions(明确结论)
    • weak conclusions(待验证/局限结论)
  • Notes
  • References

出版时间:24 May 2021
作者:George Em Karniadakis, Ioannis G. Kevrekidis, Lu Lu, Paris Perdikaris, Sifan Wang & Liu Yang
期刊:Nature Reviews Physics

Summary

【背景】
传统基于偏微分方程(PDE)数值离散的多物理场模拟存在显著局限:难以无缝整合噪声/缺失数据、网格生成复杂、高维参数化PDE问题无法处理;且求解含隐藏物理的逆问题(如推断材料属性)成本极高,需复杂公式与代码。另一方面,纯数据驱动的机器学习(ML)虽在多领域有潜力,但训练深度神经网络(DNN)需大量数据,而科学问题中常面临数据稀缺;且纯ML模型可能因缺乏物理约束导致预测不物理(如违反守恒律)或泛化性差。因此,需构建“物理信息机器学习”(physics-informed learning),将物理定律作为先验约束嵌入ML,解决上述双重局限。

【方法】
核心是通过三种途径将物理知识嵌入ML模型,形成物理信息学习框架:

  1. 观测偏差(Observational biases):通过含物理信息的数据(如多保真观测数据)或数据增强,使模型学习物理结构;
  2. 归纳偏差(Inductive biases):设计特殊网络架构,隐式满足物理约束(如CNN的平移不变性、GNN的图结构、协变网络的旋转/平移不变性、满足辛结构的哈密顿系统网络);
  3. 学习偏差(Learning biases):通过软惩罚损失函数显式约束模型满足物理定律,典型代表为物理信息神经网络(PINNs)——将PDE残差嵌入损失函数,结合自动微分计算导数。

PINN的核心框架以粘性Burgers方程为例,通过“数据损失+PDE残差损失”构建总损失,采用梯度优化器(Adam、L-BFGS)训练网络。

【结果】

  1. 物理信息学习在逆问题与不适定问题中表现优异(如从温度数据反演3D流场、从部分观测反演等离子体电场),且无需完整初始/边界条件;
  2. 小数据场景中泛化性强:通过物理约束将模型限制在低维流形上,少量数据即可训练,且支持空间外推;
  3. 可处理高维与随机问题:如用DeepONets解决高维PDE的维数灾难,用物理信息GAN(PI-GAN)量化随机PDE的参数不确定性;
  4. 应用广泛:覆盖流体力学(咖啡杯流场)、生物物理(4D-flow MRI血管流场)、核聚变(等离子体动力学)、量子化学(FermiNet解薛定谔方程)、材料科学(3D打印材料属性提取)等领域。

【结论】
物理信息学习可无缝整合数据与物理模型,解决传统PDE方法和纯ML的核心局限,尤其适用于小数据、逆问题、高维场景;未来需突破多尺度/多物理问题的高频学习瓶颈、建立标准化基准、完善理论基础(如误差分析),并探索算子回归、内在变量搜索、数字孪生等方向。

Research Objective

  1. 整合物理定律(如PDE、守恒律、对称性)与机器学习,弥补传统PDE数值方法(网格依赖、难整合噪声数据)和纯数据驱动ML(需大数据、预测不物理)的局限;
  2. 实现对多物理、多尺度系统(如地球系统、等离子体、分子动力学)的高效建模,尤其针对逆问题、不适定问题、小数据场景
  3. 提升科学ML模型的可解释性、物理一致性与泛化性,避免纯数据驱动模型的外推偏差;
  4. 探索物理约束嵌入ML的通用框架(如PINNs、DeepONets),并拓展至数字孪生、不确定性量化等前沿应用。

Background / Problem Statement

问题背景

多物理、多尺度系统(如地球系统的时空尺度跨度17个数量级、核聚变边缘等离子体)的建模与预测是开放科学问题。这类系统的动力学由物理、化学、生物过程耦合驱动,传统方法难以平衡精度、效率与数据兼容性。

研究现状

  1. 传统PDE数值方法:过去50年通过有限差分、有限元、谱方法等实现了多尺度物理的理解,但存在固有瓶颈——依赖网格生成(复杂几何成本高)、难以整合噪声/缺失数据、高维参数化PDE(如含数百个不确定参数)计算不可行;
  2. 纯数据驱动ML:ML(尤其深度学习)可处理高维数据、挖掘复杂关联,但在科学问题中面临数据稀缺(实验/模拟成本高)、预测可能违反物理定律(如不满足质量守恒)、可解释性差的问题;
  3. 初步融合尝试:数据同化方法试图结合物理模型与观测,但数据的时空异质性、缺乏通用模型导致效果有限;部分研究(如稀疏识别SINDy)尝试从数据中发现PDE,但依赖大量高质量数据。

需解决的问题

  1. 传统PDE方法:① 无法无缝整合噪声/缺失边界条件;② 高维参数化PDE计算成本极高;③ 逆问题(如推断材料属性)需复杂公式与代码,经济性差;
  2. 纯数据驱动ML:① 科学问题中数据不足,难以训练;② 预测可能不物理(如流体力学中违反Navier-Stokes方程);③ 泛化性差,外推时误差剧增;
  3. 缺乏通用框架:现有融合方法(如数据同化)局限于特定场景,未形成可扩展的物理-ML整合范式。

问题出现的原因分析

  1. 传统PDE方法:依赖完整物理模型与结构化网格,对数据噪声、模型不确定性的鲁棒性差;高维问题受“维数灾难”限制,离散后自由度爆炸;
  2. 纯ML:以“数据拟合”为核心,缺乏物理先验约束,无法利用科学问题中的已知定律(如守恒律、对称性),导致模型在物理约束空间外的预测不可靠;
  3. 跨领域壁垒:PDE数值方法的数学严谨性与ML的经验驱动特性难以结合,缺乏同时兼顾物理一致性与计算效率的理论框架。

问题解决思路

将物理定律(如PDE、守恒律、对称性)作为先验约束嵌入ML模型,形成“物理信息学习”:

  • 对传统PDE方法:用ML的无网格特性、高维拟合能力弥补网格依赖与高维瓶颈;
  • 对纯ML:用物理约束缩小解空间,降低数据需求,确保预测的物理一致性;
  • 核心路径:通过观测偏差(物理数据)、归纳偏差(特殊架构)、学习偏差(软惩罚损失)三种方式嵌入物理,典型实现为PINNs。

Method(s)

问题建模

PDE约束+数据驱动为核心,将科学问题建模为“物理定律正则化的数据拟合问题”,典型形式如下:

  1. 物理约束:以PDE为核心(如粘性Burgers方程,描述流体运动):
    ∂u∂t+u∂u∂x=ν∂2u∂x2\frac{\partial u}{\partial t} + u \frac{\partial u}{\partial x} = \nu \frac{\partial^2 u}{\partial x^2}tu+uxu=νx22u
    其中u(x,t)u(x,t)u(x,t)为流场速度,ν\nuν为粘性系数,需满足初始条件u(x,0)=u0(x)u(x,0)=u_0(x)u(x,0)=u0(x)与Dirichlet边界条件;
  2. 数据约束:观测数据{(xi,ti,ui)}\{(x_i,t_i,u_i)\}{(xi,ti,ui)}(如实验测量的速度/温度);
  3. 目标函数:最小化“数据拟合误差+PDE残差误差”,确保模型同时满足数据与物理。

作者解决问题的方法/算法

核心是三种物理约束嵌入途径,及基于此的PINN、DeepONets等框架:

1. 观测偏差(Observational Biases)

  • 机制:通过含物理信息的数据或数据增强,使模型学习物理结构;
  • 实例:① 用大涡模拟(LES)数据训练NN,构建湍流模型闭合项;② 数据增强生成符合物理的样本(如流体运动的连续性约束样本);
  • 适用场景:有一定物理数据,但不足以直接训练纯ML模型的场景。

2. 归纳偏差(Inductive Biases)

  • 机制:设计特殊网络架构,隐式满足物理约束,无需额外损失惩罚;
  • 典型架构:
    • CNN/GNN:利用平移不变性(流体力学)、图结构(分子动力学);
    • 协变网络(Covariant Networks):满足多体系统的旋转/平移不变性(图1a);
    • 辛网络(SympNets):保留哈密顿系统的辛结构,确保能量守恒;
    • 基于Lax-Oleinik公式的网络:直接表示哈密顿-雅可比PDE的粘性解(图1b),公式为:
      f(x,t)=min⁡i∈{1,...,m}{tL(x−uit)+ai}f(x,t) = \min_{i \in \{1,...,m\}} \left\{ t L\left(\frac{x-u_i}{t}\right) + a_i \right\}f(x,t)=i{1,...,m}min{tL(txui)+ai}
      其中LLL为凸Lipschitz激活函数,ui,aiu_i,a_iui,ai为网络参数,f(x,t)f(x,t)f(x,t)满足HJ-PDE:
      {∂f∂t+H(∇xf)=0x∈Rn,t>0f(x,0)=J(x)x∈Rn\begin{cases} \frac{\partial f}{\partial t} + H(\nabla_x f) = 0 & x \in \mathbb{R}^n, t>0 \\ f(x,0) = J(x) & x \in \mathbb{R}^n \end{cases}{tf+H(xf)=0f(x,0)=J(x)xRn,t>0xRn
  • 优势:物理约束严格满足,无需调优惩罚权重;劣势:仅适用于已知简单对称性(如平移、旋转)的场景,复杂物理难以嵌入。

3. 学习偏差(Learning Biases)

  • 机制:通过软惩罚损失函数,显式约束模型近似满足物理定律,代表为物理信息神经网络(PINNs)
  • PINN核心算法(Box 3):
    1. 构建NN u(x,t;θ)u(x,t;\theta)u(x,t;θ)θ\thetaθ为权重/偏置),输入为时空坐标,输出为PDE解;
    2. 定义总损失函数(数据损失+PDE残差损失):
      L=wdataLdata+wPDELPDE\mathcal{L} = w_{\text{data}} \mathcal{L}_{\text{data}} + w_{\text{PDE}} \mathcal{L}_{\text{PDE}}L=wdataLdata+wPDELPDE
      其中:
      • 数据损失(拟合初始/边界条件与观测):Ldata=1Ndata∑i=1Ndata(u(xi,ti)−ui)2\mathcal{L}_{\text{data}} = \frac{1}{N_{\text{data}}} \sum_{i=1}^{N_{\text{data}}} \left(u(x_i,t_i) - u_i\right)^2Ldata=Ndata1i=1Ndata(u(xi,ti)ui)2
      • PDE残差损失(近似满足PDE):LPDE=1NPDE∑j=1NPDE(∂u∂t+u∂u∂x−ν∂2u∂x2)(xj,tj)2\mathcal{L}_{\text{PDE}} = \frac{1}{N_{\text{PDE}}} \sum_{j=1}^{N_{\text{PDE}}} \left(\frac{\partial u}{\partial t} + u \frac{\partial u}{\partial x} - \nu \frac{\partial^2 u}{\partial x^2}\right)_{(x_j,t_j)}^2LPDE=NPDE1j=1NPDE(tu+uxuνx22u)(xj,tj)2
      • wdata,wPDEw_{\text{data}},w_{\text{PDE}}wdata,wPDE为平衡权重(用户定义或自动调优);
    3. 用梯度优化器(Adam+L-BFGS)最小化损失,直至L<ϵ\mathcal{L}<\epsilonL<ϵ(阈值)。

4. 混合方法

结合上述途径,如:

  • DeepM&Mnet:先用DeepONets分别学习单物理场,再通过监督学习耦合多物理(如电对流、高超声速流);
  • 多保真框架:用低保真数据(如大量有限元模拟)训练基础NN,再用高保真数据(如少量实验)微调,降低数据需求。

是否基于前人的方法:是

物理信息学习的框架基于传统数值方法与ML的融合,核心方法(如PINNs)继承并拓展了前人工作。

基于了哪些:

  1. 传统PDE数值方法:Runge-Kutta积分器(PINN的时间离散灵感)、有限元方法(弱形式PDE残差设计)、多网格方法(CNN的层级结构);
  2. ML基础框架:深度Galerkin方法(Sirignano 2018)、高斯过程回归(物理约束的核方法实现);
  3. 关键前人研究
    • Raissi等人2019年提出的PINN框架(J. Comput. Phys.),首次将PDE残差嵌入NN损失;
    • Brunton等人2016年的SINDy方法(从数据中识别PDE);
    • Lu等人2021年的DeepONets(学习非线性算子,解决PDE的算子回归问题)。

Evaluation

作者如何评估自己的方法:

通过应用案例验证+不确定性量化+与传统方法对比,评估模型的物理一致性、精度、效率与泛化性,核心逻辑是“在传统方法失效的场景(如逆问题、小数据)中验证优势”。

评估指标:

  1. 损失函数值Ldata\mathcal{L}_{\text{data}}Ldata(数据拟合误差)、LPDE\mathcal{L}_{\text{PDE}}LPDE(PDE残差),反映模型对数据与物理的满足程度;
  2. 实验对比精度:与实验测量数据(如粒子图像测速PIV、4D-flow MRI)的误差,如咖啡杯流场反演中速度场的RMS误差;
  3. 物理一致性检验:验证模型预测是否满足核心物理定律(如流体力学中质量守恒、能量守恒的偏差);
  4. 泛化能力:空间外推(如边界外的流场预测)、参数外推(如改变流体粘性系数后的预测稳定性);
  5. 计算效率:与传统方法(如有限元)的计算时间、内存占用对比(如PINN无网格,复杂几何下效率提升1-2个数量级)。

实验的setup是什么样的:

参数设置:

  1. 网络架构
    • 基础模型:多层感知器(MLP,适用于散点数据)、CNN(适用于网格数据,如MRI)、GNN(适用于分子/图结构);
    • 激活函数:ReLU(通用场景)、凸Lipschitz函数(HJ-PDE场景)、自适应激活函数(加速PINN收敛);
  2. 优化器:两阶段优化——先用Adam(学习率1e-3~1e-4)快速下降,再用L-BFGS精细优化;
  3. 权重与采样wdata、wPDEw_{\text{data}}、w_{\text{PDE}}wdatawPDE默认设为1,复杂场景用自动调优;PDE残差采样点{(xj,tj)}\{(x_j,t_j)\}{(xj,tj)}在全域随机生成(密度根据梯度大小自适应调整);
  4. 软件工具:基于TensorFlow/PyTorch,依赖DeepXDE(PINN专用库)、GPyTorch(核方法)、Neural Tangents(网络分析)。

实验场景:

覆盖6大领域,均针对传统方法难处理的问题:

  1. 流体力学:咖啡杯流场(从Tomo-BOS温度数据反演3D速度/压力,无边界条件);
  2. 生物物理:4D-flow MRI(去噪并恢复猪降主动脉的血流速度、压力、血管壁剪应力);
  3. 核聚变:边缘等离子体(从部分电子密度/温度观测反演湍流径向电场);
  4. 量子化学:多电子薛定谔方程(FermiNet,满足费米-狄拉克统计);
  5. 材料科学:3D打印材料属性(多保真框架从压痕数据推断弹性模量与屈服应力);
  6. 分子动力学:DeepMD(用NN替代人工势能函数,实现ab initio精度的百万原子模拟)。

感兴趣实验数据和结果有哪些:

  1. 咖啡杯流场反演(逆问题)
    • 输入:6台相机拍摄的Tomo-BOS温度梯度数据(含噪声);
    • 结果:PINN反演的3D速度场与PIV实验数据的RMS误差<5%,压力场符合流体静力学规律,无需任何边界条件;
  2. 4D-flow MRI增强(小数据+去噪)
    • 输入:低分辨率、高噪声的猪主动脉MRI数据;
    • 结果:PINN(约束Navier-Stokes方程)去噪后信噪比提升30%,血管壁定位误差<0.1mm,剪应力计算精度与侵入式测量一致;
  3. 材料属性提取(多保真)
    • 输入:少量高保真实验数据(3D打印钛合金压痕测试)+ 大量低保真模拟数据(有限元);
    • 结果:屈服应力推断误差从传统方法的100%+降至<5%,弹性模量误差<3%;
  4. 高维PDE求解
    • 场景:144维Allen-Cahn系统(相变问题);
    • 结果:PINN通过协变网络与自适应采样,成功学习亚稳态间的跃迁路径,计算效率比传统有限元提升20倍。

有没有问题或者可以借鉴的地方:

存在的问题:

  1. 谱偏差(Spectral Bias):全连接NN难以学习高频成分(如湍流的小尺度结构),导致多尺度问题中精度不足;
  2. 训练不稳定性:PINN的损失函数含数据与PDE残差项,可能相互竞争导致梯度消失(尤其高维问题);
  3. 理论基础薄弱:缺乏严格的误差分析(如近似误差、优化误差、泛化误差的量化),难以保证收敛性;
  4. 基准缺失:科学问题的物理一致性指标(如守恒律偏差)未标准化,不同方法难以对比。

可借鉴的地方:

  1. 无网格特性:PINN无需网格生成,可直接处理复杂几何(如不规则血管、断裂材料),值得在工程仿真中推广;
  2. 多偏差融合:观测偏差(数据增强)+归纳偏差(特殊架构)+学习偏差(软惩罚)的组合策略,可提升模型鲁棒性,适用于小数据科学问题;
  3. 不确定性量化:B-PINNs(贝叶斯PINN)通过贝叶斯框架量化数据/模型/物理的三重不确定性,为风险决策提供支持;
  4. 软件生态:DeepXDE、SimNet等专用库简化了PINN实现(如自动计算高阶导数、支持复杂几何),降低了入门门槛。

Conclusion

strong conclusions(明确结论)

  1. 物理信息学习可无缝整合数据与物理模型,在部分已知物理、不确定、高维场景中表现优异,解决了传统PDE方法与纯ML的核心局限;
  2. PINNs是逆问题与不适定问题的高效工具:结合领域分解后可扩展至大规模工程问题(如多物理场耦合),且代码实现简单(基于TensorFlow/PyTorch);
  3. 核方法(如高斯过程)与NN的结合(如Neural Tangents分析)为物理信息学习提供了可解释性基础,可量化模型不确定性;
  4. 物理约束嵌入ML的三种途径(观测、归纳、学习偏差)并非互斥,混合方法(如多保真+PINN)可进一步提升性能,适用于多数科学问题。

weak conclusions(待验证/局限结论)

  1. 多尺度、多物理问题仍需突破:当前方法难以同时处理高频与低频成分,学习多物理耦合时计算成本显著增加;
  2. 理论框架不完善:缺乏统一的误差分析与收敛性证明,模型参数(如PINN的权重wPDEw_{\text{PDE}}wPDE)仍依赖经验调优;
  3. 标准化基准缺失:需建立覆盖多领域的物理信息学习基准数据集(如含噪声的PDE解、多保真观测)与评估指标;
  4. 数字孪生等前沿应用的可行性需进一步验证:物理信息学习在实时数据同化、动态模型更新中的效率与稳定性尚未充分测试。

Notes

  1. 关键公式与原理补充

    • 哈密顿-雅可比PDE的NN表示(式1、2):直接将物理公式嵌入网络架构,无需数值离散,适用于高维HJ-PDE;
    • PINN的自动微分:通过TensorFlow的tf.gradients计算一阶/二阶导数(如∂u∂t=tf.gradients(u,t)\frac{\partial u}{\partial t} = \text{tf.gradients}(u, t)tu=tf.gradients(u,t)),DeepXDE的dde.grad.hessian支持懒计算与梯度缓存,提升高阶导数效率;
    • 不确定性量化的三种来源:① 物理不确定性(如随机PDE);② 数据不确定性(噪声/缺失);③ 模型不确定性(NN近似误差),需针对性处理(如SPDE用GAN、数据噪声用B-PINNs)。
  2. 核心术语定义

    • 多保真数据(Multi-fidelity data):不同精度的数据(如实验为高保真、简化模拟为低保真),用于降低数据需求;
    • 谱偏差(Spectral Bias):NN优先学习低频成分,高频成分收敛慢的现象,需通过Fourier特征、领域分解缓解;
    • 辛结构(Symplectic Structure):哈密顿系统的核心属性,SympNets通过架构设计保留该结构,确保能量守恒;
    • 算子回归(Operator Regression):学习输入(如PDE源项)到输出(如PDE解)的非线性算子(如DeepONets),适用于参数化PDE的快速求解。
  3. 未来研究方向提示

    • 内在变量搜索:从观测中自动识别物理意义明确的变量(如用流形学习发现“ emergent space-time”);
    • 等变网络(Equivariant Networks):内置物理对称性(如洛伦兹不变性)的架构,提升高能物理、量子力学场景的适用性;
    • 数字孪生:物理信息学习可融合实时传感器数据与物理模型,实现工业设备(如发动机)的动态校准与故障预测。

References

  1. Raissi, M., Perdikaris, P. & Karniadakis, G. E. Physics-informed neural networks: a deep learning framework for solving forward and inverse problems involving nonlinear PDEs. J. Comput. Phys. 378, 686–707 (2019)(PINN的奠基性论文);
  2. Lu, L., Jin, P., Pang, G. et al. Learning nonlinear operators via DeepONet based on the universal approximation theorem of operators. Nat. Mach. Intell. 3, 218–229 (2021)(算子回归的核心工作,解决高维PDE);
  3. Cai, S. et al. Flow over an espresso cup: inferring 3-D velocity and pressure fields from Tomo-BOS via PINNs. J. Fluid Mech. 915 (2021)(PINN在流体逆问题中的经典应用);
  4. Lu, L. et al. Extraction of mechanical properties of materials through deep learning from instrumented indentation. Proc. Natl Acad. Sci. USA 117, 7052–7062 (2020)(多保真物理信息学习在材料科学的应用);
  5. Yang, L., Meng, X. & Karniadakis, G. E. B-PINNs: Bayesian physics-informed neural networks for forward and inverse PDE problems with noisy data. J. Comput. Phys. 415, 109913 (2021)(不确定性量化的关键工作);
  6. Haghighat, E. & Juanes, R. SciANN: a Keras/TensorFlow wrapper for scientific computations and physics-informed deep learning. Comput. Meth. Appl. Mech. Eng. 373, 113552 (2020)(物理信息学习的实用工具库)。
http://www.xdnf.cn/news/18482.html

相关文章:

  • 【秋招笔试】2025.08.23美团研发岗秋招笔试题
  • SpringBoot applicationContext.getBeansOfType获取某一接口所有实现类,应用于策略模式
  • 深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第五章整理
  • 墨刀原型设计工具操作使用指南及实践操作
  • 玩转Vue3高级特性:Teleport、Suspense与自定义渲染
  • 【假设微调1B模型,一个模型参数是16bit,计算需要多少显存?】
  • 【ABAP4】创建Package
  • 【力扣 Hot100】每日一题
  • Agent原理、构建模式(附视频链接)
  • 深度解析Bitmap、RoaringBitmap 的原理和区别
  • 讲点芯片验证中的统计覆盖率
  • 【攻防世界】easyupload
  • 量子计算驱动的Python医疗诊断编程前沿展望(上)
  • WSL Ubuntu数据迁移
  • 【数据分析】宏基因组荟萃分析(Meta-analysis)的应用与实操指南
  • 容器安全实践(三):信任、约定与“安全基线”镜像库
  • 应用篇#1:YOLOv8模型在Windows电脑摄像头上的部署
  • 26.内置构造函数
  • c# .net支持 NativeAOT 或 Trimming 的库是什么原理
  • 数据库优化提速(三)JSON数据类型在酒店管理系统搜索—仙盟创梦IDE
  • python企微发私信
  • 【React ✨】从零搭建 React 项目:脚手架与工程化实战(2025 版)
  • 文字学的多维透视:从符号系统到文化实践
  • 2025年09月计算机二级MySQL选择题每日一练——第五期
  • Go语言实战案例-Redis连接与字符串操作
  • 井云智能体封装小程序:独立部署多开版 | 自定义LOGO/域名,打造专属AI智能体平台
  • IDEA控制台乱码(Tomcat)解决方法
  • IDEA相关的设置和技巧
  • 机器人 - 无人机基础(5) - 飞控中的传感器(ing)
  • CTFshow Pwn入门 - pwn 19