Francois Vieille commited on
Commit
8fb7d94
1 Parent(s): 3268289

deploy new model

Browse files
Files changed (6) hide show
  1. .gitignore +1 -0
  2. README.md +28 -14
  3. config.json +20 -19
  4. pytorch_model.bin +2 -2
  5. tf_model.h5 +2 -2
  6. tokenizer_config.json +1 -1
.gitignore ADDED
@@ -0,0 +1 @@
 
 
1
+ draft.py
README.md CHANGED
@@ -19,22 +19,29 @@ tags:
19
 
20
  # Classification d'articles de presses avec Flaubert
21
 
22
- Ce modèle ce base sur le modèle [`flaubert/flaubert_base_cased`](https://huggingface.co/flaubert/flaubert_base_cased) et à été fine-tuné en utilisant des articles de presse issus de la base de données MLSUM.
23
  Dans leur papier, les équipes de reciTAL et de la Sorbonne ont proposé comme ouverture de réaliser un modèle de détection de topic sur les articles de presse.
24
 
25
  Les topics ont été extrait à partir des URL et nous avons effectué une étape de regroupement de topics pour éliminer ceux avec un trop faible volume et ceux qui paraissaient redondants.
26
 
27
- Nous avons finalement utilisé la liste de topics suivante:
28
- * Culture
29
- * Economie
30
- * Education
31
- * Environement
32
- * Justice
33
- * Opinion
34
- * Politique
35
- * Societe
36
- * Sport
37
- * Technologie
 
 
 
 
 
 
 
38
 
39
  ## Entrainement
40
 
@@ -42,13 +49,20 @@ Nous avons benchmarké différents modèles en les entrainant sur différentes p
42
 
43
  ![Performance](./assets/Accuracy_cat.png)
44
 
45
- Les modèles ont été entrainé sur un cloud Azure avec des Tesla V100.
 
 
 
 
 
46
 
47
  ## Résulats
48
 
49
  ![Matrice de confusion](assets/confusion_cat_m_0.2.png)
50
  *Les lignes correspondent aux labels prédits et les colonnes aux véritables topics. Les pourcentages sont calculés sur les colonnes.*
51
 
 
 
52
  ## Utilisation
53
 
54
  ```python
@@ -61,7 +75,7 @@ loaded_tokenizer = AutoTokenizer.from_pretrained(model_name)
61
  loaded_model = AutoModelForSequenceClassification.from_pretrained(model_name)
62
 
63
  nlp = TextClassificationPipeline(model=loaded_model, tokenizer=loaded_tokenizer)
64
- nlp("Le Bayern Munich prend la grenadine.")
65
  ```
66
 
67
  ## Citation
 
19
 
20
  # Classification d'articles de presses avec Flaubert
21
 
22
+ Ce modèle se base sur le modèle [`flaubert/flaubert_base_cased`](https://huggingface.co/flaubert/flaubert_base_cased) et à été fine-tuné en utilisant des articles de presse issus de la base de données MLSUM.
23
  Dans leur papier, les équipes de reciTAL et de la Sorbonne ont proposé comme ouverture de réaliser un modèle de détection de topic sur les articles de presse.
24
 
25
  Les topics ont été extrait à partir des URL et nous avons effectué une étape de regroupement de topics pour éliminer ceux avec un trop faible volume et ceux qui paraissaient redondants.
26
 
27
+ Nous avons finalement utilisé la liste de topics avec les regroupements suivants:
28
+
29
+ * __Economie__: economie, argent, emploi, entreprises, economie-francaise, immobilier, crise-financiere, evasion-fiscale, economie-mondiale, m-voiture, smart-cities, automobile, logement, flottes-d-entreprise, import, crise-de-l-euro, guide-des-impots, le-club-de-l-economie, telephonie-mobile
30
+ * __Opinion__: idees, les-decodeurs, tribunes
31
+ * __Politique__: politique, election-presidentielle-2012, election-presidentielle-2017, elections-americaines, municipales, referendum-sur-le-brexit, elections-legislatives-2017, elections-regionales, donald-trump, elections-regionales-2015, europeennes-2014, elections-cantonales-2011, primaire-parti-socialiste, gouvernement-philippe, elections-departementales-2015, chroniques-de-la-presidence-trump, primaire-de-la-gauche, la-republique-en-marche, elections-americaines-mi-mandat-2018, elections, elections-italiennes, elections-senatoriales
32
+ * __Societe__: societe, sante, attaques-a-paris, immigration-et-diversite, religions, medecine, francaises-francais, mobilite
33
+ * __Culture__: televisions-radio, musiques, festival, arts, scenes, festival-de-cannes, mode, bande-dessinee, architecture, vins, photo, m-mode, fashion-week, les-recettes-du-monde, tele-zapping, critique-litteraire, festival-d-avignon, m-gastronomie-le-lieu, les-enfants-akira, gastronomie, culture, livres, cinema, actualite-medias, blog, m-gastronomie
34
+ * __Sport__: sport, football, jeux-olympiques, ligue-1, tennis, coupe-du-monde, mondial-2018, rugby, euro-2016, jeux-olympiques-rio-2016, cyclisme, ligue-des-champions, basket, roland-garros, athletisme, tour-de-france, euro2012, jeux-olympiques-pyeongchang-2018, coupe-du-monde-rugby, formule-1, voile, top-14, ski, handball, sports-mecaniques, sports-de-combat, blog-du-tour-de-france, sport-et-societe, sports-de-glisse, tournoi-des-6-nations
35
+ * __Environement__: planete, climat, biodiversite, pollution, energies, cop21
36
+ * __Technologie__: pixels, technologies, sciences, cosmos, la-france-connectee, trajectoires-digitales
37
+ * __Education__: campus, education, bac-lycee, enseignement-superieur, ecole-primaire-et-secondaire, o21, orientation-scolaire, brevet-college
38
+ * __Justice__: police-justice, panama-papers, affaire-penelope-fillon, documents-wikileaks, enquetes, paradise-papers
39
+
40
+ Les thèmes ayant moins de 100 articles n'ont pas été pris en compte.
41
+ Nous avons également mis de côté les articles faisant référence à des topics geographiques, ce qui a donné lieu à un nouveau modèle de classification.
42
+ Après nettoyage, la base MLSUM a été réduite à 293 995 articles. Le corps d'un article en moyenne comporte 694 tokens.
43
+
44
+ Nous avons entrainé le modèle sur 20% de la base nettoyée. En moyenne, le nombre d'articles par classe est de ~4K.
45
 
46
  ## Entrainement
47
 
 
49
 
50
  ![Performance](./assets/Accuracy_cat.png)
51
 
52
+ Les modèles ont été entrainé sur le cloud Azure avec des Tesla V100.
53
+
54
+ ## Modèle
55
+
56
+ Le modèle partagé sur HF est le modéle qui prend en entrée le corps d'un article. Nous l'avons entrainé sur 20% du jeu de donnée nettoyé.
57
+
58
 
59
  ## Résulats
60
 
61
  ![Matrice de confusion](assets/confusion_cat_m_0.2.png)
62
  *Les lignes correspondent aux labels prédits et les colonnes aux véritables topics. Les pourcentages sont calculés sur les colonnes.*
63
 
64
+ _Nous garantissons pas les résultats sur le long terme. Modèle réalisé dans le cadre d'un POC._
65
+
66
  ## Utilisation
67
 
68
  ```python
 
75
  loaded_model = AutoModelForSequenceClassification.from_pretrained(model_name)
76
 
77
  nlp = TextClassificationPipeline(model=loaded_model, tokenizer=loaded_tokenizer)
78
+ nlp("Le Bayern Munich prend la grenadine.", truncation=True)
79
  ```
80
 
81
  ## Citation
config.json CHANGED
@@ -22,15 +22,15 @@
22
  "group_by_size": true,
23
  "id2label": {
24
  "0": "Culture",
25
- "1": "economie",
26
- "2": "education",
27
- "3": "environement",
28
- "4": "justice",
29
- "5": "opinion",
30
- "6": "politique",
31
- "7": "societe",
32
- "8": "sport",
33
- "9": "technologie"
34
  },
35
  "id2lang": {
36
  "0": "fr"
@@ -39,15 +39,15 @@
39
  "is_encoder": true,
40
  "label2id": {
41
  "Culture": 0,
42
- "economie": 1,
43
- "education": 2,
44
- "environement": 3,
45
- "justice": 4,
46
- "opinion": 5,
47
- "politique": 6,
48
- "societe": 7,
49
- "sport": 8,
50
- "technologie": 9
51
  },
52
  "lang2id": {
53
  "fr": 0
@@ -88,7 +88,8 @@
88
  "summary_type": "first",
89
  "summary_use_proj": true,
90
  "tokens_per_batch": -1,
91
- "transformers_version": "4.2.2",
 
92
  "unk_index": 3,
93
  "use_lang_emb": true,
94
  "vocab_size": 68729,
 
22
  "group_by_size": true,
23
  "id2label": {
24
  "0": "Culture",
25
+ "1": "Economie",
26
+ "2": "Education",
27
+ "3": "Environement",
28
+ "4": "Justice",
29
+ "5": "Opinion",
30
+ "6": "Politique",
31
+ "7": "Societe",
32
+ "8": "Sport",
33
+ "9": "Technologie"
34
  },
35
  "id2lang": {
36
  "0": "fr"
 
39
  "is_encoder": true,
40
  "label2id": {
41
  "Culture": 0,
42
+ "Economie": 1,
43
+ "Education": 2,
44
+ "Environement": 3,
45
+ "Justice": 4,
46
+ "Opinion": 5,
47
+ "Politique": 6,
48
+ "Societe": 7,
49
+ "Sport": 8,
50
+ "Technologie": 9
51
  },
52
  "lang2id": {
53
  "fr": 0
 
88
  "summary_type": "first",
89
  "summary_use_proj": true,
90
  "tokens_per_batch": -1,
91
+ "torch_dtype": "float32",
92
+ "transformers_version": "4.11.3",
93
  "unk_index": 3,
94
  "use_lang_emb": true,
95
  "vocab_size": 68729,
pytorch_model.bin CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c87938490bbcd79d2a57d7fa14846abb6159c834dfe1f752f070f0a2e7eff0ab
3
- size 553042606
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b0ef7ad4d0b8257d4477987a0caee2a1c9507f6c6f7a686affcc274cd8c0d1d7
3
+ size 553030261
tf_model.h5 CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:542ca2881b48d8fdea2dc7f4c105e5a9f770f49d54656f01848aca6bb403b47f
3
- size 553182776
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3cacca89c5f6c0786bf64a425fb90fa3d4a62ba669190ecdd1e041aa29683573
3
+ size 553185776
tokenizer_config.json CHANGED
@@ -1 +1 @@
1
- {"unk_token": "<unk>", "bos_token": "<s>", "sep_token": "</s>", "pad_token": "<pad>", "cls_token": "</s>", "mask_token": "<special1>", "additional_special_tokens": ["<special0>", "<special1>", "<special2>", "<special3>", "<special4>", "<special5>", "<special6>", "<special7>", "<special8>", "<special9>"], "lang2id": null, "id2lang": null, "do_lowercase_and_remove_accent": true, "model_max_length": 512, "name_or_path": "flaubert/flaubert_base_cased"}
 
1
+ {"unk_token": "<unk>", "bos_token": "<s>", "sep_token": "</s>", "pad_token": "<pad>", "cls_token": "</s>", "mask_token": "<special1>", "additional_special_tokens": ["<special0>", "<special1>", "<special2>", "<special3>", "<special4>", "<special5>", "<special6>", "<special7>", "<special8>", "<special9>"], "lang2id": null, "id2lang": null, "do_lowercase_and_remove_accent": true, "model_max_length": 512, "name_or_path": "flaubert/flaubert_base_cased", "tokenizer_class": "FlaubertTokenizer"}