最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

賽槳PaddleScience v1.0正式版發(fā)布,飛槳科學計算能力全面升級!

2023-07-19 12:30 作者:飛槳PaddlePaddle  | 我要投稿

AI for Science日益表現(xiàn)出突破傳統(tǒng)科學研究能力瓶頸的巨大潛力,正在成為全球科學研究新范式。近年來,各學科不斷加入,模型精度、泛化性逐漸提高,不同技術(shù)路徑、不同應(yīng)用場景的AI for Science成功應(yīng)用不斷涌現(xiàn),深度融合領(lǐng)域知識的AI for Science基礎(chǔ)軟件也蓬勃發(fā)展,為各領(lǐng)域AI for Science研究人員提供了一大批簡單易用的工具軟件。

百度飛槳作為擁有國內(nèi)最大開源用戶群體的深度學習平臺,一直致力于將AI方法應(yīng)用于基礎(chǔ)科研,通過不斷提升飛槳框架對科學問題的求解機制,并建設(shè)端到端的科學計算工具組件來加速AI與傳統(tǒng)科學研究的融合。在過去的一年中,飛槳框架通過全量支持開源科學計算工具DeepXDE以及對大量科學領(lǐng)域論文代碼的重構(gòu),進一步完善了飛槳科學計算的機制,并形成了賽槳PaddleScience v1.0的四大特色能力:

  • 從易用性角度,兼顧用戶體驗,進行了API架構(gòu)的更新;

  • 支持更廣泛的底層模型,如CNN、U-Net、Transformer等;

  • 提供豐富的場景案例,如2D&3D圓柱繞流、渦激振動等基礎(chǔ)案例以及氣象預(yù)報、污染物擴散等行業(yè)案例;

  • 更加全面的API支持,如自定義偏微分方程及各類邊界條件、支持2D&3D基礎(chǔ)幾何定義等。

飛槳AI for Science功能全景如下圖所示。

圖 飛槳AI4S全景圖

飛槳框架的技術(shù)創(chuàng)新

為了有力支撐科學計算高階微分方程求解等任務(wù)需求,飛槳框架對整體訓(xùn)練架構(gòu)進行升級,在不改變現(xiàn)有用戶使用習慣的基礎(chǔ)上,用戶可以使用飛槳框架API進行動態(tài)圖組網(wǎng)調(diào)試,并通過動轉(zhuǎn)靜、算子組合、編譯優(yōu)化技術(shù)提升訓(xùn)練性能。

圖 框架技術(shù)創(chuàng)新
  • 飛槳框架 API

基于上述訓(xùn)練架構(gòu),飛槳可以低成本方式支持高階自動微分,不再需要通過手寫高階微分算子,當前飛槳框架支持50多個常用API高階自動微分,并可持續(xù)擴展,已在EulerBeam、圓柱繞流等40+案例及模型驗證。除此之外,飛槳支持科學計算所需的通用一階微分Jacobian、通用二階微分Hessian、二階優(yōu)化器L-BFGS等開發(fā)接口。

  • 算子組合機制

組合機制為飛槳最新創(chuàng)新技術(shù)之一,旨在降低飛槳手寫算子數(shù)量,低成本實現(xiàn)高階微分、硬件接入、編譯器接入。該技術(shù)核心是定義少量基礎(chǔ)算子集合,即加減乘除等基礎(chǔ)處理運算,針對該少量算子集實現(xiàn)反向微分等規(guī)則,然后將復(fù)雜算子拆解為基礎(chǔ)算子組合表示。預(yù)期最終態(tài)飛槳前向算子數(shù)量由600+降低到300左右,且大部分場景不再需要手寫高階算子,實現(xiàn)高階微分、新硬件接入、編譯器接入成本的大幅降低。

  • 編譯優(yōu)化

