Outils pour utilisateurs

Outils du site


aitextgen

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
aitextgen [2020/07/15 15:31] – [Training] sergeaitextgen [2022/02/08 15:59] (Version actuelle) – Tag0 Removed: text_gen serge
Ligne 1: Ligne 1:
 ====== Génération de textes avec aitextgen et GPT-2====== ====== Génération de textes avec aitextgen et GPT-2======
 +
 +<WRAP center round box 60% centeralign>
 +**{{tagpage>ia|Intelligence Artificielle}}**     **[[http://translate.google.com/translate?hl=&sl=auto&tl=en&u=https%3A%2F%2Fressources.labomedia.org%2Faitextgen|English Version]]**
 +</WRAP>
 +<WRAP center round box 60% centeralign>
 +**[[les_pages_intelligence_artificielle_en_details|Les Pages Intelligence Artificielle en détails]]**
 +</WRAP>
  
 <WRAP center round box 80% centeralign> <WRAP center round box 80% centeralign>
-**{{tagpage>tal|Traitement Automatique du Langage}}** **{{tagpage>ia|Intelligence Artificielle}}**  +**{{tagpage>tal|Traitement Automatique du Langage}}**  
 </WRAP> </WRAP>
  
 <WRAP center round box 80% centeralign> <WRAP center round box 80% centeralign>
-**Cette page est la suite de [[textgenrnn|Générer du texte en python avec textgenrnn]]**+**Cette page est la suite de [[archives:textgenrnn|Générer du texte en python avec textgenrnn]]**
 </WRAP> </WRAP>
  
 <WRAP center round box 80% centeralign> <WRAP center round box 80% centeralign>
-Les chercheurs retardent la publication de leurs recherches car ils estiment que GPT2 a un potentiel « trop dangereux », étant donné que cette IA pourrait à terme servir à des actes mal intentionnées comme générer des avis négatifs ou positifs sur des produits, des spams, des textes complotistes, voire des fausses nouvelles. cf **[[https://fr.wikipedia.org/wiki/OpenAI#GPT2|W]]**+Les chercheurs retardent la publication de leurs recherches car ils estiment que GPT2 a un potentiel « trop dangereux », étant donné que cette IA pourrait à terme servir à des actes mal intentionnées comme générer des avis négatifs ou positifs sur des produits, des spams, des textes complotistes, voire des fausses nouvelles. cf **[[https://fr.wikipedia.org/wiki/OpenAI#GPT2|W]]**\\ 
 +Bien sûr, tout a été publié, y compris le modèle big de 1.5 Go.
 </WRAP> </WRAP>
  
-=====Quel carte graphique choisir en Juin 2020===== +=====Why do we like Word2vec?===== 
-  * **[[https://lambdalabs.com/blog/choosing-a-gpu-for-deep-learning/|Choosing the Best GPU for Deep Learning in 2020]]**+{{ :media_10:d0iwslbsoruw1j6q-w.png?direct&600 |}} 
 +  * **[[https://towardsdatascience.com/representing-text-in-natural-language-processing-1eead30e57d8|Representing text in natural language processing]]** 
 +  * **[[https://nlp.stanford.edu/pubs/glove.pdf|GloVe: Global Vectors for Word Representation]]**
  
-    * RTX 2060 (6 GB): if you want to explore deep learning in your spare time. 360€ 
-    * RTX 2070 or 2080 (8 GB): if you are serious about deep learning, but your GPU budget is $600-800. Eight GB of VRAM can fit the majority of models. 
-    * RTX 2080 Ti (11 GB): if you are serious about deep learning and your GPU budget is ~$1,200. The RTX 2080 Ti is ~40% faster than the RTX 2080. 
-    * Titan RTX and Quadro RTX 6000 (24 GB): if you are working on SOTA models extensively, but don't have budget for the future-proofing available with the RTX 8000. 4000€ 
-    * Quadro RTX 8000 (48 GB): you are investing in the future and might even be lucky enough to research SOTA deep learning in 2020. 5500€ 
 ===== Ressources ===== ===== Ressources =====
 ====aitextgen==== ====aitextgen====
Ligne 53: Ligne 58:
 The FlauBERT model was proposed in the paper FlauBERT: Unsupervised Language Model Pre-training for French by Hang Le et al. It’s a transformer pre-trained using a masked language modeling (MLM) objective (BERT-like). The FlauBERT model was proposed in the paper FlauBERT: Unsupervised Language Model Pre-training for French by Hang Le et al. It’s a transformer pre-trained using a masked language modeling (MLM) objective (BERT-like).
  
-===== Fables de La Fontaine ===== +=====Générateur de texte en ligne===== 
-Suite de [[textgenrnn#avec_des_fables_de_la_fontaine|Avec des fables de La Fontaine]]+  * **[[https://gpt2.ai-demo.xyz/|OpenAI GPT2 Scratch Pad]]** 
 +===== Fables de La Fontaine avec un modèle entièrement créé===== 
 +Suite de [[archives:textgenrnn#avec_des_fables_de_la_fontaine|Avec des fables de La Fontaine]]
  
 <code python training.py> <code python training.py>
Ligne 227: Ligne 234:
  
 ===== Mails de La Labomedia ===== ===== Mails de La Labomedia =====
- 
 ====Configuration==== ====Configuration====
 <code python> <code python>
Ligne 251: Ligne 257:
 </code> </code>
  
 +Les datas sont trop pourries, le résultat est très médiocre !
 ===== Des textes dans le domaine public du Projet Gutemberg ===== ===== Des textes dans le domaine public du Projet Gutemberg =====
 **[[http://www.gutenberg.org/|Free eBooks - Project Gutenberg]]**  **[[http://www.gutenberg.org/|Free eBooks - Project Gutenberg]]** 
Ligne 284: Ligne 291:
   * batch_size = 48, valeur maxi possible avec 6 Go de Ram GPU (1060 GTX)   * batch_size = 48, valeur maxi possible avec 6 Go de Ram GPU (1060 GTX)
   * Ram CPU = 16 Go, Swap=64 Go, valeur totale de l'occupation mémoire = 27 Go au moment de l'encodage du texte   * Ram CPU = 16 Go, Swap=64 Go, valeur totale de l'occupation mémoire = 27 Go au moment de l'encodage du texte
-  * Durée d'apprentissage = 5 jours 
-  * Avec un enregistrement du Loss 
  
-Efficacité au bout de 30 heures:+Efficacité au bout de 144 heures:
 {{ :media_10:loss.png?800 |}} {{ :media_10:loss.png?800 |}}
-=====Pense bête pour NFS===== 
-  * [[https://wiki.debian-fr.xyz/Partage_NFS|Partage NFS]] 
  
-{{tag>ia python python3 tal textgenrnn sb rnn}}+=====Fables de La Fontaine avec la config de bouquineux===== 
 +==== Avec la configuration de bouquineux et vocab=40000 ==== 
 +{{ :media_10:loss_fables.png?600 |}} 
 +Remarque: Les Fables ont environ 13000 tokens, le vocab devrait se limiter à 14000 !\\ 
 +Testing pas mal mais quand même bourré d'erreur ! 
 + 
 +==== A partir du model tf_gpt2="124M" et vocab = 5000==== 
 +  * vocab_size=5000 
 +  * Apprentissage très rapide 
 +  * texte générés comme les précédents 
 + 
 +=====Fables de La Fontaine à partir du model tf_gpt2="124M" et vocab = 50275===== 
 +<WRAP center round tip 60%> 
 +C'est le meilleur générateur de texte, avec un apprentissage de 16 heures ! 
 +</WRAP> 
 +<WRAP center round tip 60%> 
 +tf_gpt2="124M" à une taille de 50275, il faut conserver cette valeur ! 
 +</WRAP> 
 +====Affinage du model existant tf_gpt2="124M"==== 
 +  * [[https://openai.com/blog/gpt-2-1-5b-release/|openai.com/blog/: GPT-2: 1.5B Release]] 
 + 
 +La ligne: 
 +  ai = aitextgen(tf_gpt2="124M"
 +va télécharger automatiquement le model.\\ 
 +Le training va affiner ce model. C'est un model construit sur un texte anglais, et pourtant cela va générer du texte français. 
 + 
 + 
 +====Shot de l'apprentissage==== 
 +Pendant le trainning, les test de generate() retourne de l'anglais découpé en petit bout ! 
 +{{ :media_10:training_2020-07-22_20-41-03.png?direct&600 |}} 
 + 
 +====Courbe de loss==== 
 +J'aimerais bien savoir à quoi ça correspond, j'ai peur que ce soit un simple calcul pas du tout représentatif! 
 +{{ :media_10:loss_small_50257.png?direct&600 |}} 
 + 
 +====Testing==== 
 +{{ :media_10:test_fables_small.png?direct&1000 |}} 
 +Le résultat comporte peu de mots mal construits, inexistants en français. Par contre, il n'y a aucun sens au texte, c'est mieux que du Nostradamus, mais c'est quasi de l'astrologie. 
 + 
 +====Développement à suivre==== 
 +Construire sur le gros model de 1.5 Go ! 
 + 
 +====Les sources sur GitHub==== 
 +  * **[[https://github.com/sergeLabo/fables_gpt2_small|fables_gpt2_small]]** 
 + 
 + 
 + 
 +{{tag> ia python sb tal }}
aitextgen.1594827119.txt.gz · Dernière modification : 2020/07/15 15:31 de serge