mlspock
Official repository of "Machine Learning Supported System for Performance Assessment of Steel Structures Under Extreme Operating Conditions and Risk Management."
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.6%) to scientific vocabulary
Repository
Official repository of "Machine Learning Supported System for Performance Assessment of Steel Structures Under Extreme Operating Conditions and Risk Management."
Basic Info
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
ML-SPOCK
This repository contains the code for the project titled "Machine Learning Supported System for Performance Assessment of Steel Structures Under Extreme Operating Conditions and Risk Management."
Setup
- Download and install miniconda.
- Use the following commands with miniconda to create and activate your environment.
conda env create -f environment.ymlconda activate mlspock## Training To train a Point Transformer (PTR) on the STEEL-3dPointClouds dataset:python train.py --model_type=ptr --path_data=./data/mlspock_column_pc3d --mode=train --batch_size=32 --epoch=250 --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --version=1You can finetune a pre-trained model using *.pth files that can be referenced using local filenames. To finetune our Point Transformer (PTR) on the STEEL-3dPointClouds dataset:python train.py --model_type=ptr --path_data=./data/mlspock_column_pc3d --mode=train --batch_size=32 --epoch=250 --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --version=1 --resume --path_model=./pretrained/ptr_small_segment[bottom]_snorm[diff_scale]_input[3d]_lprot[all]_batch_32_lr_0.0005_optimizer_AdamW_seed42_v1To finetune our scenario-based classification model PTR+Cls[All] on the STEEL-3dPointClouds dataset:python train.py --model_type=ptr_classify --path_data=./data/mlspock_column_pc3d --mode=train --batch_size=32 --epoch=250 --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --classify=all --split=late --version=1 --resume --path_model=./pretrained/ptr_classify_small_segment[bottom]_snorm[diff_scale]_input[3d]_lprot[all]_batch_32_lr_0.0005_optimizer_AdamW_classify[all_late]_seed42_v1To finetune our scenario-guided model PTR+[LR, BC, LP, CS] on the STEEL-3dPointClouds dataset:python train.py --model_type=ptr --path_data=./data/mlspock_column_pc3d --mode=train --batch_size=32 --epoch=250 --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --lratio_known --boundary_known --lprotocol_known --dimension_known --version=1 --resume --path_model=./pretrained/ptr_small_segment[bottom]_snorm[diff_scale]_input[3d_lratio_boundary_lprot_colsize]_lprot[all]_batch_32_lr_0.0005_optimizer_AdamW_seed42_v1The results of each training run are saved to a newly created directory under~/experiments.
You can evaluate a pre-trained model by ensuring that the model file is named best_model.pth, and by setting the path_model option to the path where this file is located:
python train.py --model_type=ptr --path_data=./data/mlspock_column_pc3d --mode=eval --batch_size=32 --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --version=1 --path_model=./pretrained/ptr_small_segment[bottom]_snorm[diff_scale]_input[3d]_lprot[all]_batch_32_lr_0.0005_optimizer_AdamW_seed42_v1
Test
To test a pre-trained model on unseen examples, each scenario folder should contain the 3D point cloud of each individual column saved as a separate .npy file. For example: /test_240430/W33X263-Collapse_consistent-RC90/pts029.npy (test_folder/scenario_name/p3d.npy).
You can then obtain predictions by running:
python train.py --model_type=ptr --path_data=./data/test_240430 --mode=test --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --version=1 --path_model=./pretrained/ptr_small_segment[bottom]_snorm[diff_scale]_input[3d]_lprot[all]_batch_32_lr_0.0005_optimizer_AdamW_seed42_v1 --gt
or
python train.py --model_type=ptr_classify --path_data=./data/test_240430 --mode=test --segment=bottom --norm=snorm --scaling_mode=diff --model_size=small --version=1 --path_model=./pretrained/ptr_classify_small_segment[bottom]_snorm[diff_scale]_input[3d]_lprot[all]_batch_32_lr_0.0005_optimizer_AdamW_classify[all_late]_seed42_v1 --classify=all --split=late --gt
Further Information
This repository builds upon the codabase of Pointnet, Pointnet++ and Point-Transformers.
Owner
- Name: Isinsu Katircioglu
- Login: isinsukatircioglu
- Kind: user
- Repositories: 1
- Profile: https://github.com/isinsukatircioglu
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Katircioglu
given-names: Isinsu
title: "MLSPOCK
version: 1.0
date-released: 2024-03-26
GitHub Events
Total
- Push event: 4
- Public event: 1
Last Year
- Push event: 4
- Public event: 1
Dependencies
- pytorch/pytorch 2.3.1-cuda11.8-cudnn8-runtime build
- click ==8.1.7
- h5py ==3.10.0
- matplotlib ==3.8.2
- pandas ==2.2.0
- plotly ==5.19.0
- plotly-express ==0.4.1
- scikit-learn ==1.3.2
- scipy ==1.11.4
- seaborn ==0.13.2