編譯器是上述技術(shù)路線中加速模型訓(xùn)推速度的關(guān)鍵技術(shù)。其主要技術(shù)點在于將基礎(chǔ)算子IR表示映射到編譯器高層IR表示,并通過高級別的PASS優(yōu)化進行整圖優(yōu)化操作,如算子融合、常量折疊、代數(shù)化簡、無關(guān)計算剪枝與變量釋放等。然后將高層IR轉(zhuǎn)成硬件無關(guān)的低層IR表示,自動生成適配不同硬件的代碼。通過使用神經(jīng)網(wǎng)絡(luò)編譯器技術(shù),Laplace方程求解性能提升3倍。

  • 硬件支持

當前飛槳針對科學計算算子,在國產(chǎn)硬件DCU和XPU上加速適配,其中DCU上已經(jīng)能夠全量運行以飛槳為后端的DeepXDE。

科學計算工具組件

賽槳PaddleScience?v1.0

基于飛槳深度學習框架的高層API以及高階自動微分機制,飛槳同步升級并推出了科學計算工具組件賽槳PaddleScience v1.0。針對傳統(tǒng)數(shù)值計算方法面臨的維數(shù)高、耗時長、跨尺度的挑戰(zhàn),綜合數(shù)學計算與物理數(shù)據(jù)相結(jié)合的處理方法,提供物理機理、數(shù)據(jù)驅(qū)動等范式來求解問題。同時圍繞計算流體力學(CFD)、結(jié)構(gòu)有限元仿真、氣象預(yù)測等領(lǐng)域構(gòu)建經(jīng)典的AI for Science領(lǐng)域案例,為廣大科研工作者提供可復(fù)用的案例開源代碼以促進AI與基礎(chǔ)科學的融合。

賽槳PaddleScience v1.0正式版包含了如下四方面的特色:

  • API架構(gòu)更新

從用戶使用習慣角度,兼顧深度學習及CFD&CAE用戶體驗,從數(shù)據(jù)預(yù)處理、模型選擇、網(wǎng)絡(luò)優(yōu)化求解、結(jié)果后處理等角度更新API元素,提升用戶使用感受。

  • 豐富的場景案例

提供2D & 3D圓柱繞流、渦激振動、對流散熱及方程反演等基礎(chǔ)案例,同時新增結(jié)構(gòu)領(lǐng)域中2D & 3D結(jié)構(gòu)受力分析案例,氣象領(lǐng)域中氣象預(yù)報、污染物擴散等相關(guān)案例,支持直接復(fù)用及二次開發(fā),用戶可從Github代碼倉直接體驗相關(guān)項目的AIStudio實踐。

  • 底層模型更新

新增如CNN、U-Net、Transformer、GAN等經(jīng)典神經(jīng)網(wǎng)絡(luò)模型以及FNO算子學習模型,并提供相應(yīng)驗證案例。

  • API升級更新

提供全新設(shè)計的API供用戶自定義偏微分方程及定義各類邊界條件,支持2D & 3D基礎(chǔ)幾何定義、STL復(fù)雜外形解析及布爾操作等,并提供準隨機采樣、局部加密采樣等功能。

具體功能可詳見:https://paddlescience-docs-hss.readthedocs.io/zh/latest/

圖 PaddleScience v1.0產(chǎn)品全景(* 建設(shè)中)

賽槳提供應(yīng)用于科學計算問題的端到端API,結(jié)合常見CFD業(yè)務(wù)流程中涉及的前處理、求解、后處理等過程,提供計算域定義、深度學習求解、推理及可視化等模塊,并細分為Equation 、Geometry 、Constraint、Arch等API,工具組件設(shè)計架構(gòu)如下。

圖 PaddleScience科學計算工具組件設(shè)計架構(gòu)


  • 方程(Equation)

賽槳支持調(diào)用預(yù)置方程接口及自定義方程接口,支持任意階次的常微分(ODE)、偏微分(PDE)等方程定義,同時預(yù)置了如Navier-Stokes方程、Laplace方程等接口,可直接修改、使用。

  • 計算域(Geometry)

賽槳提供常用的2D & 3D 規(guī)則幾何,包括線段、圓、多邊形、長方體、球體等。同時支持外部CAD工具生成*.STL格式文件的導(dǎo)入、解析及局部加密采樣等功能,并提供幾何體之間的布爾運算,以支撐任意復(fù)雜計算域的定義。

  • 約束(Constraint)

