Skip to content

Expérimentation d'IA auto-générative de sonnets avec TensorFlow/Keras

Notifications You must be signed in to change notification settings

louis49/ml-sonets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Générateur de Sonets

Sur la base de The Oupoco Database of French Sonnets from the 19th Century, ce dataset contient 4820 sonnets du 19ème siecle en Français.

Contenu

  • main.py : Entrée principale du code - modifiez la variable USE_TUNER pour lancer le Tuner ou non (Les meilleurs hyperparamètres que trouvés seront utilisés sinon) Lors de l'apprentissage, un exemple de génération est executé à chaque epoch
  • xml2json.py : Converti le fichier xml source en json pour une meilleure lisibilité
  • json2text.py : Converti les données du sonnet en String en ajoutant les tags nécessaires à l'apprentissage et en nettoyant légèrement les données (caratères spéciaux, espaces etc...) La forme de chaque sonnet est :
<sonnet>
    <title> TITRE </title>  
    <stropheA> 
        <lineA> Ligne 1 <rime> r i </rime> mot qui rime </lineA> 
        <lineB> Ligne 2 <rime> r i </rime> mot qui rime </lineB> 
        <lineC> Ligne 3 <rime> r i </rime> mot qui rime </lineC> 
        <lineD> Ligne 4 <rime> r i </rime> mot qui rime </lineD> 
    </stropheA> 
    <stropheB> 
        <lineA> Ligne 1 <rime> r i </rime> mot qui rime </lineA> 
        <lineB> Ligne 2 <rime> r i </rime> mot qui rime </lineB> 
        <lineC> Ligne 3 <rime> r i </rime> mot qui rime </lineC> 
        <lineD> Ligne 4 <rime> r i </rime> mot qui rime </lineD> 
    </stropheB>
    <stropheC> 
        <lineA> Ligne 1 <rime> r i </rime> mot qui rime </lineA> 
        <lineB> Ligne 2 <rime> r i </rime> mot qui rime </lineB> 
        <lineC> Ligne 3 <rime> r i </rime> mot qui rime </lineC>  
    </stropheC> 
     <stropheD> 
        <lineA> Ligne 1 <rime> r i </rime> mot qui rime </lineA> 
        <lineB> Ligne 2 <rime> r i </rime> mot qui rime </lineB> 
        <lineC> Ligne 3 <rime> r i </rime> mot qui rime </lineC> 
    </stropheD>
</sonnet>
  • text2seq.py : Converti les String du sonnet au format tf.Record et permet de charger ces données par la suite
  • model_class.py : Spécification du modèle de l'autoencoder
  • sample_generator.py : Classe appelée pour afficher le résultat de la génération sur la base du titre : "<sonnet> <title> Amour fou </title> <stropheA> <lineA>"

Le modèle est construit sur la base de Tensorflow / Keras Les hyper paramètres ont été définis en utilisant keras_tuner

License

MIT

About

Expérimentation d'IA auto-générative de sonnets avec TensorFlow/Keras

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors