Open Anaxagor opened 2 weeks ago
from applybn import DataLoader, DataPreprocessor
from applybn.PGM import BayesianNetwork, SCM
from applybn.anomaly_detector import TabularAnomalyDetector
from applybn.feature_selector import BNFeatureSelector
from applybn.data_generator import BNClassBalancer
# Загрузка и подготовка данных
data_loader = DataLoader(file_path='data.csv')
data = data_loader.load_data()
preprocessor = DataPreprocessor()
processed_data = preprocessor.preprocess(data)
# Обучение байесовской сети
bayesian_network = BayesianNetwork()
bayesian_network.train(processed_data)
# Поиск аномалий
anomaly_detector = TabularAnomalyDetector(bayesian_network)
anomalies = anomaly_detector.detect(processed_data)
# Отбор признаков
feature_selector = BNFeatureSelector(bayesian_network)
selected_features = feature_selector.select(processed_data)
# Балансировка классов
class_balancer = BNClassBalancer(bayesian_network)
balanced_data = class_balancer.balance(processed_data)