賽槳最新的Constraint約束模塊,提供了任意數(shù)據(jù)源的計算約束定義。包含計算過程中的物理邊界條件(Boundary Conditions)約束以及目標信息監(jiān)督約束,支持基礎(chǔ)的三類邊界條件(Dirichlet/Neumann/Robin BC)及用戶自定義邊界條件(General BC)定義,可支撐物理機理(數(shù)據(jù)主要來自幾何)、數(shù)據(jù)驅(qū)動(數(shù)據(jù)主要來自數(shù)據(jù)文件)、數(shù)理融合(數(shù)據(jù)來自幾何和數(shù)據(jù)文件)三種不同的訓(xùn)練范式。

  • 網(wǎng)絡(luò)(Arch)

賽槳支持多種網(wǎng)絡(luò)模型結(jié)構(gòu),包括多層感知機(MLP)、Transformer等。提供網(wǎng)絡(luò)參數(shù)初始化定義及預(yù)訓(xùn)練網(wǎng)絡(luò)參數(shù)加載等功能,并支持多種激活函數(shù),包括Tanh、Silu、Relu等。?

  • 損失函數(shù)(Loss)

賽槳提供了多種預(yù)置的Loss計算方式,如MSELoss、MAELoss、L2RelativeLoss,同時支持多種粒度的Loss權(quán)重配置,如:?

Loss%3DLoss_%7Bequation%7D%2B%5Comega%20_%7Bic%7DLoss_%7Bic%7D%2B%5Comega%20_%7Bbc%7D%20%7B%5Ctextstyle%20%5Csum_%7B(i%2Cj)%7D%5E%7B%7D%7D%20(out_%7B(i%2Cj)%7D%20-label_%7B(i%2Cj)%7D%20)

  • 優(yōu)化器(Optimizer)

賽槳支持常見的一階優(yōu)化器SGD、Momentum、Adam、AdamW,同時支持二階優(yōu)化器L-BFGS進一步提升模型精度。

  • 評估與與可視化(Validator、Visualizer)

賽槳采用訓(xùn)練、評估、可視化分離的代碼設(shè)計方案。通過開啟評估、可視化功能,以在訓(xùn)練時自動評估當前模型在指定數(shù)據(jù)集上的精度,并可視化結(jié)果。也可以直接載入預(yù)訓(xùn)練好的模型,手動評估、可視化。

  • 高階微分(AutoDiff)

賽槳基于飛槳框架的高階微分能力,預(yù)置了一階、二階微分接口,并可進一步組合出三階甚至更高階的微分接口,以滿足多種微分場景的需求。

飛槳AI for?Science科學領(lǐng)域案例

針對流體、結(jié)構(gòu)、傳熱以及氣象等領(lǐng)域,飛槳框架完成了領(lǐng)域中廣泛問題的網(wǎng)絡(luò)模型驗證,如可應(yīng)用于穩(wěn)態(tài)問題的CNN/U-Net網(wǎng)絡(luò),可應(yīng)用于瞬態(tài)問題的LSTM/Transformer/GNN網(wǎng)絡(luò),以及應(yīng)用于物理場重構(gòu)問題的VAE/GAN網(wǎng)絡(luò)等。同時,上述網(wǎng)絡(luò)模型正持續(xù)集成到賽槳PaddleScience v1.0,與機理求解方法PINN一同,形成了PaddleScience的核心求解器。下面分別介紹PaddleScience在流體和結(jié)構(gòu)兩個領(lǐng)域的實踐。

流體領(lǐng)域案例

在流體領(lǐng)域,結(jié)合賽槳 PaddleScience 從「物理機理驅(qū)動」以及「數(shù)據(jù)驅(qū)動」兩個維度對流體問題進行了分析與求解。

  • 其中物理機理驅(qū)動主要應(yīng)用PINN方法,將物理機理方程作為神經(jīng)網(wǎng)絡(luò)優(yōu)化訓(xùn)練的控制函數(shù)。

  • 數(shù)據(jù)驅(qū)動則利用經(jīng)典神經(jīng)網(wǎng)絡(luò)或算子學習的方式構(gòu)建代理模型?;诖罅康挠?xùn)練數(shù)據(jù),可以驅(qū)動經(jīng)典神經(jīng)網(wǎng)絡(luò)模型,如Transformer、GNN、CNN等,同時也可以驅(qū)動算子學習,構(gòu)建算子神經(jīng)網(wǎng)絡(luò)如FourCastNet、DeepONet等。

