| |
| """TRAINING AUTOMATIQUE — capture simultanée cross-modale sur vraies données. |
| |
| Entraîne le modèle unifié sur TOUS les modes simultanément: |
| - texte + phonétique + audio (SpeechCommands) + image (tinyimagenet) |
| - UN SpectralCoreBlock partagé, UN optimizer, UNE passe |
| - Loss: 1-cos (crown-jewel) sur chaque vue → même concept ID |
| - + génération (concept → signal créé depuis règles comprises) |
| - + gates (meta[0] confidence, observateur) |
| |
| Usage: python auto_train.py [--device cuda] [--steps 10000] [--samples 100] |
| """ |
| import torch, argparse, time, json |
| from ocm26400.spectral_core import SpectralCoreBlock |
| from ocm26400.amv import D_MODEL, PART |
| from ocm26400.learned_vocab import LearnedVocab |
|
|
| def main(): |
| ap = argparse.ArgumentParser(description="Training automatique OCM-26400") |
| ap.add_argument("--device", default="cuda" if torch.cuda.is_available() else "cpu") |
| ap.add_argument("--steps", type=int, default=10000) |
| ap.add_argument("--samples", type=int, default=100, help="samples per word/image") |
| args = ap.parse_args() |
| print("="*60) |
| print(f"AUTO TRAINING — capture simultanée cross-modale") |
| print(f"device={args.device} steps={args.steps} samples={args.samples}") |
| print("="*60) |
| |
| import subprocess, sys |
| cmd = [sys.executable, "train_unified_all.py"] |
| subprocess.run(cmd) |
| print("\nTraining terminé. Checkpoint: SAVENVME2/Datasets/ocm26400/unified_all_trained.pt") |
|
|
| if __name__ == "__main__": |
| main() |
|
|