Skip to main content

欢迎来到FEMATHS小组学习日志

· 9 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

FEMATHS 学习小组的故事可以追溯到 2023 年 6 月。当时,JoyBunzqqqqqqj1110Tanger 三人决定一起攻读与 PINNPhysics-Informed Neural Networks)相关的论文,以突破各自在学习中遇到的瓶颈。

但在阅读过程中,大家逐渐意识到:不仅 JoyBunzqqqqqqj1110 对 PINN 感到困惑,连相对熟悉一些的 Tanger 也有许多难以理解的地方。于是我们决定边读论文边做笔记。虽然这些笔记可能显得 粗浅、幼稚,甚至不乏理解上的偏差,但我们仍希望将它们整理出来。我们相信,通过写笔记的方式,可以尽可能清晰地梳理出 PINN 以及人工智能相关论文中的核心思想和原理。我们希望用最朴素的学习方法,把复杂的内容讲明白——用简单的努力,积累不平凡的价值

这,就是 FEMATHS 小组学习日志 的由来。

后来,随着 Tanger 面临考研与工作的压力,科研学习和小组学习日志一度中断。直到 2025 年,桂林电子科技大学数学与计算科学学院公布拟录取名单,Tanger 顺利被录取。这也成为重新启动学习日志的契机——新的笔记就此续写。

从入门到入土?不,是精通!科技论文完全指南:如何找到一篇合适的科技论文

· 8 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

科技论文是学者与研究人员进行学术交流的重要方式。通过阅读科技论文,不仅可以了解当前领域的研究进展,还能提升自己对复杂问题的认知能力和理解力。在学习过程中,书籍 📕、网站 🖥、期刊论文等都是常见且有效的起点资源。


🔍 如何找到一篇合适的科技论文

在上一节中,我们已经了解了科技论文的基本结构及其产生过程,相信你对科技论文已有初步认识。接下来,我们将学习如何寻找一篇适合阅读的科技论文

找到一篇合适的论文,对于入门新领域、拓展知识视野具有重要意义。一篇好的论文能够帮助你:

  • 快速了解某个研究方向的基本概念;
  • 把握领域内的研究重点与热点问题;
  • 学习论文写作的结构与逻辑表达方式。

CityLearn v1.0 - An OpenAI Gym Environment for Demand Response with Deep Reinforcement Learning

· 5 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

abstract

需求响应(Demand Response, DR)可在美国电力需求峰值中减少约 20%,而建筑物占总电力需求的约 70%。然而,建筑能耗系统动态复杂且难以建模,传统方法难以协调不同建筑或能源系统。强化学习(RL)因其自适应、无需模型的特性,能基于历史与实时数据实现智能能耗控制。 然而,目前 DR 领域的研究缺乏统一标准,实验难以复现,算法性能也难以比较。为此,作者提出 CityLearn —— 一个基于 OpenAI Gym 的开源强化学习仿真环境,可让研究者方便地实现、共享、复现并比较不同的 DR 控制算法。该框架模块化、可扩展,支持多种储能与发电设备模型。

introduction

美国建筑能耗占全国电力消耗的约 70%,且城市区域的电力需求不断上升,造成输电压力与电价上涨。需求响应(DR)通过激励机制引导用户调整用电模式,从而削减峰值负荷、提高电网稳定性。 然而,为了让 DR 真正有效,需要智能、分布式的负载协调。如果所有设备同时响应相同信号,可能只是“移峰”而非“削峰”。传统控制方法(如 MPC)虽有效,但需依赖昂贵且精确的物理建模。 强化学习(RL)可以在无模型的条件下,通过与环境交互学习最优策略,从实时和历史数据中自动优化建筑能耗管理。但该领域缺乏统一标准,使得不同研究难以比较。为此,作者提出了 CityLearn —— 一个面向城市级能耗优化的强化学习仿真框架,用于统一测试环境、便于算法比较与复现

CityLearn

CityLearn 的目标是:为城市级的建筑群(而非单栋建筑)提供一个标准化的 RL 研究平台

1. architecture

使用 bottom-up design: bottom components:能量存储系统(如蓄热、蓄电池)与能量供应系统(如热泵、太阳能)。 Building class:每栋建筑整合了自身的设备模型与能耗需求。 CityLearn class:整合多个建筑,并继承自 OpenAI Gym 环境,使其成为一个可直接与 RL 智能体交互的仿真环境。

2. 功能特性

语言: Python,可从 GitHub 免费下载。 灵活数据输入:可加载实际建筑的供热/制冷需求数据,也可使用代理模型(surrogate models)。 设备模型:v1.0 版本包含空气源热泵(air-to-water heat pump)、热能储存系统、以及电池模型 建筑热负荷来源:使用 CitySim simu,该工具能在城市尺度下利用几何与物理简化模型估算建筑的热负荷,考虑了太阳辐射、室内活动、热损失等因素。

3. relationship with OpenAI Gym

  1. 继承 Gym 环境接口,实现与强化学习算法的无缝集成
  2. 研究者可直接将现有 Gym 智能体(如 DDPG、PPO、A3C 等)应用于建筑能耗控制。
  3. Gym 生态允许算法间的统一评测与可重现比较,就像 RL 研究中常见的 Atari 或 robotics 环境一样。

4. 流程图

