YAML Metadata Warning: empty or missing yaml metadata in repo card (https://huggingface.co/docs/hub/model-cards#model-card-metadata)
HAckathon Médical : Analyse des Tumeurs Cérébrales et Pipeline de Chatbot
Ce dépôt contient un pipeline complet pour le traitement de données médicales, la génération d'images et un chatbot de santé spécialisé. Le projet intègre l'ingénierie des données, l'IA générative (GAN) et l'optimisation de modèles de langage (LLM) via le fine-tuning (SFT) et la distillation de connaissances.
🚀 Aperçu du Projet
Le projet est divisé en quatre segments techniques principaux :
- Prétraitement et Nettoyage des Données : Gestion des incohérences dans les ensembles de données cliniques.
- Augmentation d'Images et Entraînement GAN : Amélioration des jeux de données d'imagerie médicale en utilisant PyTorch et des GAN conditionnels (CGAN) pour la génération de données synthétiques.
- Fine-Tuning de LLM (SFT) : Adaptation du modèle
MedAlpaca-7Bpour la génération de données médicales structurées. - Distillation de Connaissances (KD) : Distillation du LLM fine-tuné vers un modèle étudiant léger (BERT) pour un déploiement efficace.
📂 Structure du Répertoire
HAckathon/
├── data_dir/ # Jeux de données JSON d'entraînement/validation pour le chatbot
├── tumeur/ # Répertoire source des images de tumeurs cérébrales
├── Gans data/ # Espace de travail pour les données et résultats de l'entraînement GAN
├── data_augmentation_images/ # Sortie des scripts d'augmentation d'images
├── sft_2 / sft / ... # Points de contrôle (checkpoints) et journaux pour le fine-tuning LLM
├── sauvegardStudent/ # Points de contrôle pour le modèle BERT distillé
├── clean_data.ipynb # Notebook de filtrage et nettoyage des données
├── data_augmentation.ipynb # Pipeline de transformation et d'augmentation d'images
├── CGANS.ipynb # Architecture GAN et entraînement pour les images de tumeurs
├── chatbot.ipynb # Fine-tuning de LLM (SFT) utilisant LoRA
└── distillation_script.ipynb # Distillation de connaissances de MedAlpaca vers BERT
📓 Flux de Travail des Notebooks
1. Nettoyage des Données (clean_data.ipynb)
- Objectif : Nettoyer le fichier clinique
data.csv. - Actions : Filtre les dossiers médicaux spécifiquement pour les cas de "tumeur", gère les valeurs manquantes et sauvegarde le résultat dans
data_cleaned1.csv.
2. Augmentation d'Images (data_augmentation.ipynb)
- Objectif : Augmenter la diversité du jeu de données d'images médicales.
- Techniques : Utilise les
transformsde PyTorch pour la rotation, le retournement, la variation de couleur et le flou gaussien. - Sortie : Les images augmentées sont sauvegardées dans
data_augmentation_images/pour l'entraînement du GAN.
3. GAN Conditionnels (CGAN) (CGANS.ipynb)
- Objectif : Générer des images synthétiques de tumeurs cérébrales pour pallier la rareté des données.
- Architecture : Une variante de DCGAN profond qui génère des images basées sur les catégories de tumeurs.
- Résultat : Améliore le pool d'entraînement pour les modèles de diagnostic.
4. SFT du Chatbot Médical (chatbot.ipynb)
- Objectif : Affiner
medalpaca/medalpaca-7bsur des résumés médicaux structurés. - Méthode : Utilise LoRA (Low-Rank Adaptation) et la quantification 4 bits (bitsandbytes) pour un entraînement efficace sur des GPU grand public.
- Schéma : Valide les réponses médicales à l'aide de modèles Pydantic (
data_forme).
5. Distillation de Connaissances (distillation_script.ipynb)
- Objectif : Créer une version rapide et légère du chatbot.
- Professeur : MedAlpaca-7B fine-tuné.
- Étudiant :
bert-base-uncased. - Perte : Combinaison de l'Entropie Croisée et de la Divergence KL pour transférer les "connaissances" (logits) du grand modèle vers le petit.
🛠️ Installation et Configuration
pip install torch torchvision transformers datasets bitsandbytes peft accelerate wandb
📈 Suivi des Expériences
Le projet utilise Weights & Biases (WandB) pour surveiller la perte d'entraînement et la convergence des GAN à travers toutes les expériences. Consultez le répertoire wandb/ pour les journaux locaux.
📄 Génération de PDF
Pour générer une version PDF de cette documentation :
- Utilisez l'extension Markdown PDF de VS Code.
- Ou utilisez
pandoc:pandoc README.md -o Resume_Projet.pdf
- Downloads last month
- -
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support