3D非定常圓柱繞流

賽槳PaddleScience v1.0目前可支持任意復(fù)雜外形的流場(如基于*STL外形文件的內(nèi)、外流問題),并針對高雷諾流場問題,分析了Re=3900下,3D圓柱繞流的湍流特性。基于PINN方法以及半監(jiān)督的訓(xùn)練方式(圓柱后端尾流區(qū)域采集了一定數(shù)量的監(jiān)督點),實現(xiàn)對3D非定常不可壓縮NS方程的求解。在結(jié)果分析階段,分別從流場的速度、壓力以及渦管結(jié)構(gòu)等與LBM計算的結(jié)果進行對比,二者相對誤差在5%以內(nèi)。其中流場信息的對比結(jié)果如下圖所示。

為了進一步分析流場結(jié)果的合理性,對神經(jīng)網(wǎng)絡(luò)模型的推理結(jié)果進行處理,得到渦管以及流線結(jié)果如下所示,結(jié)果從與LBM計算結(jié)果一致。

圖 3D圓柱繞流流場渦管結(jié)構(gòu)及流線圖

基于TransformerPHX的流場預(yù)測

Transformer網(wǎng)絡(luò)通過注意力機制計算模型輸入與輸出的隱含表示,目前已經(jīng)廣泛應(yīng)用于NLP、CV等領(lǐng)域。在科學計算中,通過將物理信息(數(shù)據(jù)、圖片等)映射為詞向量,也可采用Transformer架構(gòu)實現(xiàn)物理問題的擬合與結(jié)果預(yù)測,如在數(shù)據(jù)驅(qū)動的氣象預(yù)報中,Transformer已經(jīng)展現(xiàn)出了令人矚目的效果。
本案例為基于賽槳對論文Transformer-PHX中網(wǎng)絡(luò)模型及相關(guān)案例進行的復(fù)現(xiàn)。圍繞文中2D非定常圓柱繞流、Lorenz方程等,重構(gòu)了Transformer網(wǎng)絡(luò)模型并在分別對文中提供的案例進行了驗證,網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示。?

圖 Transformer-PHX網(wǎng)絡(luò)結(jié)構(gòu)圖(圖片來源于[Geneva et al.,2020])

案例中所用的訓(xùn)練數(shù)據(jù)集基于OpenFoam生成的分辨率為64128,時間步長為0.5s,并在雷諾數(shù)100~750的范圍內(nèi)隨機選取仿真結(jié)果。完成模型訓(xùn)練后可對100~750雷諾數(shù)范圍內(nèi)的任意工況下實現(xiàn)流場結(jié)構(gòu)的推理。在Re=100工況下,基于Transformer模型推理與OpenFoam計算得到的流場中速度ux、速度uy、壓力的對比結(jié)果下圖所示,其中OpenFoam結(jié)果的前綴為“target_”,Transformer模型的預(yù)測結(jié)果的前綴為“pred_”,圖中展示了180個時間步的預(yù)測結(jié)果。

圖 TransformerPHX結(jié)果與OpenFoam結(jié)果對比

案例鏈接

https://github.com/PaddlePaddle/PaddleScience/tree/release/1.0/examples/cylinder/2d_unsteady/transformer_physx

結(jié)構(gòu)領(lǐng)域案例

