The purposes of this project are (1) to develop a convolutional neural network code applicable to 2-dimensional and 3-dimensional engineering problems (e.g. fluid mechanics, structural mechanics, acoustics) for predictive modeling with a technical report including methodology and user manual, and (2) to survey the literature on physics-informed neural networks and provide research results with a technical report. Family of codes will be implemented on Python, and Jupyter Notebook environments with the help of PyTorch deep learning and optimization library.
Bu projenin amaçları (1) metodoloji ve kullanım kılavuzunu içeren teknik bir raporla tahmine dayalı modelleme için 2 boyutlu ve 3 boyutlu mühendislik problemlerine (örn. akışkanlar mekaniği, yapısal mekanik, akustik) uygulanabilir bir evrişimli sinir ağı kodu geliştirmek ve (2) fiziğe dayalı sinir ağları hakkındaki literatürü araştırmak ve teknik bir raporla araştırma sonuçlarını sağlamak. Tüm kodlar, PyTorch derin öğrenme ve optimizasyon kütüphaneleri kullanılarak Python ve Jupyter Notebook ortamlarında geliştirilmiştir.
Figure-1: A generic flowchart for CNN-based predictive modeling.
A generic flowchart for CNN-based predictive modeling is depicted in Fig.1. The first step is to transform the dataset into a more suitable form for training. At this step, the user may define the normalization scheme, batch size, and training-to-test dataset ratio. After that, a neural network architecture is established depending on the given task. The third step is to train and test the network defining an optimization scheme, loss function, and learning rate. During the training, the user may monitor training and test losses, norms of the model weights, and gradients, if necessary. The network architecture and hyperparameters may be fine-tuned based on the model accuracy and generalization capability.
Evrişimli sinir ağı tabanlı temsili modelleme kodu için genel akış şeması Şekil 1'de gösterilmektedir. İlk adım, veri setini eğitim için daha uygun bir forma dönüştürmektir. Bu adımda, kullanıcı normalizasyon şemasını, batch boyutunu ve eğitim-test veri seti oranını tanımlayabilir. Daha sonra verilen probleme bağlı olarak bir sinir ağı mimarisi kurulur. Üçüncü adım, bir optimizasyon şeması, kayıp fonksiyonu ve öğrenme oranı tanımlanabilen ağı eğitmek ve test etmektir. Eğitim sırasında kullanıcı eğitim ve test kayıplarını, model ağırlıklarını ve gerekirse gradyanları gözlemleyebilir. Ağ mimarisi ve hiperparametreler, model doğruluğuna ve genelleştirme yeteneğine bağlı olarak optimize edilebilir.
Figure-2: Statistics of the code development.
Copyright © 2022. All Rights Reserved. Designed by AeroMDO