Health index models#
BaseHealthIndexEstimation#
- class ice.health_index_estimation.models.base.BaseHealthIndexEstimation(window_size: int, stride: int, batch_size: int, lr: float, num_epochs: int, device: str, verbose: bool, name: str, random_seed: int, val_ratio: float, save_checkpoints: bool)[source]#
Bases:
BaseModel
,ABC
Base class for all HI diagnosis models.
- Parameters:
window_size (int) – The window size to train the model.
stride (int) – The time interval between first points of consecutive sliding windows in training.
batch_size (int) – The batch size to train the model.
lr (float) – The larning rate to train the model.
num_epochs (float) – The number of epochs to train the model.
device (str) – The name of a device to train the model. cpu and cuda are possible.
verbose (bool) – If true, show the progress bar in training.
name (str) – The name of the model for artifact storing.
random_seed (int) – Seed for random number generation to ensure reproducible results.
val_ratio (float) – Proportion of the dataset used for validation, between 0 and 1.
save_checkpoints (bool) – If true, store checkpoints.
MLP#
- class ice.health_index_estimation.models.mlp.MLP(window_size: int = 1024, stride: int = 300, hidden_dim: int = 256, batch_size: int = 64, lr: float = 5e-05, num_epochs: int = 50, device: str = 'cpu', verbose: bool = True, name: str = 'mlp_fault_diagnosis', random_seed: int = 42, val_ratio: float = 0.15, save_checkpoints: bool = False)[source]#
Bases:
BaseHealthIndexEstimation
Multilayer Perceptron (MLP) consists of input, hidden, output layers and ReLU activation. Each sample is reshaped to a vector (B, L, C) -> (B, L * C) where B is the batch size, L is the sequence length, C is the number of sensors.
- Parameters:
window_size (int) – The window size to train the model.
stride (int) – The time interval between first points of consecutive sliding windows.
hidden_dim (int) – The dimensionality of the hidden layer in MLP.
batch_size (int) – The batch size to train the model.
lr (float) – The larning rate to train the model.
num_epochs (float) – The number of epochs to train the model.
device (str) – The name of a device to train the model. cpu and cuda are possible.
verbose (bool) – If true, show the progress bar in training.
name (str) – The name of the model for artifact storing.
random_seed (int) – Seed for random number generation to ensure reproducible results.
val_ratio (float) – Proportion of the dataset used for validation, between 0 and 1.
save_checkpoints (bool) – If true, store checkpoints.
IE_SBiGRU#
- class ice.health_index_estimation.models.IE_SBiGRU.IE_SBiGRU(window_size: int = 1024, num_layers: int = 3, hidden_dim: int = 128, ff_dim: int = 256, stride: int = 300, batch_size: int = 64, lr: float = 0.0031789041005068647, num_epochs: int = 55, device: str = 'cpu', verbose: bool = True, name: str = 'IE_SBiGRU_hi_estimation', random_seed: int = 42, val_ratio: float = 0.15, save_checkpoints: bool = False)[source]#
Bases:
BaseHealthIndexEstimation
Wear condition monitoring model from https://doi.org/10.1016/j.rcim.2022.102368 SOTA paper
- Parameters:
window_size (int) – The window size to train the model.
stride (int) – The time interval between first points of consecutive sliding windows.
num_layers (int) – The amount of BiGRU layers in the model.
hidden_dim (int) – The regression head hidden linear layer size.
ff_dim (int) – The CNN projection dim in feedforward module of Informer encoder.
batch_size (int) – The batch size to train the model.
lr (float) – The larning rate to train the model.
num_epochs (float) – The number of epochs to train the model.
device (str) – The name of a device to train the model. cpu and cuda are possible.
verbose (bool) – If true, show the progress bar in training.
name (str) – The name of the model for artifact storing.
random_seed (int) – Seed for random number generation to ensure reproducible results.
val_ratio (float) – Proportion of the dataset used for validation, between 0 and 1.
save_checkpoints (bool) – If true, store checkpoints.
Stacked_LSTM#
- class ice.health_index_estimation.models.Stacked_LSTM.Stacked_LSTM(window_size: int = 1024, stride: int = 300, batch_size: int = 64, lr: float = 5e-05, num_epochs: int = 50, device: str = 'cpu', verbose: bool = True, name: str = 'HI_stacked_LSTM', random_seed: int = 42, val_ratio: float = 0.15, save_checkpoints: bool = False, num_layers: int = 2, dropout_value: float = 0.2)[source]#
Bases:
BaseHealthIndexEstimation
Wear condition monitoring module from https://doi.org/10.1016/j.jmsy.2021.12.002
- Parameters:
window_size (int) – The window size to train the model.
stride (int) – The time interval between first points of consecutive sliding windows.
hidden_dim (int) – The dimensionality of the hidden layer in MLP.
batch_size (int) – The batch size to train the model.
lr (float) – The larning rate to train the model.
num_epochs (float) – The number of epochs to train the model.
device (str) – The name of a device to train the model. cpu and cuda are possible.
verbose (bool) – If true, show the progress bar in training.
name (str) – The name of the model for artifact storing.
random_seed (int) – Seed for random number generation to ensure reproducible results.
val_ratio (float) – Proportion of the dataset used for validation, between 0 and 1.
save_checkpoints (bool) – If true, store checkpoints.
TCM#
- class ice.health_index_estimation.models.TCM.TCM(window_size: int = 64, stride: int = 300, batch_size: int = 64, lr: float = 5e-05, num_epochs: int = 50, device: str = 'cpu', verbose: bool = True, name: str = 'TCM_hi_estimation', random_seed: int = 42, val_ratio: float = 0.15, save_checkpoints: bool = False, lstm_hidden_size: int = 8, lstm_num_layers: int = 2)[source]#
Bases:
BaseHealthIndexEstimation
Wear condition monitoring module from https://doi.org/10.1016/j.jmsy.2021.12.002
- Parameters:
window_size (int) – The window size to train the model.
stride (int) – The time interval between first points of consecutive sliding windows.
batch_size (int) – The batch size to train the model.
lr (float) – The larning rate to train the model.
num_epochs (float) – The number of epochs to train the model.
device (str) – The name of a device to train the model. cpu and cuda are possible.
verbose (bool) – If true, show the progress bar in training.
name (str) – The name of the model for artifact storing.
random_seed (int) – Seed for random number generation to ensure reproducible results.
val_ratio (float) – Proportion of the dataset used for validation, between 0 and 1.
save_checkpoints (bool) – If true, store checkpoints.