在結(jié)構(gòu)領(lǐng)域中,飛機機翼桁架、汽車底盤、輪船甲板等機械結(jié)構(gòu)件的受力變形、破壞以及疲勞損傷等都是最典型的“力學”工程難題,這類結(jié)構(gòu)問題通??捎善胶馕⒎址匠獭缀畏匠毯臀锢矸匠虂砻枋?。傳統(tǒng)的結(jié)構(gòu)分析方法包括有限元法、有限差分法、邊界元法等,往往需要大量的計算資源和人力投入,這會限制模型的規(guī)模和精度?;谖锢硇畔⑸窠?jīng)網(wǎng)絡(luò)(PINN)的AI方法被證明可有效地求解結(jié)構(gòu)領(lǐng)域的物理方程,兼具提升計算速度與減低人力投入的優(yōu)勢。

3D復(fù)雜結(jié)構(gòu)變形分析

實際場景中的結(jié)構(gòu)多為復(fù)雜的拓撲外形,一般基于專業(yè)CAD工具繪制,如Catia/Cero/SolidWorks等,且在進行結(jié)構(gòu)應(yīng)力應(yīng)變分析時,用戶通常需要對結(jié)構(gòu)進行適當?shù)木W(wǎng)格劃分,進而借助專業(yè)的有限元仿真工具進行受力分析,如Abaqus/ANSYS等。賽槳針對復(fù)雜結(jié)構(gòu)外形設(shè)計了全新的幾何API,支持解析常見CAD工具導(dǎo)出的 *.STL中間格式,支持對 *.STL文件進行布爾操作及局部加密采樣。此外,針對各向同性材料的線彈性方程,也進行了詳細定義與驗證。

平衡方程:%5Cbigtriangledown%C2%B7%5Csigma%20%2B%20f%20%3D%20%5Crho%20%5Cfrac%7B%5Cpartial%20%5E%7B2%20%7D%7Bu%7D%20%7D%7B%5Cpartial%20%5E%7B2%20%7D%7Bt%7D%20%7D

協(xié)調(diào)方程:?%5Cbegin%7Bbmatrix%7D%0A%5Cvarepsilon%20_%7Bxx%7D%20%20%5C%5C%0A%5Cvarepsilon%20_%7Byy%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Bzz%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Bxy%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Byz%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Bzx%7D%20%20%5C%5C%0A%5Cend%7Bbmatrix%7D%20%3D%20%5Cbegin%7Bbmatrix%7D%0A%20%5Cfrac%7B%5Cpartial%20u%7D%7B%5Cpartial%20x%7D%20%5C%5C%0A%5Cfrac%7B%5Cpartial%20v%7D%7B%5Cpartial%20y%7D%20%5C%5C%0A%5Cfrac%7B%5Cpartial%20w%7D%7B%5Cpartial%20z%7D%20%5C%5C%0A%5Cfrac%7B1%7D%7B2%7D%20(%5Cfrac%7B%5Cpartial%20u%20%7D%7B%5Cpartial%20y%7D%2B%5Cfrac%7B%5Cpartial%20v%20%7D%7B%5Cpartial%20x%7D)%20%5C%5C%0A%5Cfrac%7B1%7D%7B2%7D%20(%5Cfrac%7B%5Cpartial%20v%20%7D%7B%5Cpartial%20z%7D%2B%5Cfrac%7B%5Cpartial%20w%20%7D%7B%5Cpartial%20y%7D)%20%5C%5C%0A%5Cfrac%7B1%7D%7B2%7D%20(%5Cfrac%7B%5Cpartial%20u%20%7D%7B%5Cpartial%20z%7D%2B%5Cfrac%7B%5Cpartial%20w%20%7D%7B%5Cpartial%20x%7D)%20%5C%5C%0A%5Cend%7Bbmatrix%7D

本構(gòu)方程: ?%5Cbegin%7Bbmatrix%7D%0A%5Csigma%20%20_%7Bxx%7D%20%20%5C%5C%0A%20%5Csigma%20_%7Byy%7D%20%20%20%5C%5C%0A%20%5Csigma%20_%7Bzz%7D%20%20%20%5C%5C%0A%20%5Csigma%20_%7Bxy%7D%20%20%20%5C%5C%0A%5Csigma%20%20_%7Byz%7D%20%20%20%20%5C%5C%0A%20%5Csigma%20_%7Bzx%7D%20%20%20%20%5C%5C%0A%5Cend%7Bbmatrix%7D%20%3D%20%0A%5Cbegin%7Bbmatrix%7D%0A%5Cvarepsilon%20_%7Bxx%7D%20%20%5C%5C%0A%5Cvarepsilon%20_%7Byy%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Bzz%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Bxy%7D%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Byz%7D%20%20%20%20%5C%5C%0A%5Cvarepsilon%20_%7Bzx%7D%20%20%20%5C%5C%0A%5Cend%7Bbmatrix%7D