part1

  1. 一个建筑对应一个 agent,智能体通过 Actor 网络(output:动作aa)和 Critic(output:qq)网络学习策略
  2. 输入为当前环境状态ss,输出是控制动作aa
  3. 训练时,agent 接收反馈(奖励rr,下一状态st+1s_{t+1}
  4. RL 经典交互循环为:(s,a,r,st+1)(s, a, r, s_{t+1})(state -> action -> reward -> next state)

part2

  1. 电网向各建筑提供电能。
  2. 电价(price)会随时间变化(例如分时电价或高峰电价)。
  3. 各建筑根据电价调整自己的用电需求(demand)。

强化学习的目标就是学会在不同电价和需求下,削峰填谷(peak shaving),以降低整体用电成本并平滑负荷曲线。

part3

  1. Heat pump(热泵):负责制冷或供热,是主要的能耗设备。
  2. Energy storage(储能系统):可以在低价时储能、高价时放能,用于平滑能耗。
  3. Building cooling loads(建筑冷负荷):代表建筑内部的能量需求(例如空调负荷)。 这三部分构成了一个局部能源系统并与电网交互,在此可以理解为数据集

part4 整个城市中有 n 栋建筑,对应 n 个 agents。各建筑既独立学习,又可以共享信息或通过价格信号间接协调,以此实现整体的分布式能耗优化 最终目标是让整个城区的负荷曲线更平滑,降低峰值功率需求。

demo

不演示了,因为是 v1 版本,我觉得已经过时了

conclusion

懒的说了,前面解释的很清楚了

CityLearn v2: Energy-flexible, resilient, occupant-centric, and carbon-aware management of grid-interactive communities

· 10 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

Abstract

随着越来越多的分布式能源成为需求侧基础设施的一部分,量化它们在社区规模上提供的能源灵活性非常重要,特别是要了解地理、气候和居住者行为差异对其有效性的影响,以及确定最佳控制策略以加速其在现实世界中的应用。CityLearn 为简单和先进的分布式能源控制算法提供基准测试环境,包括基于规则的、模型预测的和强化学习控制。本文介绍的 CityLearn v2 扩展了 CityLearn v1,它提供了一个模拟环境,利用美国建筑库存数据集的最终用途负载概况来创建虚拟网格交互社区,用于弹性、多代理分布式能源和具有动态乘员反馈的目标控制。这项工作详细介绍了 v2 环境设计,并提供了利用强化学习来管理电池储能系统充放电周期、车辆到电网控制以及热泵功率调制期间的热舒适性的应用示例

一. introduction

V1 版本很牛,RL 也很牛,但是出于一些缺陷我们创建了 v2 缺点: 灵活性有限 —— v1 的场景结构和数据接口固定,难以扩展到新的建筑类型、设备或能源载体; 可扩展性受限 —— v1 的配置较为僵化,不支持多层能源系统或跨区域交互; 可复现性不足 —— 不同研究者在构建实验时往往需要修改底层代码,导致实验结果难以公平比较。 V2 改进点: v2 版本在体系结构上进行了彻底重构,支持模块化设计和多层能源系统建模。研究者可以轻松地定义新的建筑类型、能源设备、价格信号、碳排放约束、以及能源共享机制。此外,v2 引入了统一的配置文件系统和标准化的评测接口,使不同实验能够方便地复现与对比。 通过这些改进,CityLearn v2 旨在成为一个面向未来的研究平台,支持: · 单智能体与多智能体强化学习; · 集中式与分布式控制; · 电力与热能的多能源协同; · 公平、透明的算法评测与结果共享。

常见缩写:

ESSs:energy storage systems DERs:Distributed energy resources,指分散在不同地点的小型能源设施,如太阳能电池板、风力涡轮机、燃料电池等,可以为当地的能源需求提供可再生能源。 EVs:Electric vehicles G2V:grid-to-vehicle V2G:and vehicle-to-grid PV:photovoltaic,光电伏打的,光电的 DR:demand response

二. environment

这是 Building model 的总体流程图

2.1 建筑模型(Building model)

针对小细节,由以下几个部分构成: 还需要声明的是,这些公式不需要转化为代码进行计算,这已经包含在运算包里了,这些公式主要是为了能了解环境中某一个细节是有哪些因素构成的(所以公式也较为简单)


2.1.1 电能与热能平衡(Electric and thermal energy balance)

建筑在每个时间步 ( t ) 的净能耗由其电力与热力流量平衡关系决定。
对任意建筑 ( b ),电力平衡可表示为:

Et,bgrid=Et,bloadEt,bPVEt,bdischarge+Et,bchargeE_{t,b}^{\text{grid}} = E_{t,b}^{\text{load}} - E_{t,b}^{\text{PV}} - E_{t,b}^{\text{discharge}} + E_{t,b}^{\text{charge}}

其中:

  • (E_{t,b}^{\text{grid}}):从电网汲取的净电能;
  • (E_{t,b}^{\text{load}}):总电力负荷(包括 HVAC、DHW、家电与电动车等);
  • (E_{t,b}^{\text{PV}}):光伏系统输出;
  • (E_{t,b}^{\text{discharge}})(E_{t,b}^{\text{charge}}):分别为储能放电与充电功率。

热力系统的能量守恒为:

Qt+1,bstorage=Qt,bstorage+ηcQt,bchargeΔt1ηdQt,bdischargeΔtQ_{t+1,b}^{\text{storage}} = Q_{t,b}^{\text{storage}} + \eta_c Q_{t,b}^{\text{charge}} \Delta t - \frac{1}{\eta_d} Q_{t,b}^{\text{discharge}} \Delta t

能量约束为:

QminQt,bstorageQmaxQ_{\min} \le Q_{t,b}^{\text{storage}} \le Q_{\max}

2.1.2 HVAC 与空间热动力学(HVAC and space thermal dynamics)

室内温度动态遵循一阶热阻–热容(RC)模型:

Tt+1,bin=Tt,bin+ΔtCb[Tt,boutTt,binRb+ηbHVACPt,bHVAC]T_{t+1,b}^{\text{in}} = T_{t,b}^{\text{in}} + \frac{\Delta t}{C_b} \left[ \frac{T_{t,b}^{\text{out}} - T_{t,b}^{\text{in}}}{R_b} + \eta_b^{\text{HVAC}} P_{t,b}^{\text{HVAC}} \right]

参数定义:

  • (R_b, C_b):建筑热阻与热容;
  • (T^{\text{in}}):室内温度;
  • (T^{\text{out}}):室外温度;
  • (\eta_b^{\text{HVAC}}):HVAC 效率;
  • (P_{t,b}^{\text{HVAC}}):HVAC 功率输入;
  • (\Delta t):时间步长。

2.1.3 生活热水系统(Domestic hot water, DHW)

热水储能的动态方程:

E_{t+1,b}^{\text{DHW}} = E_{t,b}^{\text{DHW}} + \eta_c P_{t,b}^{\text{heat}} \Delta t - \frac{1}{\eta_d} P_{t,b}^{\text{draw}} \Delta t

其中:

  • (P_{t,b}^{\text{heat}}):热水设备功率;
  • (P_{t,b}^{\text{draw}}):用水导致的热能损耗;
  • (\eta_c, \eta_d):充放热效率;
  • (E_{t,b}^{\text{DHW}}):热水罐储能。

2.1.4 电力储能系统(Electrical storage system)

电池能量更新方程:

Et+1,bbat=Et,bbat+ηcPt,bchΔt1ηdPt,bdisΔtE_{t+1,b}^{\text{bat}} = E_{t,b}^{\text{bat}} + \eta_c P_{t,b}^{\text{ch}} \Delta t - \frac{1}{\eta_d} P_{t,b}^{\text{dis}} \Delta t

功率约束:

0Pt,bchPmaxch,0Pt,bdisPmaxdis0 \le P_{t,b}^{\text{ch}} \le P_{\max}^{\text{ch}}, \quad 0 \le P_{t,b}^{\text{dis}} \le P_{\max}^{\text{dis}}

2.1.5 光伏发电(Photovoltaic generation)

Pt,bPV=AbPVηbPVGtP_{t,b}^{\text{PV}} = A_b^{\text{PV}} \cdot \eta_b^{\text{PV}} \cdot G_t

其中:

  • (A_b^{\text{PV}}):光伏阵列面积;
  • (\eta_b^{\text{PV}}):光伏转换效率;
  • (G_t):太阳辐照度。

2.1.6 电动车充电(Electric vehicle, EV)

Et+1,bEV=Et,bEV+ηcPt,bEVΔtE_{t+1,b}^{\text{EV}} = E_{t,b}^{\text{EV}} + \eta_c P_{t,b}^{\text{EV}} \Delta t

约束条件:

EminEVEt,bEVEmaxEV,0Pt,bEVPmaxEVE_{\min}^{\text{EV}} \le E_{t,b}^{\text{EV}} \le E_{\max}^{\text{EV}}, \quad 0 \le P_{t,b}^{\text{EV}} \le P_{\max}^{\text{EV}}

2.1.7 住户交互模型(Occupant interaction model)

Tt,bset,eff=Tt,bset,agent+δt,bT_{t,b}^{\text{set,eff}} = T_{t,b}^{\text{set,agent}} + \delta_{t,b}
  • (T_{t,b}^{\text{set,agent}}):智能体设定温度;
  • (\delta_{t,b}):住户偏差(可随机或基于舒适度模型)。

2.1.8 舒适度约束(Comfort constraints)

Tmin,bTt,binTmax,bT_{\min,b} \le T_{t,b}^{\text{in}} \le T_{\max,b}

惩罚项:

rt,bcomfort=αbmax(0,Tt,binTmax,b)βbmax(0,Tmin,bTt,bin)r_{t,b}^{\text{comfort}} = -\alpha_b \cdot \max(0, T_{t,b}^{\text{in}} - T_{\max,b}) - \beta_b \cdot \max(0, T_{\min,b} - T_{t,b}^{\text{in}})

2.1.9 成本与排放(Energy cost and emissions)

Ct,b=ptEt,bgrid,Zt,b=ϵtEt,bgridC_{t,b} = p_t \cdot E_{t,b}^{\text{grid}}, \quad Z_{t,b} = \epsilon_t \cdot E_{t,b}^{\text{grid}}

其中:

  • (p_t):时变电价;
  • (\epsilon_t):单位电能碳排放(kgCO₂e/kWh)。

2.1.10 总结(Summary)

建筑模型集成了电力、热力、储能、光伏、热水、电动车与住户行为的多物理量方程。
环境会自动根据这些方程更新建筑状态,为强化学习智能体提供观测、动作空间及奖励反馈。

**说明:**这些物理/能量学公式都已在框架内部实现。实际使用时主要通过配置场景与输出动作即可,但是理解这些公式有助于掌握环境机制与调参逻辑。所以依旧先给出具体公式

2.2 Power outage model(停电模型)

停电模型,用于模拟建筑在电网中断事件下的运行行为。该模型允许用户定义停电的持续时间、发生时刻、影响范围(单建筑或全区),

模型定义

用二值变量 o_t 表示时间步 t 的供电状态:

ot={1,若发生停电 (power outage)0,若正常供电 (normal operation)o_t = \begin{cases} 1, & \text{若发生停电 (power outage)} \\ 0, & \text{若正常供电 (normal operation)} \end{cases}

( o_t = 1) 时,建筑无法从电网获取电能,因此电网交互项被强制为零:

Et,bgrid=0E_{t,b}^{\text{grid}} = 0

此时,建筑的能量供应必须来自于:

  • 本地储能(电池或热储能);
  • 局部可再生能源(例如光伏发电);
  • 或削减部分非关键负荷(load shedding)。

能量守恒与储能支撑

在停电状态下,建筑能量平衡更新为:

Et+1,bstorage=Et,bstorage+ηcPt,bchargeΔt1ηdPt,bdischargeΔtE_{t+1,b}^{\text{storage}} = E_{t,b}^{\text{storage}} + \eta_c P_{t,b}^{\text{charge}}\Delta t - \frac{1}{\eta_d} P_{t,b}^{\text{discharge}}\Delta t

其中:

  • 储能系统在供电中断期间成为主要能量来源;
  • 动作空间可能受到额外约束(如最大放电功率);
  • 恢复供电后,系统自动切换回正常模式 (o_t = 0)

评估指标

CityLearn v2 为停电模型提供韧性相关指标,包括:

  • 自给率(self-sufficiency ratio):停电期间本地可满足的能量比例;
  • 负荷损失率(load loss ratio):停电期间未被满足的能量占比;
  • 恢复时间(recovery duration):储能充电恢复至正常状态所需时间。

小结

这是一个韧性(resilience)测试机制,可以帮助研究者评估强化学习控制策略在 电网韧性自恢复能力关键负荷保障 方面的性能。 该模块同样也内置于环境中,无需手动实现,只需在场景配置文件中指定停电时段与策略响应参数即可启用。

2.3 Key performance indicators(KPI)

就是指标,注意是个最小化指标(越小越好)

2.4 Datasets

没啥好说的

2.5 Environment design workflow

以 EULP dataset 为例,给出改框架的具体流程 1:数据收集 收集建筑元数据(如建筑类型、区域气候区、设备可用性等) 收集真实或合成的负荷/光伏/天气/电价/碳排放时间序列数据 2:负荷模拟与数据集准备 通过建筑热模型、设备模型、行为模型等将原始数据处理为可用的仿真输入(如每栋建筑每小时的负荷、PV 输出、储能状态等),构建环境配置文件(building attributes, DER sizing, shared storage, outage model 等),并生成场景 YAML/JSON 文件 3:控制模拟与结果报告 将环境载入框架,训练或评估 RL 或其它控制策略,接着执行动作-观测-奖励(RL 流程)循环,采集结果。最后根据 KPI 计算性能指标,输出报告或日志

三. Control

没啥用,反正就是阐讲 CityLearn 的控制接口结构及三种控制配置(单智能体、独立多智能体、协同多智能体),同时说明该框架不仅支持 RL,还兼容 RBC 与 MPC 等传统控制算法,以实现从启发式控制到学习控制的统一研究平台。

单智能体配置下,控制智能体与多个建筑呈一对多关系: 一个集中式智能体收集所有建筑的观测,为区域内所有 DER (分布式能源资源) 分配动作,并在每个时间步接收一个统一的奖励值,用以学习通用控制策略。这种方式类似于能源聚合商(energy aggregator)集中管理灵活负荷的分布式控制。

独立多智能体配置下,控制智能体与建筑是一对一关系: 每个建筑对应一个智能体,因此每个时间步产生与建筑数相等的奖励,并为每栋建筑分别学习独立的控制策略。

协同多智能体配置与独立多智能体类似, 但智能体之间可以共享信息,以实现协作目标(例如降低区域峰值负荷) 或竞争目标(例如在能源灵活性市场中进行价格竞标)。

四. Examples

篇幅原因,看下一篇吧。因为打算复现+解释

AI世界大入门

· 6 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

introduction

这篇文章旨在理解一大堆杂七杂八的,狗屁倒灶的,ai 方向的专用名词,例 AI,NLP,CV,深度学习,强化学习等等等 我相信初学者肯定会对这些名词感到困惑,就如同第一天我在面试时提出的问题: “我就只会数学建模和西瓜皮上的那些算法,好奇的问一下深度学习是啥?” 这个问题对现在的我来说也相当困惑,当然我相信写完这篇文章会让我的理顺这些东西

preliminary knowledge

首先,给我整个 AI 的框架

人工智能(Artificial Intelligence, AI)

├── 机器学习(Machine Learning, ML)
│ ├── 监督学习(Supervised Learning)
│ ├── 无监督学习(Unsupervised Learning)
│ ├── 强化学习(Reinforcement Learning, RL)
│ └── 其他(半监督、主动学习等)

├── 深度学习(Deep Learning, DL)
│ ├── 神经网络(CNN, RNN, Transformer)
│ ├── 自监督学习(Self-supervised)
│ ├── 生成模型(GAN, Diffusion, VAE)
│ └── PINNs / SciML(物理引导模型)

└── 应用领域
├── NLP(自然语言处理)
├── CV(计算机视觉)
├── Speech(语音)
└── 多模态 / 大模型(GPT, Gemini, etc.)

按照参差结构来讲,先从最简单的开始吧

1. 应用领域

搜索算法,符号推理这些其实都可以类比到实习中的“搜推广”(搜索推荐广告)算法工程师。这些东西其实都可以归结为应用领域或技术范式。如下所示

名称类别解释
NLP(自然语言处理)应用领域使用深度学习模型(如 Transformer)处理文本
CV(计算机视觉)应用领域使用 CNN 或 ViT 处理图像
Diffusion / GAN / VAE生成模型深度学习中的一种模型类型(生成任务)
大模型(Foundation Model)模型规模/范式基于深度学习(Transformer)的通用大模型,如 GPT、Gemini

2. 机器学习

机器学习就是大部分西瓜皮上的内容了,他的本意就是“让计算机自己去学习”,所以就会自然而言的牵扯到两大类别,即无监督学习和有监督学习,具体含义如下

类型中文含义训练方式示例
监督学习 (Supervised Learning)有标签学习已知输入与期望输出,通过最小化预测误差进行训练分类、回归、图像识别
无监督学习 (Unsupervised Learning)无标签学习在未标注数据中自动提取潜在结构或模式聚类、降维、自编码器
强化学习 (Reinforcement Learning)奖励驱动学习智能体与环境交互,通过试错获得最大累计奖励游戏 AI、机器人控制

对于强化学习而言,这部分会在后续着重介绍(因为我真的不懂)。但是一般而言,按照“想让机器学到什么”的定义,又可如下分类 · 监督学习用于“从已有示例中学习” · 无监督学习用于“理解数据结构” · 强化学习用于“学习行动策略”

3. 深度学习

深度学习是机器学习的一个重要分支,可以理解为使用多层神经网络(Neural Networks)自动学习数据特征的一类方法 换句话说,它依然遵循“最小化误差(loss function)”的思想,但与传统机器学习不同,
深度学习不再需要人手去“提取特征”,而是通过层层网络结构自动完成特征提取与抽象表示

从集合关系上看: 深度学习 ⊂ 神经网络 ⊂ 机器学习 ⊂ 人工智能 例子:

层级学到的特征(以图像识别为例)
第 1 层学到边缘、线条等简单模式
第 2 层学到角点、纹理、局部形状
第 3 层学到眼睛、鼻子等复杂结构
第 4 层及以上学到“猫脸”“汽车”等语义概念

difference between Deep Learning(DL) and machine Learning(ML)

尽管两者的本质都是最小化误差(如 loss function),但核心目的是不同的。ML 的目的是寻找使预测误差最小的参数。(比如在 n 次线性函数中找最优参数,神经网络调整通过 Adam 反向传播调整网络权重)

算法优化目标损失函数举例
线性回归拟合直线MSE(均方误差)
逻辑回归分类概率交叉熵(Cross Entropy)
SVM最大化间隔Hinge Loss
决策树信息增益最大化熵(Entropy)

DL 也确实是继承了这个想法(最小化误差),但它的关键区别在于 “模型复杂度” 和 “特征获取方式”

方面机器学习(ML)深度学习(DL)
特征需要人工提取(feature engineering)网络自动学习特征
模型结构简单模型(线性/树/核函数)多层非线性神经网络
参数规模少(几十~几百)多(百万~数十亿)
优化方法梯度下降、凸优化反向传播 + SGD/Adam
可解释性
数据需求较少巨量数据

其实可以理解为,DL 本质就是神经网络,只是这个网络又大(神经元)又深(多层)。深度学习不只是有神经网络,还包括优化算法、损失函数、正则化、数据增强等。神经网络是模型,深度学习是方法。 最大的目的就是:为了学习特征。区别在于可以更好的处理高度非线形问题

强化学习

说了这么多,终于可以讲强化学习了,强化学习是让智能体(Agent)通过与环境(Environment)交互,并根据奖励(Reward)反馈,学习最优决策策略(Policy)的方法。 需要注意的是,这是一个最大化优化,不是 loss 这样的最小化优化(奖励必然是越多越好)

继续举例五大基本元素

元素英文含义举例(机器人走迷宫)
Agent智能体负责做决策的学习者机器人本身
Environment环境Agent 所处的世界迷宫
State状态(s)当前环境的观测机器人现在的位置
Action动作(a)Agent 可以执行的操作向上/下/左/右移动
Reward奖励(r)环境给的反馈信号到终点+1,撞墙-1

p-code 如下:

for episode in range(N):
state = env.reset() # Agent观察环境(init啦其实就是)
while not done: # 开始训练
action = agent.select_action(state) # 选择一个动作
next_state, reward, done = env.step(action) # 环境给出新的状态和奖励;
agent.learn(state, action, reward, next_state) # Agent根据奖励更新策略
state = next_state

所以,强化学习不是预测一个矢量或标量,他的目的应该是学习一种策略

ps:some cases

领域应用场景说明
游戏AlphaGo、Atari、Dota2通过自我博弈学习最优策略
机器人控制行走、抓取、平衡连续动作空间优化
自动驾驶路径规划、决策控制学习最优驾驶策略
智能电网城市能源优化(CityLearn)控制能耗和储能系统
金融投资组合优化最大化长期收益

A high order explicit time finite element method for the acoustic wave equation with discontinuous coefficients

· 2 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇使用 VPinn 来求解 Navier-Stokes 方程的论文。

我们先来看看这篇论文的摘要:

摘要

英文原文:

In this paper, we propose a novel high order unfitted finite element method on Cartesian meshes for solving the acoustic wave equation with discontinuous coefficients having complex interface geometry. The unfitted finite element method does not require any penalty to achieve optimal convergence. We also introduce a new explicit time discretization method for the ODE system resulting from the spatial discretization of the wave equation. The strong stability and optimal hp-version error estimates both in time and space are established. Numerical examples confirm our theoretical results.

翻译:

在本文中,我们在笛卡尔网格上提出了一种新型的高阶未有限元方法,用于通过具有复杂界面几何形状的不连续系数来求解声波方程。未实现的有限元方法不需要任何惩罚来实现最佳融合。我们还为波动方程的空间离散化引起的 ODE 系统引入了一种新的显式时间离散方法。建立了强大的稳定性和最佳的 HP-version 误差估计时空和空间的估计。数值示例证实了我们的理论结果。

这篇论文主要看他的方法,他使用

波方程是描述波传播现象的数学物理学中的基本方程。它在科学和工程中发现了各种应用,包括地球科学,石油工程和电信(请参阅[30,31]以及其中的参考文献)。令 ω⊂R2 为有界的 Lipschitz 域,t> 0 为时间间隔的长度。我们在本文中考虑声波方程

A high order explicit time finite element method for the acoustic wave equation with discontinuous coefficients

· 2 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇使用 VPinn 来求解 Navier-Stokes 方程的论文。

我们先来看看这篇论文的摘要:

摘要

英文原文:

In this paper, we propose a novel high order unfitted finite element method on Cartesian meshes for solving the acoustic wave equation with discontinuous coefficients having complex interface geometry. The unfitted finite element method does not require any penalty to achieve optimal convergence. We also introduce a new explicit time discretization method for the ODE system resulting from the spatial discretization of the wave equation. The strong stability and optimal hp-version error estimates both in time and space are established. Numerical examples confirm our theoretical results.

翻译:

在本文中,我们在笛卡尔网格上提出了一种新型的高阶未有限元方法,用于通过具有复杂界面几何形状的不连续系数来求解声波方程。未实现的有限元方法不需要任何惩罚来实现最佳融合。我们还为波动方程的空间离散化引起的 ODE 系统引入了一种新的显式时间离散方法。建立了强大的稳定性和最佳的 HP-version 误差估计时空和空间的估计。数值示例证实了我们的理论结果。

这篇论文主要看他的方法,他使用

波方程是描述波传播现象的数学物理学中的基本方程。它在科学和工程中发现了各种应用,包括地球科学,石油工程和电信(请参阅[30,31]以及其中的参考文献)。令 ω⊂R2 为有界的 Lipschitz 域,t> 0 为时间间隔的长度。我们在本文中考虑声波方程

An efficient hp-Variational PINNs framework for incompressible Navier-Stokes equations

· 19 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇使用 VPinn 来求解 Navier-Stokes 方程的论文。

我们先来看看这篇论文的摘要:

摘要

英文原文:

Physics-informed neural networks (PINNs) are able to solve partial differential equations (PDEs) by incorporating the residuals of the PDEs into their loss functions. Variational Physics-Informed Neural Networks (VPINNs) and hpVPINNs use the variational form of the PDE residuals in their loss function. Although hp-VPINNs have shown promise over traditional PINNs, they suffer from higher training times and lack a framework capable of handling complex geometries, which limits their application to more complex PDEs. As such, hp-VPINNs have not been applied in solving the Navier-Stokes equations, amongst other problems in CFD, thus far. FastVPINNs was introduced to address these challenges by incorporating tensor-based loss computations, significantly improving the training efficiency. Moreover, by using the bilinear transformation, the FastVPINNs framework was able to solve PDEs on complex geometries. In the present work, we extend the FastVPINNs framework to vector-valued problems, with a particular focus on solving the incompressible Navier-Stokes equations for two-dimensional forward and inverse problems, including problems such as the lid-driven cavity flow, the Kovasznay flow, and flow past a backward-facing step for Reynolds numbers up to 200. Our results demonstrate a 2x improvement in training time while maintaining the same order of accuracy compared to PINNs algorithms documented in the literature. We further showcase the framework’s efficiency in solving inverse problems for the incompressible Navier-Stokes equations by accurately identifying the Reynolds number of the underlying flow. Additionally, the framework’s ability to handle complex geometries highlights its potential for broader applications in computational fluid dynamics. This implementation opens new avenues for research on hp-VPINNs, potentially extending their applicability to more complex problems.

翻译:

物理信息的神经网络(PINN)能够通过将 PDE 的残差纳入其损失函数来解决部分微分方程(PDE)。变异物理信息的神经网络(VPINN)和 HPVPINNS 在其损失函数中使用 PDE 残差的变异形式。尽管 HP-vpinns 对传统的 PINN 表现出了希望,但它们遭受了较高的训练时间,并且缺乏能够处理复杂几何形状的框架,从而将其应用限制在更复杂的 PDES 中。因此,迄今为止,尚未应用 HP-VPINN 在求解 Navier-Stokes 方程中,以及 CFD 中的其他问题。引入了 FASTVPINNS,通过结合基于张量的损失计算,从而显着提高训练效率,以应对这些挑战。此外,通过使用双线性转换,FastVpinns 框架能够在复杂的几何形状上求解 PDE。在目前的工作中,我们将 FASTVPINNS 框架扩展到了矢量值问题,特别着眼于解决不可压缩的 Navier-Stokes 方程,以解决二维向前和反向问题,包括诸如盖子驱动的腔流,kovasznay 流量以及以后的阶段进行阶段的阶段,以改进阶段的时间,并将其进行了训练。与文献中记录的 PINNS 算法相比,准确性。我们通过准确识别基础流的雷诺数数量,进一步展示了该框架在解决不可压缩的 Navier-Stokes 方程中的反问题方程的效率。此外,该框架处理复杂几何形状的能力突出了其在计算流体动力学中更广泛应用的潜力。该实施为 HP-VPINNS 研究开辟了新的途径,有可能将其适用性扩展到更复杂的问题上。

数值结果

在以下部分中,我们将对 FASTVPINNS 框架进行全面验证,以用于流体流量问题中的应用。我们首先在 Inviscid 汉堡方程式上测试代码,然后将 FASTVPINNS 框架扩展到矢量值问题。接下来,我们使用不可压缩的 Navier-Stokes 方程来解决前进和反问题。我们通过首先求解 kovasznay 流并将预测的解决方案与可用的精确解决方案进行比较,从而验证了 FastVpinns 框架的准确性。对于 Kovasznay 流,我们还比较了 FastVpinns 又有 NSFNETS10 的准确性和效率,我们认为这是基准。我们还对 Kovasznay 流进行了网格连接研究,显示了元素大小对结果准确性的影响。接下来,我们将 FASTVPINNS 框架应用于流体流量问题中的三个规范示例:Liddriven 的腔流,流过矩形通道并流过向后的步骤。我们还通过解决 Falkner-Skan 边界层问题并将我们的结果与文献中建立的结果进行比较 11,我们还证明了 FastVpinns 对层流边界流的适用性。如前所述,FastVpinns 框架可以处理具有偏斜的四边形元素的复杂网格。为了强调这一点,我们解决了一个圆柱体问题的流程,证明了 FastVpinns 在处理非平凡域离散化时的灵活性和鲁棒性。最后,我们通过说明方法在反问题上的应用来结束讨论,通过预测雷诺数的数字,同时求解超过向后的步骤的流程。

FastVpinns Library 已使用 TensorFlow 版本 2.0 编写。对于以下示例,测试功能是形式

vk=Pk+1Pk1,v_{k}=P_{k+1}-P_{k-1},

其中,VkV_kkthk^{th} 阶的多项式,PkP_kkthk^{th} 阶的 Legendre 多项式。对于数值正交,使用 Gausslobatto-Legendre 方法。使用 ADAM Optimizer[28]优化了所有实验的具有 TANH 激活函数的完全连接的神经网络。相对 l2l^2 误差定义如下:

Lrel2(u)=uuref2uref2,L^{2}_{rel}(u)=\frac{\|u-u_{\mathrm{ref}}\|_{2}}{\|u_{\mathrm{ref}}\|_{2}},

其中,2∥·∥_2l2l^2 norm,uu 是预测的解决方案,urefu_{ref} 是参考解决方案。为了使结果的可重复性的利益,我们提到了表 I 中用于运行实验的一些其他规格。

Burgers' Equation

我们通过求解等式中显示的 2D、固定以及粘性 Burgers 方程式开始讨论数值结果。我们采用生产解决方案的方法来生成精确的解决方案,定义为:

u=sin(x2+y2),v=cos(x2)tanh(8y2).(10)\begin{split} u&=\sin(x^{2}+y^{2}),\\ v&=\cos(x^{2})\tanh(8y^{2}).\end{split}\tag{10}

右侧项 (fx,fy)(f_x,f_y) 是通过在等式中替换(10)中的值来得出的。将粘度系数 νν 设置为 1。计算域,Ω\Omega[11]2[-1,1]^2 给出,分别为 x-和 y-Dimensions 分别为 8 个元素。对于这个问题,我们使用一个神经网络,其中包含 3 个隐藏层,每个神经元包含 30 个神经元。该网络使用 0.001 的恒定学习率对 20,000 个时期进行了训练。为了计算损失,我们使用 25 个测试功能和每个元素的 100 个正交点,总共 6400 个正交点。边界损耗以 800 点计算,并在域的边界上采样。图 2 显示了精确的解决方案,即 FastVPINNs 预测的解决方案以及 UUVV 组件的点误差。 FastVPINNs 能够为 UUVV 分别达到 1.9×1031.9×10^{-3}6.1×1036.1×10^{-3}LRel2L^2_{Rel} 误差。此外,平均训练时间为每个时期 2.4ms,突出了我们方法的计算效率。

Kovasznay Flow

现在,我们继续求解不可压缩的 Navier Stokes 方程,从 Kovasznay Flow29 开始,这是 2D 不可压缩的 NavierStokes 方程的众所周知的分析解决方案。该流量代表二维网格后面的层流状态,其特征是参数 λ\lambda 取决于雷诺数。分析解决方案的存在将为评估所提出方法的准确性提供明确的基线。它还将使我们能够将方法的准确性和速度与最新状态 NSFnets[10] 进行比较。 kovasznay 流的分析解决方案由:

u(x,y)=1eζxcos(2πy),v(x,y)=ζ2πeζxsin(2πy),p(x,y)=12(1e2ζx),\begin{split} u(x,y)&=1-e^{\zeta x}\cos(2\pi y),\\ v(x,y)&=\frac{\zeta}{2\pi}e^{\zeta x}\sin(2\pi y), \\ p(x,y)&=\frac{1}{2}\left(1-e^{2\zeta x}\right), \end{split}

其中,

ζ=12μ14μ2+4π2,μ=1Re.\zeta=\frac{1}{2\mu}-\sqrt{\frac{1}{4\mu^{2}}+4\pi^{2}},\quad\mu=\frac{1}{ \mathrm{Re}}.

我们在矩形域 [0.51]×[0.51.5][-0.5,1]×[-0.5,1.5] 上解决了 Re=40Re = 40 的 kovasznay flow。该结构域在 x 维度中被 6 个 cell 离散,在 Y 维度中将 10 个 cell 离散,因此 Nelem=60N_elem = 60。在 NSFnets 中,使用具有 7 个隐藏层的神经网络获得了最佳溶液,每个层均包含 100 个神经元,总计为 2601 和 400 个边界点。为了与 NSFnets 进行公平的比较,我们将使用相同的网络体系结构以及表 II 中的参数。等式中的加权系数 ααββγγ。在公式(8)中全部设置为 10。

与 NSFnets 一样,我们训练 FastVpinns 进行 40,000 次迭代,从而导致图 3 中所示的损失函数。图 4 中显示了每个组件的预测解决方案和点的误差。在表 III 中显示了 NSFnets 和 FastVpinns 之间的比较。该表已使用 NSFnets 和 FastVpinns 具有独立初始网络参数的 5 个运行的平均结果和标准偏差进行编译。我们观察到,FastVpinns 的准确性与 NSFnets 相匹配,而仅需约 40%的训练时间。表 XIII(在附录)中可以找到具有 4 个具有 50 个神经元的 4 个隐藏层的网络的类似比较。

Grid Convergence for Kovasznay Flow

为了证明 hp-VPINNs 具有越来越多的元素的收敛性,我们为 Kovasznay 流量问题进行了网格收敛研究。每个元素的正交点的数量固定在 36 中。测试功能,边界点和神经网络架构的数量与表 II 所示的相同。为了确保随着元素数量的增加而对网络进行适当的培训,我们根据以下关系调整培训迭代次数:

Number of training iterations=κ+ξ×N_quadN_elem\text{Number of training iterations} = κ + ξ × N\_quad ∗ N\_elem

其中,κ=6000κ= 6000 代表时期的基本数量,而 ξ=6ξ= 6 是一个缩放因素,它解释了域内正交点的增加。表 IV 和图 5 显示了 u,v 和 p 的相对 L2L^2 误差。我们观察到,通过足够的训练,随着域中元素数量的增加,测试误差会减少。

Lid Driven Cavity Flow

在研究了 Kovasznay 流量后,我们现在将注意力转向流体动力学中的另一个经典基准问题:盖子驱动的腔流量。我们使用每个维度中的 8 个四边形元素离散单位方形域,并在表 5 中显示参数。

对于 lid-driven 的腔流,使用了由六个隐藏层组成的神经网络结构,每个层都使用了 20 个神经元。如图 6 所示,对该网络进行了 50,000 轮训练,初始学习率为 0.0013。该学习率是使用指数学习率调度程序衰减的,每 1000 步的衰减率为 0.99。我们在等式中设置了加权系数。 (8)(8) 作为 α=1,β=1,γ=104α= 1,β= 1,γ= 10^4。此选择强调了连续性方程在损耗函数中的重要性。图 7 列出了使用 Parmoon30 计算的 FEM 解决方案与神经网络预测的解决方案之间的比较。图 8 说明了 FEM 值与神经网络的预测值之间的中线速度比较,我们观察到我们的神经网络解决方案与 FEM 解决方案非常吻合。

Flow through channel

接下来,我们解决了通过矩形通道的流动,以验证我们的诺伊曼边界条件的实现。该案例研究涉及矩形结构域 [03]×[01][0,3]×[0,1] 中的流体流量,使用一百个常规的四边形元件离散。入口速度轮廓定义为

u(0,y)=4y(1y),u(0,y)=4y(1-y),

y=0.5y = 0.5 时达到 1 的最大值为 1。我们将无滑动边界条件施加在顶部和底部壁上,而插座的 Neumann 边界条件为零。共有 800 个边界点在整个域边界上分布,以强迫边界条件。等式中的加权系数。公式(8)设置为 α=104,β=104,γ=104α= 10^{-4},β= 10^{-4},γ= 10^4 。表 VI 总结了此模拟中使用的关键超参数。 ADAM 优化器的学习率为 0.0010.001,并进行了 30,000 轮的训练。对于雷诺数为 1 的数字,我们获得了 X 差速器中速度的 LRel2L^2_{Rel} 误差为 1.09×1021.09×10^{-2}。图 9 显示了预测的 U 速度和相应的点误差。

Flow past a backward facing step

向后的步骤问题是流体动力学中充满挑战的情况,涉及突然扩展的通道。这种构型导致复杂的现象,例如流动分离,重新分析和再循环区域。我们以 200 的雷诺数为基础研究了这个问题,该问题为我们的 FastVPINNs 框架提供了重大测试,这是由于沿通道长度的较大域和变化的速度场。与 Gartling31 中类似的计算域在图 10 中说明了。该图既显示了向后的步骤的几何形状,又显示了我们模拟中使用的入口速度曲线。我们将域将域离散为 100 个元素(20×5),其中表 VII 中详细介绍了计算参数。

对于这个问题,我们采用了一个神经网络,该网络具有八个隐藏层,每个层都包含 50 个神经元。如图 11 所示,对该网络进行了 250,000 轮训练,初始学习率为 0.0015。该学习率是使用指数学习率调度程序衰减的,每 1000 步的衰减率为 0.98。等式中的加权系数。 (8)全部设置为 10。为了验证我们的方法,我们将我们的结果与从 FEM 获得的结果进行了比较。表 VIII 列出了速度成分 u,vu,v 和压力 ppLRel2L^2_{Rel} 误差。图 12 说明了通过神经网络,FEM 解决方案和速度和压力分量的点误差的预测解决方案之间的比较。我们的分析表明, FastVPINNs 的预测解决方案与 FEM 解决方案非常吻合,证明了我们在此复杂流动问题上的框架的有效性。

Falkner Skan flow

在研究了经典流体动力学问题之后,我们现在检查了 Falkner-Skan 边界层问题 32,这是层流流分析中的重要案例研究。

这个问题描述了层流区域稳定,不可压缩的边界层流的速度曲线。我们选择了这个问题来证明与传统的 Pinns 实现相比,FastVPINNs 的性能。在我们的研究中,我们采用了 Eivazi 等人 11 的问题参数,考虑到 M=0.08M = -0.08 的雷诺数为 100100,导致楔形角 β=0.1988β= -0.1988。参考解决方案和 PINNSPINNS 代码是从官方 GitHub Repository[33] 获得的。计算域跨越 X 差异 [0,20][0,20] ,在 yDimension 中跨越[0,5]。表 IX 总结了我们的 FastVpinns 模拟中使用的关键参数和 PINNS 实现的比较。两种方法都使用 Adam Optimizer 训练 10,000 轮。我们报告了 10 次独立运行的平均结果。图 13 说明了训练的进展,显示了训练迭代中的总损失及其组成部分。等式中的加权系数 α,βα,βγγ。 方程 (8) 已设置为 1。表 X 详细介绍了 FastVPINNs 和 Pinns 之间的性能比较。值得注意的是,我们能够通过 FASTVPINN 实现重大加速。我们计算了一千次迭代的平均训练时间,发现 FastVPINNs 与 Pinns 实施相比,速度达到了 2.24 倍。具体而言,每 1000 次训练迭代需要 16.67 秒的 PINNS 代码,而 FastVPINNs 仅在 7.43 秒内完成了相同数量的迭代。

Flow past a cylinder

为展示本框架处理复杂几何结构的能力,我们采用带斜四边形单元的网格解决了圆柱体周围流动问题(如图 15 所示)。计算域包含 553 个单元,每个单元使用 9 个测试函数和 16 个求积点,整个域共计 8,848 个求积点。我们选取 1,673 个边界点施加边界条件。针对该几何结构,采用包含 7 个隐藏层(每层 20 个神经元)的神经网络架构。网络采用初始学习率 2.9×1032.9×10^{-3} 进行 250,000 轮训练,配合指数学习率调度器(衰减步长 2200,衰减率 0.985)确保稳定收敛。图 16 展示训练进程中总损失及其各分量的演变趋势。我们将式(8)中的权重系数 α、β 和 γ 均设为 10。图 17 呈现的结果表明,FastVPINNs 对速度和压力分量的预测与有限元法解具有良好一致性,验证了本框架能精确捕捉圆柱体周围复杂流场(包括尾流区域)的能力。表 XI 量化了本方法的精度,给出了速度和压力分量的LRel2L^2_{Rel}误差。这些结果强调了 FastVPINNs 在解决复杂几何流体动力学问题时的有效性,在保持计算效率的同时实现了良好的精度。

INVERSE PROBLEMS

为了证明 FastVPINNs 在解决反问题中的能力,我们应用框架来识别通过向后的步骤中流动中的雷诺数。流体动力学中的反问题通常涉及估计管理 PDE 的参数,例如 Navier-Stokes 方程中的雷诺数。在 FastVPINNs 中,这是通过将目标参数视为神经网络体系结构中的可训练变量来实现的。我们的计算结构域跨越 X 二维和 [0.5,0.5][-0.5,0.5] 的计算结构域在 y 维度中跨越 [0.50.5][0.5,0.5] ,在 XDimension 中具有 XDimension 的入口速度曲线。

u=24y(0.5y)fory[0,0.5]u=24y(0.5-y)\quad\mathrm{for} y\in[0,0.5]

沿着左墙。该流量的实际雷诺数为 200,我们的模型旨在预测。我们使用 25 个测试函数和每个元素的 64 个正交点将域离散为 100 个元素(20×5),从而总共 6400 个正交点。此外,我们采样了 800 个边界点,并设置了 100 的边界 ττ 。为了预测雷诺数,我们利用域内的 100 个随机分布的传感器点来利用速度数据。我们的神经网络体系结构包括 8 个隐藏层,每个层有 50 个神经元,使用 1.9×1031.9×10^{-3} 的初始学习速率对 250,000 个时代进行了训练,并与指数型衰减调度程序(1500 衰减步骤,衰减率为 0.985)。图 18(a)和(b)说明了训练过程中各种损失成分的演变,从而洞悉了我们模型的收敛行为。传感器丢失表示神经网络预测与传感器点数据之间的差异,如图 18(a)所示。图 20 显示了最终预测的速度和压力场,证明了框架捕获流动模式的能力,同时估算了雷诺数。表 XII 列出了我们的预测的准确性,显示了雷诺数的初始猜测为 120 时,L2 的速度和压力组件的 RER 误差。训练模型花了 25 万次迭代。

为了评估我们的方法的鲁棒性,我们初始化了雷诺数估计值,值范围从 120 到 280。图 19 说明了这些估计值与 200 的真实值的收敛性,突出了该框架准确确定雷诺数数量的能力,而不管最初的猜测如何。这些结果证明了 FASTVPINN 在解决流体动力学中解决反问题中的有效性,显示了对复杂几何形状中的参数估计和流动表征的应用的希望。

结论

在这项工作中,我们成功地扩展了 FastVpinns 框架以解决矢量值问题,特别关注不可压缩的 Navier-Stokes 方程。我们通过一组全面的数值实验验证了我们的方法,包括诸如 kovasznay 流,盖子驱动的腔流以及流过向后的步骤等问题。与现有方法相比,我们的实施表明计算效率和准确性都有显着提高。值得注意的是,在与有关 Kovasznay 流量和 Falkner-Skan 边界层问题的 PINN 的现有文献进行比较时,我们在训练时间中达到了 2 倍的速度,同时相对于文献中提到的 PINNS 代码保持了可比或改进的精度。通过解决由偏斜的四边形元素组成的域上的圆柱问题,通过解决流动问题来展示该框架处理复杂几何形状的能力。此外,我们通过成功地将其应用于反问题,证明了 FastVpinns 的多功能性,从而准确地预测了雷诺数的数量,而雷诺数则超过了向后的步骤配置。该能力突出了我们方法对参数估计和流动表征任务的潜力。提高的计算效率,准确性以及处理前进问题和反向问题的能力的结合,FastVpinns 作为一种有前途的工具,用于广泛的流体动力学应用,从简单的几何形状到复杂的,现实世界中的情况。当前的工作是技术演示者,并且能够扩展到其他现实世界的工程应用程序,例如在管道中的风流或多相流中的湍流。

预备知识

在本节中,我们将简要说明使用 hp-VPINNs 求解标量 PDE 的 FastVPINNs 方法,然后陈述 FastVPINNs 中使用的基于张量的损耗计算例程。

总结

该论文介绍了一种用于流体力学问题的 PINNs 框架,效果看着挺好,感兴趣的可以尝试文章中的方法。

📌 欢迎关注 FEMATHS 小组与山海数模,持续学习更多数学建模与科研相关知识!

Multidomain Legendre–Galerkin Chebyshev-collocation method for one-dimensional evolution equations with discontinuity

· 5 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇比较巧妙地方法(MLGCC)解决多区域微分方程的论文。

这篇论文先从介绍入手,来整体的看看这篇论文:

在本文中,我们将以下抛物线方程与两个非均匀跳跃条件视为

{ tUx(ϵxU)=f(x,t),xI1I2,t(0,T], [U]0=α,[ϵxU]0=β,t(0,T], U(1,t)=U(1,t)=0,t[0,T], U(x,0)=U0(x),xI,(1.1)\begin{cases}\ \partial_{t}U-\partial_{x}(\epsilon\partial_{x}U)=f(x,t),&x \in I_{1}\cup I_{2},t\in(0,T],\\ \ [U]_{0}=\alpha,[\epsilon\partial_{x}U]_{0}=\beta,&t\in(0,T],\\ \ U\left(-1,t\right)=U(1,t)=0,&t\in[0,T],\\ \ U\left(x,0\right)=U_{0}(x),&x\in I,\end{cases} \tag{1.1}

其中,I1=(1,0),I2=(0,1)I_1 = (−1,0), I_2 = (0,1)I=(1,1),ϵIi=ϵiI = (−1,1),\epsilon |_{I_i} = \epsilon_i 是正分段常数,跳跃由 [v]0=v(0+)v(0)[v]_0 = v(0+)−v(0−) 定义,α,βα,β 是常数。这种跳跃条件在许多地区都会出现[14,2,12]。开发了多域 LegendreGalerkin Chebyshev-collocation(MLGCC)方法来解决该问题(1.1)。该方案基于勒让德方法,但右项和初始项由切比雪夫-高斯-洛巴托 (CGL) 点并置。时间离散化采用 CrankNicolson 方法。该方案基本上处理了第一个跳跃条件,而自然处理了第二个跳跃条件。如[15]所示,构造了适当的基函数来处理并行求解问题(1.1)的接口。推导了稳定性和最佳收敛速率。考虑了 MLGCC 方法在一维(1D)Maxwell 方程和 1D 两相 Stefan 问题中的应用。

文章整理如下。在第 2 节中,可以介绍一些符号和方案。在第 3 节中,给出了近似结果。在第 4 节中,我们证明了全离散方案的稳定性和收敛性。给出了一些相应的数值结果。在第 5 节和第 6 节中,我们使用我们的方法求解了一维麦克斯韦方程组和一维两相 Stefan 问题,并给出了数值结果。

符号和方案

在本节中,介绍了一些符号和 MLGCC 方案。让 (,)J(·,·)_JJ‖·‖_J 分别是空间 L2(J)L^2(J) 的内积和范数。对于任何 σ>0σ > 0 的非负整数,我们对配备范数 σ,J‖·‖_{σ,J} 和半范数 σ,J|·|_{σ,J} .每当 J=IJ = I 时,我们去掉下标 JJ。设 H1(I)=(H01(I))H^{−1}(I) =(H^1_0(I))′ 为对偶空间。用 x^ji\hat{x}^i_j 表示 I^=(1,1)\hat{I}=(−1,1) 上的 CGL 节点,我们设置 a0=1,a1=0,a2=1a_0 = −1,a_1 = 0,a_2 = 1。定义 hi=aiai1h_i = a_i − a_{i−1}

INi={xji:xji=hix^ji+ai1+ai2, 0jNi, i=1,2}.(2.1)I_{N}^{i}=\{x_{j}^{i}:x_{j}^{i}=\frac{h_{i}\hat{x}_{j}^{i}+a_{i-1}+a_{i}}{2}, \ 0\leq j\leq N_{i},\ i=1,2\}.\tag{2.1}

在本文中,我们将使用分段 Sobolev 空间。让 ui=uIiu_i := u|_{I_i} 并定义

H~σ(I)={u:uIiHσ(Ii),i=1,2},H~0,1={uH~1(I):u(1)=u(1)=0,[u]0=α},\begin{split}&\tilde{H}^{\sigma}(I)=\{u: u \mid_{I_{i}}\in H^{ \sigma}(I_{i}),i=1,2\},\\ &\tilde{H}^{1}_{0, \square}=\{u\in\tilde{H}^{1}(I): u(-1)=u(1)= 0,[u]_{0}=\alpha\},\end{split}

带有破半范数的

uH~σ(I)=(i=1,2uσ,Ii2)1/2.\left| u \right|_{ \widetilde{H}^{ \sigma} \left( I \right)}= \left( \sum_{i=1,2} \left| u \right|_{ \sigma,I_{i}}^{2} \right)^{1/2}.

PNi\mathbb{P}_{N_i} 是最多 NiN_i 的次数多项式的空间。分段多项式空间定义为

VN={φH~0,1(I):φIiPNi,i=1,2},VN={φH01(I):φIiPNi,i=1,2}.(2.2)\begin{array}{l}V^{ \square}_{\mathit{N}}=\{\varphi\in\tilde{H}^{1}_{ \mathit{0}, \square}(\mathit{I}):\varphi \mid_{\mathit{I}_{\mathit{i}}}\in \mathbb{P}_{\mathit{N}_{\mathit{i}}},\mathit{i}=\mathit{1},\mathit{2}\},\\ V_{\mathit{N}}=\{\varphi\in H^{1}_{\mathit{0}}(\mathit{I}):\varphi \mid_{ \mathit{I}_{\mathit{i}}}\in\mathbb{P}_{\mathit{N}_{\mathit{i}}},\mathit{i}= \mathit{1},\mathit{2}\}.\end{array} \tag{2.2}

问题 (1.1) 可以用弱形式写成:找到 U(t)H~0,1(I)U(t)\in\tilde{H}^{\mathsf{1}}_{\mathsf{0},\square}(I) 使得对于任何 VH01(I)V\in H^{\mathbf{1}}_{\boldsymbol{0}}(I),

{ (tU,V)+i=1,2(ϵxU,xV)Ii=(f,V)βV(0),t>0, U(x,0)=U0(x),xI,(2.3)\begin{cases}\ (\partial_{t}U,V)+\sum\limits_{i=1,2}(\epsilon\partial_{ \mathsf{x}}U,\partial_{\mathsf{x}}V)_{I_{i}}=(f,V)-\beta V(\mathsf{0}),&t> \mathsf{0},\\ \ U(\mathsf{x},\mathsf{0})=U_{0}(\mathsf{x}),&\mathsf{x}\in I,\end{cases} \tag{2.3}

基本上, 对第一个跳跃条件进行处理,第二个跳跃条件自然(不处理)。半离散的 Legendre – Galerkin 近似是找到 uNVNu_{N}\in V_{N}^{\Box},以便对于任何 φVN\varphi ∈V_N,

{(tuN,φ)+i=1,2(ϵxuN,xφ)Ii=(INCf,φ)βφ(0),t>0,uN(x,0)=INCU0(x),xI,(2.4)\left\{\begin{array}{ll}(\partial_{t}u_{N},\varphi)+\sum\limits_{i=1,2}( \epsilon\partial_{\mathsf{x}}u_{N},\partial_{\mathsf{x}}\varphi)_{I_{i}}=(I_{ N}^{\mathsf{C}}f,\varphi)-\beta\varphi(\mathsf{0}),&t>\mathsf{0},\\ u_{N}(\mathsf{x},\mathsf{0})=I_{N}^{\mathsf{C}}U_{\mathsf{0}}(\mathsf{x}),& \mathsf{x}\in I,\end{array}\right.\tag{2.4}

其中,INCI^C_N 是 Chebyshev 插值运算符,使得

(INCv)Ii(xji)=vIi(xji),xjiINi,  0jNi,  i=1,2.(2.5)(I_{N}^{\mathsf{C}}v) \mid_{I_{i}} (x_{j}^{i})=v\mid_{I_{i}} (x_{j}^{i} ),\quad x_{j}^{i}\in I_{N}^{i},\ \ 0\leq j\leq N_{i},\ \ i=1,2.\tag{2.5}

ττ 为变量 tt 中的网格大小,并设置 tk=kτk=01nT (nTτ=T).t_{k}=k\tau\text{, }k=0\text{, }1\text{, }\cdots\text{, }n_{T}\text{ (}n_{T}\tau=T\text{).}。为简单起见,我们用 uk 表示 uk(x) := u(x, tk) 并定义

📌 欢迎关注 FEMATHS 小组与山海数模,持续学习更多数学建模与科研相关知识!

HomPINNs: Homotopy physics-informed neural networks for learning multiple solutions of nonlinear elliptic differential equations

· 25 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇使用同调法与 PINN 相结合解决非线性椭圆微分方程的论文,并处理了不规则边界区域。

摘要

摘要原文:

Physics-informed neural networks (PINNs) based machine learning is an emerging framework for solving nonlinear differential equations. However, due to the implicit regularity of neural network structure, PINNs can only find the flattest solution in most cases by minimizing the loss functions. In this paper, we combine PINNs with the homotopy continuation method, a classical numerical method to compute isolated roots of polynomial systems, and propose a new deep learning framework, named homotopy physics-informed neural networks (HomPINNs), for solving multiple solutions of nonlinear elliptic differential equations. The implementation of an HomPINN is a homotopy process that is composed of the training of a fully connected neural network, named the starting neural network, and training processes of several PINNs with different tracking parameters. The starting neural network is to approximate a starting function constructed by the trivial solutions, while other PINNs are to minimize the loss functions defined by boundary condition and homotopy functions, varying with different tracking parameters. These training processes are regraded as different steps of a homotopy process, and a PINN is initialized by the well-trained neural network of the previous step, while the first starting neural network is initialized using the default initialization method. Several numerical examples are presented to show the efficiency of our proposed HomPINNs, including reaction-diffusion equations with a heart-shaped domain.

摘要翻译:

基于物理信息神经网络(PINNs)的机器学习是一种新兴的非线性微分方程求解框架。然而,由于神经网络结构的隐含规律性,PINNs 在大多数情况下只能通过最小化损失函数找到最平坦的解。在本文中,我们将 PINNs 与同调延续法(一种计算多项式系统孤立根的经典数值方法)相结合,提出了一种新的深度学习框架,命名为同调物理信息神经网络(HomPINNs),用于求解非线性椭圆微分方程的多解。HomPINN 的实现是一个同调过程,由一个名为起始神经网络的全连接神经网络的训练和多个具有不同跟踪参数的 PINN 的训练过程组成。起始神经网络用于逼近由三元解构建的起始函数,而其他 PINN 则用于最小化由边界条件和同调函数定义的损失函数,这些函数随不同的跟踪参数而变化。这些训练过程被重新划分为同调过程的不同步骤,一个 PINN 由上一步训练有素的神经网络初始化,而第一个起始神经网络则使用默认初始化方法初始化。本文列举了几个数值示例来说明我们提出的 HomPINN 的效率,其中包括具有心形域的反应扩散方程。

An efficient neural-network and finite-difference hybrid method for elliptic interface problems with applications

· 5 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇变系数的波动方程,提出了一种新的格式。

摘要

摘要原文:

A new and efficient neural-network and finite-difference hybrid method is developed for solving Poisson equation in a regular domain with jump discontinuities on embedded irregular interfaces. Since the solution has low regularity across the interface, when applying finite difference discretization to this problem, an additional treatment accounting for the jump discontinuities must be employed. Here, we aim to elevate such an extra effort to ease our implementation by machine learning methodology. The key idea is to decompose the solution into singular and regular parts. The neural network learning machinery incorporating the given jump conditions finds the singular solution, while the standard five-point Laplacian discretization is used to obtain the regular solution with associated boundary conditions. Regardless of the interface geometry, these two tasks only require supervised learning for function approximation and a fast direct solver for Poisson equation, making the hybrid method easy to implement and efficient. The two- and three-dimensional numerical results show that the present hybrid method preserves second-order accuracy for the solution and its derivatives, and it is comparable with the traditional immersed interface method in the literature. As an application, we solve the Stokes equations with singular forces to demonstrate the robustness of the present method.

摘要翻译:

一种新型高效的神经网络与有限差分混合方法被开发用于求解具有嵌入式不规则界面跳变不连续性的规则域中的泊松方程。由于解在界面处具有较低的正则性,当对该问题应用有限差分离散化时,必须采用额外处理以考虑跳变不连续性。本文旨在通过机器学习方法将此额外处理简化,以提升实现效率。

核心思想是将解分解为奇异部分和规则部分。神经网络学习机制结合给定的跳变条件求解奇异解,而标准五点拉普拉斯离散化用于获得满足边界条件的规则解。无论界面几何如何,这两个任务仅需监督学习进行函数逼近和快速直接求解器求解泊松方程,使混合方法易于实现且高效。二维和三维数值结果表明,本混合方法可保持解及其导数的二阶精度,且与文献中传统的浸入式界面方法相当。作为应用示例,我们通过求解带有奇异力的斯托克斯方程,验证了本方法的鲁棒性。

A new analytical formula for the wave equations with variable coefficients

· 14 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇变系数的波动方程,提出了一种新的格式。

摘要

摘要原文:

This article presents a new analytical formula for the Cauchy problem of the wave equation with variable coefficients, which is a much simpler solution than that given by the Poisson formula. The derivation is based on the variation-of-constants formula and the theory of pseudodifferential operator. The formula is applied to an example to illustrate the feasibility.

摘要翻译:

本文提出了一个新的解析公式,用于求解具有变系数的波方程的柯西问题,该公式比泊松公式给出的解要简单得多。该公式的推导基于常数变换公式和伪微分算子理论。该公式被应用于一个例子,以说明其可行性。

Novel and general discontinuity-removing PINNs for elliptic interface problems

· 25 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇关于处理变系数边界问题的 PINN 论文。

摘要

摘要原文:

This paper proposes a novel and general framework of the discontinuity-removing physicsinformed neural networks (DR-PINNs) for addressing elliptic interface problems. In the DR-PINNs, the solution is split into a smooth component and a non-smooth component, each represented by a separate network surrogate that can be trained either independently or together. The decoupling strategy involves training the two components sequentially. The first network handles the non-smooth part and pre-learns partial or full jumps to assist the second network in learning the complementary PDE conditions. Three decoupling strategies of handling interface problems are built by removing some jumps and incorporating cusp-capturing techniques. On the other hand, the decoupled approaches rely heavily on the cusp-enforced level-set function and are less efficient due to the need for two separate training stages. To overcome these limitations, a novel DR-PINN coupled approach is proposed in this work, where both components learn complementary conditions simultaneously in an integrated single network, eliminating the need for cusp-enforced level-set functions. Furthermore, the stability and accuracy of training are enhanced by an innovative architecture of the lightweight feedforward neural network (FNN) and a powerful geodesic acceleration Levenberg-Marquardt (gd-LM) optimizer. Several numerical experiments illustrate the effectiveness and great potential of the proposed method, with accuracy outperforming most deep neural network approaches and achieving the state-of-the-art results.

摘要翻译:

本文提出了一种新型且通用的断续性消除物理信息神经网络(DR-PINNs)框架,用于解决椭圆型界面问题。在 DR-PINNs 中,解被分解为光滑部分和非光滑部分,每个部分由独立的神经网络代理表示,这些代理可以单独训练或共同训练。解耦策略涉及依次训练这两个部分。第一个网络处理非光滑部分,并预先学习部分或全部跳跃,以协助第二个网络学习互补的偏微分方程(PDE)条件。通过去除部分跳跃并结合尖点捕获技术,构建了三种处理界面问题的解耦策略。另一方面,解耦方法高度依赖于尖点强制水平集函数,且由于需要两个独立的训练阶段而效率较低。为克服这些局限性,本文提出了一种新型 DR-PINN 耦合方法,其中两个组件在集成单一网络中同时学习互补条件,消除了对尖点强制水平集函数的需求。此外,通过轻量级前馈神经网络(FNN)的创新架构和强大的几何加速 Levenberg-Marquardt(gd-LM)优化器,训练的稳定性和准确性得到提升。多个数值实验验证了所提方法的有效性和巨大潜力,其精度显著优于现有方法。

DeepONet: Learning nonlinear operators for identifying differential equations based on the universal approximation theorem of operators

· 16 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇开山之作提出了一个深度学习框架 DeepONet 用于求解偏微分方程的求解器,这篇论文介绍了原理。

摘要

摘要原文:

While it is widely known that neural networks are universal approximators of continuous functions, a less known and perhaps more powerful result is that a neural network with a single hidden layer can approximate accurately any nonlinear continuous operator [5]. This universal approximation theorem is suggestive of the potential application of neural networks in learning nonlinear operators from data. However, the theorem guarantees only a small approximation error for a sufficient large network, and does not consider the important optimization and generalization errors. To realize this theorem in practice, we propose deep operator networks (DeepONets) to learn operators accurately and efficiently from a relatively small dataset. A DeepONet consists of two sub-networks, one for encoding the input function at a fixed number of sensors xi=1,...,mx_i = 1, ... , m (branch net), and another for encoding the locations for the output functions (trunk net). We perform systematic simulations for identifying two types of operators, i.e., dynamic systems and partial differential equations, and demonstrate that DeepONet significantly reduces the generalization error compared to the fully-connected networks. We also derive theoretically the dependence of the approximation error in terms of the number of sensors (where the input function is defined) as well as the input function type, and we verify the theorem with computational results. More importantly, we observe high-order error convergence in our computational tests, namely polynomial rates (from half order to fourth order) and even exponential convergence with respect to the training dataset size.

摘要翻译:

尽管神经网络是连续函数的通用逼近器这一事实广为人知,但一个较少为人所知且可能更强大的结果是:具有单个隐藏层的神经网络能够精确逼近任何非线性连续算子。这一通用逼近定理暗示了神经网络在从数据中学习非线性算子方面的潜在应用。然而,该定理仅保证在网络规模足够大时存在较小的逼近误差,并未考虑重要的优化误差和泛化误差。为了在实践中实现这一定理,我们提出**深度算子网络(DeepONets)**以从相对较小的数据集准确高效地学习算子。一个 DeepONet 由两个子网络组成:一个用于在固定数量的传感器上编码输入函数 xi=1,...,mx_i = 1, ..., m(分支网络),另一个用于编码输出函数的位置(主干网络)。我们通过系统性模拟识别两种类型的算子,即动态系统和偏微分方程,并证明 DeepONet 相较于全连接网络显著降低了泛化误差。我们还从理论上推导了近似误差与传感器数量(即输入函数定义的传感器数量)以及输入函数类型之间的依赖关系,并通过计算结果验证了该定理。更重要的是,我们在计算测试中观察到高阶误差收敛,即多项式收敛率(从半阶到四阶)甚至与训练数据集大小相关的指数收敛。

Machine learning based spectral methods for partial differential equations

· 7 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇使用谱元方法与 PINN(物理信息神经网络)相结合的论文。

摘要

摘要原文:

Spectral methods are an important part of scientific computing’s arsenal for solving partial differential equations (PDEs). However, their applicability and effectiveness depend crucially on the choice of basis functions used to expand the solution of a PDE. The last decade has seen the emergence of deep learning as a strong contender in providing efficient representations of complex functions. In the current work, we present an approach for combining deep neural networks with spectral methods to solve PDEs. In particular, we use a deep learning technique known as the Deep Operator Network (DeepONet) to identify candidate functions on which to expand the solution of PDEs. We have devised an approach that uses the candidate functions provided by the DeepONet as a starting point to construct a set of functions that have the following properties: (1) they constitute a basis, (2) they are orthonormal, and (3) they are hierarchical, i.e., akin to Fourier series or orthogonal polynomials. We have exploited the favorable properties of our custom-made basis functions to both study their approximation capability and use them to expand the solution of linear and nonlinear time-dependent PDEs. The proposed approach advances the state of the art and versatility of spectral methods and, more generally, promotes the synergy between traditional scientific computing and machine learning.

摘要翻译:

谱方法是科学计算用于求解偏微分方程 (PDE) 的重要工具。然而,它们的适用性和有效性在很大程度上取决于用于扩展偏微分方程解的基函数的选择。近十年来,深度学习异军突起,成为提供复杂函数高效表示的有力竞争者。在当前的工作中,我们提出了一种将深度神经网络与光谱方法相结合来求解 PDE 的方法。特别是,我们使用一种被称为深度算子网络(DeepONet)的深度学习技术来识别候选函数,并在此基础上扩展 PDE 的求解。我们设计了一种方法,以 DeepONet 提供的候选函数为起点,构建一组具有以下特性的函数:(1) 它们构成一个基础;(2) 它们是正交的;(3) 它们是分层的,即类似于傅里叶级数或正交多项式。我们利用定制基函数的有利特性,研究了它们的近似能力,并利用它们扩展了线性和非线性时变 PDE 的解。所提出的方法推进了频谱方法的技术水平和多功能性,更广泛地说,促进了传统科学计算与机器学习之间的协同作用。

其实只要细读了他的摘要就可以发现这篇论文的做法比较独特,他并不是把机器学习与谱方法相融合,而是采取了一种分阶段的模式,第一步是使用 DeepONet 去识别候选函数,再利用常规的谱方法来完成剩下的计算工作,他并不是一整块的模型而是耦合度低的分阶段模型。这种思想其实结合误差达到 10410^{-4}10810^{-8} 就能够理解,不过也算是给机器学习融合谱方法提供了一种思路,接下来我们详细的阅读这篇文章的结果以及方法。

Related GANs and their SRGAN ablation experiments

· 22 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

本文将从三部分,即 GAN 模型的理论部分,代码(实践)部分及 SRGAN 的消融试验部分展开介绍

1. GAN(Generative Adversarial Network)生成对抗网络

核心:由两个神经网络——生成器(Generator)和判别器(Discriminator)组成,通过博弈过程相互提升。 · 生成器:试图“伪造”以假乱真的数据。 · 判别器:判断输入是真实数据还是生成器伪造的。 · 训练目标:生成器希望骗过判别器,判别器希望准确识别真假。 本质上是一个最大最小问题:

minGmaxD Expdata[logD(x)]+Ezpz[log(1D(G(z)))]\min_G \max_D \ \mathbb{E}_{x \sim p_{\text{data}}} \left[ \log D(x) \right] + \mathbb{E}_{z \sim p_z} \left[ \log \left(1 - D(G(z)) \right) \right]

2. cGAN(Conditional GAN)条件生成对抗网络

核心:在 GAN 的基础上,引入“条件”信息(如标签、图像、文本等) · 生成器和判别器都接收条件变量 · G(z,y):在条件 y 下生成图像 · D(x,y):判断图像是否为在条件 y 下真实的 用途:图像翻译(如黑白图像上色)、语义图生成图像、文本生成图像 目标函数:

Automated and Context-Aware Repair of Color-Related Accessibility Issues for Android Apps

· 12 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

1. 摘要

约 15% 的全球人口受到各种残障或视力障碍的影响,但许多移动端的用户体验(UX)设计师和开发者在开发 App 时并未重视可访问性问题。这意味着每七个人中就有一个用户在使用 App 时面临不平等的体验,这不仅影响用户,也可能违反相关法规。实际上,如果 App 开发时考虑可访问性,不仅能提升整体用户体验,还能提升商业价值。因此,已有不少研究和检测工具被提出用于识别可访问性问题。

然而,与检测相比,修复工作明显滞后,尤其是“颜色相关的可访问性问题”——比如文字对比度不足和图片对比度不佳,这类问题极大地影响了低视力用户和老年用户的使用体验,而当前的修复方法对此无能为力。

为此,我们提出了 Iris:一种自动化且具备上下文感知能力的方法,用于修复颜色相关的可访问性问题。该方法通过设计一致性的颜色替换策略和属性定位算法,在修复问题的同时保持 UI 风格的一致性。实验显示,Iris 可达到 91.38% 的修复成功率,且效率较高。用户调研也表明其结果令人满意,开发者反馈积极。我们在 GitHub 上提交的 40 个 Pull Request 中已有 9 个被合并,另有 4 个正在积极沟通后续修复。Iris 工具现已开源,旨在推动移动可访问性修复领域的进一步研究。

从入门到入土?不,是精通!科技论文完全指南:如何正确且高效地阅读一篇科技论文

· 8 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

如果你读到这里,或许你已经准备好去探索这个领域的规律与本质。在我们看来,**认真对待每一篇论文,是科研之路的起点,更是最重要的一步。**正如教育部“长江学者”特聘教授尹芝南所言:

“阅读我们的文献,是从事科学研究的基础,也是我们研究生的必修课程。”

从头到尾逐字翻译或阅读一篇科技论文,实际上是效率最低的方式。经验丰富的科研人员通常会优先关注文章中最关键的信息,以进行快速判断其研究价值与相关性。

正确有效的阅读一篇科技论文

阅读一篇科技论文效率最低的方法就是从头到尾翻译。专家研究人员会从文章中较为关键的点进行查找发现。一般来说,大多数科技论文会分为五个部分,如图红色部分:

7.png

  • Abstract
  • Introduction
  • Method
  • Result
  • Discussion

从入门到入土?不,是精通!科技论文完全指南:如何写出一篇优秀的科技论文

· 18 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

相信看到这里的朋友,已经对一篇科研论文(Research Article)的基本结构相当熟悉了。科研工作者最常撰写的文章类型之一就是采用 IMRaD 模式 的研究论文,即包括以下几个部分:

  • I – Introduction(引言)
  • M – Methods(方法)
  • R – Results(结果)
  • A – Abstract(摘要)
  • D – Discussion(讨论)

我将结合自己的经历,分享论文写作的一般流程。需要注意的是,论文的撰写顺序通常并不等同于其最终的排版结构。在科研实践中,写作往往是从已有的研究结果出发,逐步向前、向后延展的。

通常,在完成一段时间的实验或建模工作后,我们首先获得的是一组数据或研究结果。因此,写作往往是从 Results(结果) 开始,根据结果再去梳理并书写 Methods(方法),说明这些结果是如何得到的。随后撰写 Discussion(讨论),对结果进行分析和解释,进一步明确其意义与不足之处。

在此基础上,我们再回到前面,撰写 Introduction(引言),梳理研究背景、动机、已有工作与创新点。最后撰写 Abstract(摘要),对全文进行简洁总结。

Bioinformatic analysis:linux操作指南之上游分析(Part 1)

· 6 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

1. 安装 linux

这就不多说了,自己搞一个虚拟机,我用的是 Centos7。

ps:如果使用的是学校集群的话,注意在修改密码中改一下自己的密码,开启后账号为:root,密码自定义(注意是暗文,你敲进去是不会显示的)结束了 enter 即可

2. 预先安装

首先要安装 anaconda,为了不污染环境

-- 安装linux安装包(如果报错自己去anaconda网站找地址)
wget https://repo.anaconda.com/archive/Anaconda3-2023.07-Linux-x86_64.sh

-- 解压anaconda,后面的就是刚刚安装好的名字
bash Anaconda3-2023.07-Linux-x86_64.sh

-- 更新环境变量
source ~/.bashrc

Bioinformatic analysis:质量控制与聚类分析(Part 2)

· 6 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

1. 测出数据部分

在通过前文的处理之后,我们得到了两个输出文件,分别为 raw_feature_bc_matrix 和 filter_feature_bc_matrix。前者为原始数据,后者为 cellranger 经过自己处理后的数据,后续的分析会基于 filter_feature_bc_matrix 文件夹(上游比对分析产生的三个文件)。文件夹目录如下

--filter_feature_bc_matrix
----barcodes.tsv
----features.tsv
----matrix.mtx

逐一解释:

**barcodes.tsv:**细胞标签

**features.tsv:**基因 ID

**matrix.mtx:**表达数据

后续我们会使用 seurat(R 语言)进行分析

Bioinformatic analysis:差异基因与细胞标注(Part3)

· 4 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

在单细胞 RNA 测序分析中,聚类之后筛选差异基因的主要目的是为了深入理解不同细胞群体之间的生物学差异。首先先看我们筛选出来的数据并对其进行解释

**p_val:**基因表达量差异 P 值(一般不看这个)

**p_val_adj:**校正后的 P 值(一般看这个)

**avg_log2FC:**基因在该细胞簇中与其他细胞簇表达量差异倍数的 log 值,一般大于 2 是最好的效果,说明差异很大

**pct.1:**在该细胞簇中表达该基因的细胞数量占比

**pct.2:**在其他细胞簇中表达该基因的细胞数量占比平均值

**cluster:**在哪一类簇中

**gene:**名字

**myroc:**roc 评分,范围从[0,1] ,越大越好


Bioinformatic analysis:富集分析 (Part4)

· 5 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

通过前文我们可以提取出差异基因,然而差异基因的数量较多,对其进行分析会十分冗长,因此我们可以采取富集分析的方式进行归类。富集的意思是表示差异基因或者差异物质中注释到某个代谢通路的基因或者物质数目在所有差异基因或者物质中的比例显著大于背景基因或物质中注释到某个代谢通路的基因或物质数目在所有背景基因或者物质中的比例。简而言之一句话概括:该差异基因在特定的通路上占比很大

5.1 GO 富集分析

主要用来看基因的三个方面,分别是分子功能、细胞组分、参与的生物过程。

举例,铁离子结合的 GO term 是 GO:0005506,如果我们对所得到的差异基因进行 GO 富集分析后得到该 term 富集,则我们可以认为我们所研究的现象可能与铁离子结合有关系

进行 go 分析时,可以得到如下数据:

参数解释:

category: Gene Ontology 数据库中唯一的标号信息

**over_represented_pvalue:**富集分析 P 值,P 值越小越显著

under_represented_pvalue:

**numDEInCat:**该功能类下的差异基因数目

**numInCat:**该功能类下的基因数目

**term:**Gene Ontology 功能的描述信息

**ontology:**该 GO 的类别(CC,细胞组分;BP,生物进程;MF,分子功能)。

接着,还可以可视化 DAG 图,分支代表包含关系,从上至下所定义的功能范围越来越小,一般选取 GO 富集分析的结果前 5 位作为有向无环图的主节点,颜色的深浅代表富集程度。概括的说, 可以分析 GO terms 在富集分析中是否显著,并且 terms 是如何相互关联的

Bioinformatic analysis:PPI分析(Part 5)

· 2 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

这两块代码含量都比较少,大部分通过在线分析就可以出结果

构建差异表达基因编码的蛋白质之间的相互作用网络,识别关键调控蛋白质或蛋白质复合物。

输出的是 PPI 网络图及其分析结果,发现核心蛋白质。

在线分析网站:356 items (Macaca mulatta) - STRING interaction network (string-db.org)

可选选项:

  1. 隐藏无关联节点
  2. 节点多少可由 score 设置
  3. 保存为 tsv 文件(as tabular test output),进入到 cytoscape 进行美化
  4. 多个选 Multiple proteins;单个选 Protein by name

Bioinformatic analysis:拟时序分析(Part 6)

· 4 min read
zqqqj
super bug engineer 4 nlp,robot,cv,ml and ds

在进行了聚类之后,其实各细胞是否具有同种生存状态是未知的。拟时序分析的目的就在于将细胞分为不同的分支,将各点(细胞)体现在不同的时间坐标中,从而了解各细胞的状态定位

在做拟时序分析的时候,采取的是机器学习方法(无监督和有监督),因此需要一定的生物学知识对图标进行判断,图中主要是为了表达细胞之间(簇)表达谱系的连续性,因此方向未必与现实情况相同(需要在代码中加入 reserve)

举个例子:B 细胞不会分化为 NK 细胞,但在图中就会如此,这就是 reserve 的作用

本文主要采取无监督的方法进行分析


tips:无监督就是没有真实数据,有监督就是包含一定的真实数据

  • 无监督数据:常见的如单细胞 RNA 测序数据,在特定的发育阶段采集了样本,但不确定细胞的确切时间顺序。
  • 有监督数据:例如药物处理实验,在不同时间点采集了单细胞样本,记录了每个样本的处理时间,通过这些时间点信息可以进行有监督的拟时序分析。

首先,使用 monocol2 创建 CellDataset 对象后,就有了拟时分析结果的可视化,我们可以将其分为:

state 状态:

代表了细胞在某一生物学过程中所处的不同阶段。例如,在细胞分化过程中,初始的未分化状态、不同分化路径中的中间状态,以及终末分化状态,都会被标记为不同的“state”。

Physics Informed Deep Learning (Part I) Data-driven Solutions of Nonlinear Partial Differential Equations

· 11 min read
Tanger
Academic rubbish | CV Engineers | Visual bubble | compute math | PINN | Mathematical model

这是一篇关于使用数据驱动方法实现的 Physics-Informed Deep Learning(PINN)经典论文。

论文的来源

    首先,本人通过搜索很多 PINN 的论文,发现许多论文都在引用这篇论文,在好奇心的驱使下就在 google 学术上搜索了这篇论文,我们可以看到出现了两个版本,从标题名上看大致相同,作者也没变化。据开组会时,覃老师介绍说可能是因为前面这个版本是相当于没有正式发表还处于一个草稿阶段,后面那篇是经过整理并发表到了比较好的期刊中,我们可以从引用量(比较粗的红线)以及 easyScholar (比较细的红线)打上的标签还有作者希望我们引用这项工作的论文排名(作者更希望我们引用 2019 年正式分布的那篇)中看到区别,但不妨碍这几篇论文的优秀性,总的来说 M Raissi 等人的工作是非常出色的。