Simcenter Reduced Order Modeling
專用模型降階軟體,無論數據來源是 3D,1D 還是 CFD 模擬,亦或是物理實驗數據,模擬對象的行為是線性 / 非線性,靜態 / 動態等,都可以基於響應面,AI 神經網路和狀態空間等不同技術高效快速生成可重用的同數據背景無關的降階模型,並部署到不同的場景中使用,在保證精度的前提下,實現在不同場景下的快速乃至於實時模擬。
更多訊息 : Siemens - Simcenter ROM
更多訊息 : Siemens - Simcenter ROM
為何選擇 Simcenter Reduced Order Modeling?
Simcenter Reduced Order Modeling 是易於使用的平臺,可根據模擬和測試資料構建、驗證和匯出降階模型 (ROM)。 面向 ROM 的開放平臺 使用來自任何來源的高保真模擬或測試資料進行超快速的預測,實現更快的決策、協同模擬以及包括控制和監控在內的即時應用。 易於專業和非專業人士使用 從控制理論到神經網路和人工智慧 (AI),獲取全面的一流資料降階方法。通過簡單的無代碼使用者介面輕鬆訓練不同的 ROM 並使用性能指標進行比較。 與 Simcenter 集成 Simcenter Reduced Order Modeling 可與 Simcenter 工具無縫交換資料和模型以執行模擬和物理測試,同時還支援中性格式以執行資料導入和模型匯出。 |
靈活調整,隨機應變瞭解降階建模如何幫助您利用模擬和測試資料完成更多工作。
|
2. 適用於各種工程領域
利用任何形式的模擬或測試資料來使用 ROM,如來自流體和熱、機械、系統模擬或物理測試的資料。Simcenter Reduced Order Modeling 可以從任何來源導入和分析資料,而且可與 Simcenter 產品組合工具無縫集成。
|
|
3. 引導式的工作流程
4. 通用輸出
什麼是神經網路?
神經網路屬於一類非線性回歸器,在使用足夠大的資料集進行訓練後,可以捕捉函數的輸入和輸出之間的非線性關係。神經網路由多個層組成,每層包含固定數量的單元或“神經元”。第一層稱為輸入層,其維度與系統的輸入數量相同。最後一層稱為輸出層,其維度與系統的輸出數量相同。其餘的層稱為隱藏層,其維度取決於相應的單元數量。工具會自動定義輸入層和輸出層;用戶只需定義隱藏層。
神經網路屬於一類非線性回歸器,在使用足夠大的資料集進行訓練後,可以捕捉函數的輸入和輸出之間的非線性關係。神經網路由多個層組成,每層包含固定數量的單元或“神經元”。第一層稱為輸入層,其維度與系統的輸入數量相同。最後一層稱為輸出層,其維度與系統的輸出數量相同。其餘的層稱為隱藏層,其維度取決於相應的單元數量。工具會自動定義輸入層和輸出層;用戶只需定義隱藏層。
神經網路的計算過程包括以下幾個步驟:
神經網路是一種模仿人類神經系統設計的計算模型,用於機器學習和人工智慧領域。它由大量的人工神經元(也稱為節點或單元)組成,這些神經元通過連接形成層級結構。每個神經元接收來自上一層神經元的輸入,通過加權和非線性啟動函數處理後,將輸出傳遞給下一層神經元。
神經網路的訓練過程通常涉及優化網路中權重和偏置的數值,以便根據輸入資料學習到期望的輸出。通過調整這些參數,神經網路可以適應不同的輸入模式,並對複雜的模式進行學習和預測,使其成為強大的模式識別工具。
在 Simcenter Reduced Order Modeling 2404 中,提供了下圖所示的幾種網路模型:
- 輸入層(Input Layer):接收原始資料登錄,每個輸入被視為一個特徵值。
- 隱藏層(Hidden Layers):位於輸入層和輸出層之間的一層或多層神經元。每個神經元計算來自上一層的加權和,並通過啟動函數(如Sigmoid、ReLU等)產生非線性輸出。
- 輸出層(Output Layer):最終層,將隱藏層的輸出映射到預測或分類結果。每個輸出神經元代表一個可能的類別或數值預測。
- 權重和偏置調整:訓練過程中,神經網路通過反向傳播演算法調整每層神經元的權重和偏置,以最小化預測輸出與實際輸出之間的誤差(損失函數)。
- 啟動函數:每個神經元通過啟動函數(如Sigmoid、ReLU等)對加權和進行非線性變換,增強網路的表達能力和適應性。
神經網路是一種模仿人類神經系統設計的計算模型,用於機器學習和人工智慧領域。它由大量的人工神經元(也稱為節點或單元)組成,這些神經元通過連接形成層級結構。每個神經元接收來自上一層神經元的輸入,通過加權和非線性啟動函數處理後,將輸出傳遞給下一層神經元。
神經網路的訓練過程通常涉及優化網路中權重和偏置的數值,以便根據輸入資料學習到期望的輸出。通過調整這些參數,神經網路可以適應不同的輸入模式,並對複雜的模式進行學習和預測,使其成為強大的模式識別工具。
在 Simcenter Reduced Order Modeling 2404 中,提供了下圖所示的幾種網路模型:
Dense
對於靜態問題,僅用密集層Dense layers(也稱為全連接層、前饋層)。可以組合多個層來構建一個深度靜態網路。
對於動態問題,可以用一個或多個遞迴層Recurrent layers來捕捉輸入和輸出之間的時間依賴關係。這些層可以與密集層相結合,形成深度動態網路。
在密集層(或全連接層)中,本層每個節點都連接到下一層中的每個節點。提供了輸入和輸出之間的靜態關係。將上一層的所有輸出傳遞到其所有節點,每個節點向下一層提供一個輸出。密集層是神經網路最基本的層。將多個這種層組合起來,便形成了經典類型的神經網路或多層感知器(MLP)。它們本質上非常靈活,通常可以學習從輸入到輸出的幾乎任何靜態映射。
對於靜態問題,僅用密集層Dense layers(也稱為全連接層、前饋層)。可以組合多個層來構建一個深度靜態網路。
對於動態問題,可以用一個或多個遞迴層Recurrent layers來捕捉輸入和輸出之間的時間依賴關係。這些層可以與密集層相結合,形成深度動態網路。
在密集層(或全連接層)中,本層每個節點都連接到下一層中的每個節點。提供了輸入和輸出之間的靜態關係。將上一層的所有輸出傳遞到其所有節點,每個節點向下一層提供一個輸出。密集層是神經網路最基本的層。將多個這種層組合起來,便形成了經典類型的神經網路或多層感知器(MLP)。它們本質上非常靈活,通常可以學習從輸入到輸出的幾乎任何靜態映射。
Recurrent Neural Network (RNN)
遞迴神經網路(RNN)具有內部狀態,可以在一個時間步長到另一個時間步長存儲資訊,從而能夠捕捉時間上的動態變化。
遞迴神經網路是一種能夠處理序列資料的神經網路,與傳統的前饋神經網路不同,RNN具有“記憶”能力。它們通過在網路中引入迴圈連接,使得網路可以利用先前的輸入資訊來影響當前的輸出。這使得RNN非常適合處理具有時間依賴性或順序性的任務。
遞迴神經網路(RNN)具有內部狀態,可以在一個時間步長到另一個時間步長存儲資訊,從而能夠捕捉時間上的動態變化。
遞迴神經網路是一種能夠處理序列資料的神經網路,與傳統的前饋神經網路不同,RNN具有“記憶”能力。它們通過在網路中引入迴圈連接,使得網路可以利用先前的輸入資訊來影響當前的輸出。這使得RNN非常適合處理具有時間依賴性或順序性的任務。
Gated Recurrent Unit (GRU)
門控遞迴單元(GRU)是一種經過輕微修改的 RNN(是 RNN 的一種變體),除了內部狀態外,還具有控制門。與 RNN 相比,GRU 可以捕獲長期動態。
GRU 是為了解決傳統 RNN 中在處理實際問題時遇到的長期記憶丟失和反向傳播中的梯度消失或爆炸等問題而提出的。
為了解決標準 RNN 的梯度消失問題,GRU 使用了所謂的“更新門”和“重置門”。基本上,這兩個向量決定了哪些資訊應該傳遞給輸出。它們的特別之處在於,可以被訓練來保存長時間以前的資訊,而不是隨時間流逝而消失,或者刪除與預測無關的資訊。
不管 RNN 還是 GRU,本質上處理的是序列學習問題。GRU 中的重置門有助於提取序列中的短期依賴關係,更新門有助於獲取序列資料的長期依賴關係。
門控遞迴單元(GRU)是一種經過輕微修改的 RNN(是 RNN 的一種變體),除了內部狀態外,還具有控制門。與 RNN 相比,GRU 可以捕獲長期動態。
GRU 是為了解決傳統 RNN 中在處理實際問題時遇到的長期記憶丟失和反向傳播中的梯度消失或爆炸等問題而提出的。
為了解決標準 RNN 的梯度消失問題,GRU 使用了所謂的“更新門”和“重置門”。基本上,這兩個向量決定了哪些資訊應該傳遞給輸出。它們的特別之處在於,可以被訓練來保存長時間以前的資訊,而不是隨時間流逝而消失,或者刪除與預測無關的資訊。
不管 RNN 還是 GRU,本質上處理的是序列學習問題。GRU 中的重置門有助於提取序列中的短期依賴關係,更新門有助於獲取序列資料的長期依賴關係。
Long-Short Term Memory (LSTM)
長短時記憶(LSTM)單元具有多種類型的內部狀態和門控機制,可以更好地捕捉長期動態。而遞迴神經網路(RNN)只能回望一個時間步長,LSTM利用額外的內部狀態和門控機制在處理複雜動態時表現更佳。
LSTM是RNN的進階版。和RNN不同的是:RNN就是個簡單的線性求和的過程。而LSTM可以通過“門”結構來去除或者增加“單元狀態”的資訊,實現了對重要內容的保留和對不重要內容的去除。通過Sigmoid層輸出一個0到1之間的概率,描述每個部分有多少量可以通過,0表示“不允許任務變數通過”,1表示“運行所有變數通過 ”。
三個門控制對前一段資訊、輸入資訊以及輸出資訊的記憶狀態,進而保證網路可以更好地學習到長距離依賴關係。
遺忘門(記憶門):通過判斷當前輸入資訊的重要程度決定對過去資訊的保留度;
輸入門:通過判斷當前輸入資訊的重要程度決定對輸入資訊的保留度;
輸出門:當前輸出有多大程度取決於當前記憶單元。
啟動函數:門:sigmoid,0-1分佈概率,符合門控的定義。且當輸入較大或者較小時,值會接近1或0,進而控制開關。
候選記憶:分佈在-1~1之間,與大多場景下0中心分佈吻合。在輸入為0有較大的梯度,使模型更快收斂。
長短時記憶(LSTM)單元具有多種類型的內部狀態和門控機制,可以更好地捕捉長期動態。而遞迴神經網路(RNN)只能回望一個時間步長,LSTM利用額外的內部狀態和門控機制在處理複雜動態時表現更佳。
LSTM是RNN的進階版。和RNN不同的是:RNN就是個簡單的線性求和的過程。而LSTM可以通過“門”結構來去除或者增加“單元狀態”的資訊,實現了對重要內容的保留和對不重要內容的去除。通過Sigmoid層輸出一個0到1之間的概率,描述每個部分有多少量可以通過,0表示“不允許任務變數通過”,1表示“運行所有變數通過 ”。
三個門控制對前一段資訊、輸入資訊以及輸出資訊的記憶狀態,進而保證網路可以更好地學習到長距離依賴關係。
遺忘門(記憶門):通過判斷當前輸入資訊的重要程度決定對過去資訊的保留度;
輸入門:通過判斷當前輸入資訊的重要程度決定對輸入資訊的保留度;
輸出門:當前輸出有多大程度取決於當前記憶單元。
啟動函數:門:sigmoid,0-1分佈概率,符合門控的定義。且當輸入較大或者較小時,值會接近1或0,進而控制開關。
候選記憶:分佈在-1~1之間,與大多場景下0中心分佈吻合。在輸入為0有較大的梯度,使模型更快收斂。
每個神經元包含一個啟動函數,它通過線性或非線性函數調節所有輸入的加權和。這個函數將這個加權和映射到0到1的範圍(例如Sigmoid函數),0到∞的範圍(例如ReLU函數),或者-1到1的範圍(例如TanH函數)。非線性啟動函數使神經網路能夠建模任何類型的函數,使其成為一種通用的函數逼近器。線性啟動通常保留用於輸入和輸出層,這兩層中信號僅僅被簡單地縮放。
訓練神經網路
訓練神經網路指的是找到神經網路所有層的最優權重和偏置的過程。首先,需要將包含輸入和輸出樣本的資料集分成兩個獨立的集合:訓練集和驗證集。通過在訓練集上最小化真實輸出與模型預測輸出之間的均方誤差(也稱為訓練損失),來獲取網路的最優參數。
訓練損失的最小化通常是一個非凸問題,為此提供了兩種優化方法:一種是被稱為Adamax的梯度下降演算法(Gradient descent)的變體,另一種是被稱為Levenberg-Marquardt下降的二階技術。
訓練神經網路指的是找到神經網路所有層的最優權重和偏置的過程。首先,需要將包含輸入和輸出樣本的資料集分成兩個獨立的集合:訓練集和驗證集。通過在訓練集上最小化真實輸出與模型預測輸出之間的均方誤差(也稱為訓練損失),來獲取網路的最優參數。
訓練損失的最小化通常是一個非凸問題,為此提供了兩種優化方法:一種是被稱為Adamax的梯度下降演算法(Gradient descent)的變體,另一種是被稱為Levenberg-Marquardt下降的二階技術。
優化方法本質上是反覆運算的,訓練週期數(Epoch)是指演算法的反覆運算次數。一個訓練週期代表對整個訓練集的完整遍歷,這意味著模型已經看過每一個樣本一次。在優化過程中,訓練損失通常在訓練開始時減少,並隨著訓練週期數的增加最終飽和到一個較低的值。如果訓練誤差沒有趨向於一個最小值,則必須增加訓練週期數。
由於演算法中的二階項,Levenberg-Marquardt 方法具有快速收斂到最小值的特性,但它計算代價高昂,因為必須計算誤差的 Hessian 矩陣。Levenberg-Marquardt 方法還提供了一種自動停止功能,當達到最小值時訓練會自動停止。當資料集相對較小且網路不太深時,建議使用此選項。由於 Levenberg-Marquardt 方法的收斂速度很快,使用該演算法時可以將訓練週期數設置為 50。
梯度下降是一種計算速度快且能夠隨著資料和網路規模的增加而良好擴展的演算法。然而,由於是一階方法,梯度下降的收斂速度較慢。為了減少計算時間和記憶體消耗,梯度下降用訓練集的子集(稱為批次)來最小化訓練損失。這種梯度下降的變體被稱為隨機梯度下降 Stochastic Gradient Descent(SGD)。為了提高 SGD 的收斂性,用“動量”和梯度縮放來平滑梯度,並根據收斂歷史調整學習率,這樣就產生了 Adamax優化器。梯度下降的有效性還取決於學習率,它控制著最小化的速度。較大的學習率會導致訓練損失更快下降,但更快的訓練可能導致模型性能不是最優的。較小的學習率會導致訓練損失平滑且緩慢地下降,從而增加訓練所需的時間。
梯度下降是一種計算速度快且能夠隨著資料和網路規模的增加而良好擴展的演算法。然而,由於是一階方法,梯度下降的收斂速度較慢。為了減少計算時間和記憶體消耗,梯度下降用訓練集的子集(稱為批次)來最小化訓練損失。這種梯度下降的變體被稱為隨機梯度下降 Stochastic Gradient Descent(SGD)。為了提高 SGD 的收斂性,用“動量”和梯度縮放來平滑梯度,並根據收斂歷史調整學習率,這樣就產生了 Adamax優化器。梯度下降的有效性還取決於學習率,它控制著最小化的速度。較大的學習率會導致訓練損失更快下降,但更快的訓練可能導致模型性能不是最優的。較小的學習率會導致訓練損失平滑且緩慢地下降,從而增加訓練所需的時間。
訓練損失並不是衡量神經網路性能的最終指標。性能通常用特定的指標來衡量,例如歸一化均方根誤差的低值或保真度指數的高值。較低的訓練損失意味著神經網路參數已得到很好的優化以適應訓練資料集。然而,神經網路的評估基於其在系統任意運行點,捕捉輸入-輸出關係的能力。因此,必須用驗證資料集來評估神經網路模型。
理想的訓練品質介於欠擬合和過擬合之間。
過擬合 Overfitting 是指神經網路模型在訓練資料集上表現良好,但在驗證集上表現不佳。將驗證損失與訓練損失一起繪製有助於識別過擬合。當過擬合發生時,驗證損失開始增加,而訓練損失繼續減少。在這種情況下,可以提前停止訓練以避免過擬合。過擬合的典型原因是為具有相對簡單動態的系統訓練大型、複雜的神經網路。例如,對線性彈簧-品質系統擬合為三層隱藏層、每層20個單元、啟動tanh的神經網路會導致過擬合。另一個原因可能是訓練集和驗證集樣本之間的顯著差異。如果訓練集的動態不反映驗證集的動態,則可能會出現性能不佳的情況。需要記住的是,神經網路不瞭解底層系統的任何物理規律,只是一個統計的、非線性的擬合工具。
欠擬合Underfitting 發生在神經網路模型在訓練資料集和驗證集上表現都很差的情況下。原因可能是神經網路相比於系統而言太簡單,或者訓練資料集不夠豐富,無法很好地建模系統。解決方法是通過收集系統的多樣化樣本來豐富訓練資料集,或者擬合一個更複雜的神經網路。
理想的訓練品質介於欠擬合和過擬合之間。
過擬合 Overfitting 是指神經網路模型在訓練資料集上表現良好,但在驗證集上表現不佳。將驗證損失與訓練損失一起繪製有助於識別過擬合。當過擬合發生時,驗證損失開始增加,而訓練損失繼續減少。在這種情況下,可以提前停止訓練以避免過擬合。過擬合的典型原因是為具有相對簡單動態的系統訓練大型、複雜的神經網路。例如,對線性彈簧-品質系統擬合為三層隱藏層、每層20個單元、啟動tanh的神經網路會導致過擬合。另一個原因可能是訓練集和驗證集樣本之間的顯著差異。如果訓練集的動態不反映驗證集的動態,則可能會出現性能不佳的情況。需要記住的是,神經網路不瞭解底層系統的任何物理規律,只是一個統計的、非線性的擬合工具。
欠擬合Underfitting 發生在神經網路模型在訓練資料集和驗證集上表現都很差的情況下。原因可能是神經網路相比於系統而言太簡單,或者訓練資料集不夠豐富,無法很好地建模系統。解決方法是通過收集系統的多樣化樣本來豐富訓練資料集,或者擬合一個更複雜的神經網路。
神經網路框架
Simcenter ROM Builder 的機器學習框架依賴於 Keras 和 Tensorflow。當前版本使用電腦的 CPU 執行相關任務。
Keras 是一個由 Python 編寫的開源人工神經網路庫,可以作為 Tensorflow、Microsoft-CNTK 和 Theano 的高階應用程式介面,進行深度學習模型的設計、調試、評估、應用和視覺化。
TensorFlow 是一個基於資料流程程式設計(dataflow programming)的符號數學系統,被廣泛應用於各類機器學習(machine learning)演算法的程式設計實現,其前身是穀歌的神經網路演算法庫 DistBelief。
Simcenter ROM Builder 的機器學習框架依賴於 Keras 和 Tensorflow。當前版本使用電腦的 CPU 執行相關任務。
Keras 是一個由 Python 編寫的開源人工神經網路庫,可以作為 Tensorflow、Microsoft-CNTK 和 Theano 的高階應用程式介面,進行深度學習模型的設計、調試、評估、應用和視覺化。
TensorFlow 是一個基於資料流程程式設計(dataflow programming)的符號數學系統,被廣泛應用於各類機器學習(machine learning)演算法的程式設計實現,其前身是穀歌的神經網路演算法庫 DistBelief。
Simcenter ROM 簡易型錄 | |
File Size: | 3662 kb |
File Type: |