基于上述方程可對線彈性材料進行在小應(yīng)變條件下的線性彈性行為分析,參照Modulus工具提供的線彈性結(jié)構(gòu)變形案例Bracket,結(jié)構(gòu)左端表面固定,右端表面施加 -Y方向的均布載荷,計算靜平衡狀態(tài)下整個結(jié)構(gòu)的受力與變形。賽槳實現(xiàn)了在PINN方法下無監(jiān)督的求解結(jié)構(gòu)變形,且得到的結(jié)果與Modulus一致。結(jié)果如下,分別為結(jié)構(gòu)在X, Y, Z方向的變形以及三個方向的主應(yīng)力。由于受到-Y方向的均布載荷,所以結(jié)構(gòu)的右端(X方向)沿著-Z方向變形位移最大。同樣在結(jié)構(gòu)左側(cè)連接位置受到的載荷?(%5Csigma%20_%7Bxx%7D%20)?最大。(詳細代碼之后會同步在AIStduio 科學計算項目集中)。

圖 PINN方法求解結(jié)果(上:x,y,z方向結(jié)構(gòu)變形位移結(jié)果;下:結(jié)構(gòu)主應(yīng)力結(jié)果)

總結(jié)

近幾年,百度飛槳持續(xù)全力投入AI for Science的產(chǎn)品創(chuàng)新和交叉型科研生態(tài)建設(shè)。在產(chǎn)品層面,飛槳框架持續(xù)提升對泛科研場景的支撐能力,同時從復(fù)雜科研場景的快速實現(xiàn)、科研領(lǐng)域用戶使用習慣無差別遷移等方面不斷迭代科學計算工具組件賽槳PaddleScience。我們本次為大家?guī)盹w槳最新的框架機制以及開源的賽槳PaddleScience v1.0正式版,希望能夠進一步推動AI for Science基礎(chǔ)軟件的開源活躍度,促進多學科交叉復(fù)合型人才建設(shè)及加快完善基礎(chǔ)軟件技術(shù)生態(tài)體系建設(shè)。

拓展閱讀

  • AI for?Science公眾號

https://reurl.cc/b9WZyo?

  • 飛槳PaddleScience工具組件

https://github.com/PaddlePaddle/PaddleScience

  • 飛槳AI for Science流體力學公開課第一期

https://aistudio.baidu.com/aistudio/course/introduce/27926?

  • 飛槳科學計算實訓(xùn)示例?

https://aistudio.baidu.com/aistudio/projectoverview/public?topic=15?

  • 飛槳AI for Science共創(chuàng)計劃?

https://www.paddlepaddle.org.cn/science?

  • 飛槳PPSIG-Science小組?

https://www.paddlepaddle.org.cn/specialgroupdetail?id=9?

  • 如何注冊AI Studio

https://aistudio.baidu.com/aistudio/index?


賽槳PaddleScience v1.0正式版發(fā)布,飛槳科學計算能力全面升級!的評論 (共 條)

分享到微博請遵守國家法律
安新县| 宁安市| 广丰县| 溧水县| 宜川县| 阿克陶县| 安图县| 中江县| 合水县| 大名县| 江陵县| 郑州市| 新乡县| 广饶县| 金溪县| 宁海县| 庄河市| 富阳市| 读书| 仙居县| 沽源县| 通榆县| 胶州市| 辽中县| 武宁县| 诸暨市| 香港 | 丹巴县| 乾安县| 荥经县| 色达县| 阳江市| 嘉善县| 顺义区| 桃园县| 阜宁县| 班玛县| 石嘴山市| 泽库县| 吴旗县| 白银市|