代码注释

导入必要的库

import model import utils import random import numpy as np

判断是否为主函数

if name == "main": # ------------------------------ DATA ----------------------------------- # 输入数据集名称 dataset = input("Enter dataset (FD001, FD002, FD003, FD004): ") # 选择传感器 sensors = ['s_3', 's_4', 's_7', 's_11', 's_12'] # 窗口长度 sequence_length = 30 # 平滑强度 alpha = 0.1 # 最大剩余寿命 threshold = 125

# 获取训练集、验证集和测试集数据
x_train, y_train, x_val, y_val, x_test, y_test = utils.get_data(dataset, sensors, 
sequence_length, alpha, threshold)
# -----------------------------------------------------------------------

# ----------------------------- MODEL -----------------------------------
# 设置模型参数
timesteps = x_train.shape[1]
input_dim = x_train.shape[2]
intermediate_dim = 300
batch_size = 128
latent_dim = 2
epochs = 10000
optimizer = 'adam'

# 创建RVAE模型
RVAE = model.create_model(timesteps, 
		input_dim, 
		intermediate_dim, 
		batch_size, 
		latent_dim, 
		epochs, 
		optimizer,
		)

# 定义回调函数
model_callbacks = utils.get_callbacks(RVAE, x_train, y_train)
# -----------------------------------------------------------------------

# --------------------------- TRAINING ---------------------------------
# 训练模型
results = RVAE.fit(x_train, y_train,
		shuffle=True,
		epochs=epochs,
		batch_size=batch_size,
		validation_data= (x_val, y_val),
		callbacks=model_callbacks, verbose=2)
# -----------------------------------------------------------------------

# -------------------------- EVALUATION ---------------------------------
# 加载模型权重
RVAE.load_weights('./checkpoints/checkpoint')
# 可视化潜在空间
train_mu = utils.viz_latent_space(RVAE.encoder, np.concatenate((x_train, x_val)), np.concatenate((y_train, y_val)))
test_mu = utils.viz_latent_space(RVAE.encoder, x_test, y_test.clip(upper=threshold))
# 评估模型
y_hat_train = RVAE.regressor.predict(train_mu)
y_hat_test = RVAE.regressor.predict(test_mu)

utils.evaluate(np.concatenate((y_train, y_val)), y_hat_train, 'train')
utils.evaluate(y_test, y_hat_test, 'test')
# ----------------------------------------------------------------------
代码注释import modelimport utilsimport randomimport numpy as npif __name__ == __main__	# ------------------------------ DATA -----------------------------------	dataset = inputEnter dataset FD001 FD002 FD

原文地址: https://www.cveoy.top/t/topic/chCA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录