STaRS-FUSION : Pipeline multi-modules tout-en-un
Abstract
: 🌌 STaRS-FUSION : Pipeline multi-modules tout-en-un Auteur : Kevin FradierLicence : © 2026 Kevin Fradier — CC BY-NC-ND 4.0 1️⃣ Philosophie Multi-domaines : fossiles, réseaux, textes, séries temporelles, images Bottom-up : pas d’hypothèses globales imposées Modules croisés : TIME, EXT, MAP + TOP, DYN, INT, STAT, SENSOR, VR Testable et falsifiable : perturbations / bruit / comparaison entre modules 2️⃣ Installation git clone [Lien GitHub] cd STaRS-FUSION pip install -r requirements.txt 3️⃣ Exemple de pipeline croisé (Python) import numpy as np import hashlib AUTHOR_SIGNATURE = "Kevin Fradier | STaRS-FUSION | 2026" # --- Modules --- def simulate_noise(data, loss_rate=0.3): noisy = [] for level in data: mask = np.random.rand(len(level)) > loss_rate noisy.append(level * mask) return noisy def entropy(level): p = level / np.sum(level) if np.sum(level)>0 else level p = p[p>0] return -np.sum(p*np.log2(p)) def robustness(data, n_iter=100): original = np.array([np.sum(l) for l in data]) scores = [] for _ in range(n_iter): perturbed = simulate_noise(data) pert = np.array([np.sum(l) for l in perturbed]) corr = np.corrcoef(original, pert)[0,1] scores.append(corr) return np.nanmean(scores), np.nanstd(scores) # Module MAP def map_structure(data): # Simplification : transforme chaque jeu en "distance structurelle" N = len(data) dist = np.zeros((N,N)) for i in range(N): for j in range(N): dist[i,j] = np.abs(np.sum(data[i]) - np.sum(data[j])) return dist # Module TIME def time_uncertainty(data): return [np.std(level) for level in data] # Module EXT def extinction_metric(data): return [np.min(level) for level in data] # Module croisé FUSION def fusion_analyze(data): ent = [entropy(l) for l in data] mean_corr, std_corr = robustness(data) time_u = time_uncertainty(data) ext_m = extinction_metric(data) map_d = map_structure(data) result = { "mean_entropy": float(np.mean(ent)), "robustness_corr": mean_corr, "robustness_std": std_corr, "time_uncertainty": time_u, "extinction_metric": ext_m, "map_distances": map_d.tolist(), "signature": AUTHOR_SIGNATURE } result["hash"] = hashlib.sha256(str(result).encode()).hexdigest() return result # --- Exemple d'utilisation --- data_example = [np.random.poisson(5, 10) for _ in range(5)] result = fusion_analyze(data_example) print(result) 4️⃣ Ce que ça fait Applique toutes les extensions et modules simultanément Génère scores chiffrés, entropie, robustesse, distances MAP, métrique EXT et TIME Produit un hash unique pour le jeu de données (traçabilité) Permet de comparer chaque module entre eux Testable sur mini-datasets fournis ou vos propres données 5️⃣ Points clés Multi-domaines : fossiles, réseaux, textes, séries, images Tout-en-un : TIME, EXT, MAP + TOP, DYN, INT, STAT, SENSOR, VR Testable & Falsifiable : bruit, perturbation, comparaison Reproductible : code complet, mini-datasets inclus Signature unique : hash pour chaque jeu analysé Licence : © 2026 Kevin Fradier — CC BY-NC-ND 4.0
Fields of Study & Subjects
Time Series Analysis and Forecasting
Topological and Geometric Data Analysis
Advanced Image Fusion Techniques
Publication details
- Journal / source
- Zenodo (CERN European Organization for Nuclear Research)
- Publication date
- 11 January 2026