fraud-detection-system / resave_models.py
rajvivan's picture
Complete fraud detection system: code, figures, models, paper
408a9b2 verified
raw
history blame contribute delete
856 Bytes
"""Re-save models with importable AutoencoderWrapper."""
import os, sys
sys.path.insert(0, '/app/fraud_detection')
import joblib
import torch
from ae_model import Autoencoder, AutoencoderWrapper
from config import MODELS_DIR, DATA_DIR
# Load non-AE models
models = joblib.load(os.path.join(MODELS_DIR, "all_models.joblib"))
print(f"Loaded models: {list(models.keys())}")
# Rebuild autoencoder
data = joblib.load(os.path.join(DATA_DIR, "processed_data.joblib"))
input_dim = data['X_train'].shape[1]
ae = Autoencoder(input_dim)
ae.load_state_dict(torch.load(os.path.join(MODELS_DIR, "autoencoder.pt"), weights_only=True))
ae.eval()
models['Autoencoder'] = AutoencoderWrapper(ae)
# Save
joblib.dump(models, os.path.join(MODELS_DIR, "all_models_with_ae.joblib"))
print(f"Saved {len(models)} models with AE wrapper")
print(f"Models: {list(models.keys())}")