初始化项目,由ModelHub XC社区提供模型
Model: LorenzoDeMattei/GePpeTto Source: Original Platform
This commit is contained in:
10
.gitattributes
vendored
Normal file
10
.gitattributes
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
*.bin.* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bin filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.h5 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tflite filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tar.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ot filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.onnx filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
||||||
|
model.safetensors filter=lfs diff=lfs merge=lfs -text
|
||||||
141
README.md
Normal file
141
README.md
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
---
|
||||||
|
language: it
|
||||||
|
---
|
||||||
|
|
||||||
|
# GePpeTto GPT2 Model 🇮🇹
|
||||||
|
|
||||||
|
Pretrained GPT2 117M model for Italian.
|
||||||
|
|
||||||
|
You can find further details in the paper:
|
||||||
|
|
||||||
|
Lorenzo De Mattei, Michele Cafagna, Felice Dell’Orletta, Malvina Nissim, Marco Guerini "GePpeTto Carves Italian into a Language Model", arXiv preprint. Pdf available at: https://arxiv.org/abs/2004.14253
|
||||||
|
|
||||||
|
## Pretraining Corpus
|
||||||
|
|
||||||
|
The pretraining set comprises two main sources. The first one is a dump of Italian Wikipedia (November 2019),
|
||||||
|
consisting of 2.8GB of text. The second one is the ItWac corpus (Baroni et al., 2009), which amounts to 11GB of web
|
||||||
|
texts. This collection provides a mix of standard and less standard Italian, on a rather wide chronological span,
|
||||||
|
with older texts than the Wikipedia dump (the latter stretches only to the late 2000s).
|
||||||
|
|
||||||
|
## Pretraining details
|
||||||
|
|
||||||
|
This model was trained using GPT2's Hugging Face implemenation on 4 NVIDIA Tesla T4 GPU for 620k steps.
|
||||||
|
|
||||||
|
Training parameters:
|
||||||
|
|
||||||
|
- GPT-2 small configuration
|
||||||
|
- vocabulary size: 30k
|
||||||
|
- Batch size: 32
|
||||||
|
- Block size: 100
|
||||||
|
- Adam Optimizer
|
||||||
|
- Initial learning rate: 5e-5
|
||||||
|
- Warm up steps: 10k
|
||||||
|
|
||||||
|
## Perplexity scores
|
||||||
|
|
||||||
|
| Domain | Perplexity |
|
||||||
|
|---|---|
|
||||||
|
| Wikipedia | 26.1052 |
|
||||||
|
| ItWac | 30.3965 |
|
||||||
|
| Legal | 37.2197 |
|
||||||
|
| News | 45.3859 |
|
||||||
|
| Social Media | 84.6408 |
|
||||||
|
|
||||||
|
For further details, qualitative analysis and human evaluation check out: https://arxiv.org/abs/2004.14253
|
||||||
|
|
||||||
|
## Load Pretrained Model
|
||||||
|
|
||||||
|
You can use this model by installing Huggingface library `transformers`. And you can use it directly by initializing it like this:
|
||||||
|
|
||||||
|
```python
|
||||||
|
from transformers import GPT2Tokenizer, GPT2Model
|
||||||
|
|
||||||
|
model = GPT2Model.from_pretrained('LorenzoDeMattei/GePpeTto')
|
||||||
|
tokenizer = GPT2Tokenizer.from_pretrained(
|
||||||
|
'LorenzoDeMattei/GePpeTto',
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Example using GPT2LMHeadModel
|
||||||
|
|
||||||
|
```python
|
||||||
|
from transformers import AutoTokenizer, AutoModelWithLMHead, pipeline, GPT2Tokenizer
|
||||||
|
|
||||||
|
tokenizer = AutoTokenizer.from_pretrained("LorenzoDeMattei/GePpeTto")
|
||||||
|
model = AutoModelWithLMHead.from_pretrained("LorenzoDeMattei/GePpeTto")
|
||||||
|
|
||||||
|
text_generator = pipeline('text-generation', model=model, tokenizer=tokenizer)
|
||||||
|
prompts = [
|
||||||
|
"Wikipedia Geppetto",
|
||||||
|
"Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso"]
|
||||||
|
|
||||||
|
|
||||||
|
samples_outputs = text_generator(
|
||||||
|
prompts,
|
||||||
|
do_sample=True,
|
||||||
|
max_length=50,
|
||||||
|
top_k=50,
|
||||||
|
top_p=0.95,
|
||||||
|
num_return_sequences=3
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
for i, sample_outputs in enumerate(samples_outputs):
|
||||||
|
print(100 * '-')
|
||||||
|
print("Prompt:", prompts[i])
|
||||||
|
for sample_output in sample_outputs:
|
||||||
|
print("Sample:", sample_output['generated_text'])
|
||||||
|
print()
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
Output is,
|
||||||
|
|
||||||
|
```
|
||||||
|
----------------------------------------------------------------------------------------------------
|
||||||
|
Prompt: Wikipedia Geppetto
|
||||||
|
Sample: Wikipedia Geppetto rosso (film 1920)
|
||||||
|
|
||||||
|
Geppetto rosso ("The Smokes in the Black") è un film muto del 1920 diretto da Henry H. Leonard.
|
||||||
|
|
||||||
|
Il film fu prodotto dalla Selig Poly
|
||||||
|
|
||||||
|
Sample: Wikipedia Geppetto
|
||||||
|
|
||||||
|
Geppetto ("Geppetto" in piemontese) è un comune italiano di 978 abitanti della provincia di Cuneo in Piemonte.
|
||||||
|
|
||||||
|
L'abitato, che si trova nel versante valtellinese, si sviluppa nella
|
||||||
|
|
||||||
|
Sample: Wikipedia Geppetto di Natale (romanzo)
|
||||||
|
|
||||||
|
Geppetto di Natale è un romanzo di Mario Caiano, pubblicato nel 2012.
|
||||||
|
|
||||||
|
----------------------------------------------------------------------------------------------------
|
||||||
|
Prompt: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso
|
||||||
|
Sample: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso. Il burattino riesce a scappare. Dopo aver trovato un prezioso sacchetto si reca
|
||||||
|
|
||||||
|
Sample: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso, e l'unico che lo possiede, ma, di fronte a tutte queste prove
|
||||||
|
|
||||||
|
Sample: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso: - A voi gli occhi, le guance! A voi il mio pezzo!
|
||||||
|
```
|
||||||
|
|
||||||
|
## Citation
|
||||||
|
|
||||||
|
Please use the following bibtex entry:
|
||||||
|
|
||||||
|
```
|
||||||
|
@misc{mattei2020geppetto,
|
||||||
|
title={GePpeTto Carves Italian into a Language Model},
|
||||||
|
author={Lorenzo De Mattei and Michele Cafagna and Felice Dell'Orletta and Malvina Nissim and Marco Guerini},
|
||||||
|
year={2020},
|
||||||
|
eprint={2004.14253},
|
||||||
|
archivePrefix={arXiv},
|
||||||
|
primaryClass={cs.CL}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## References
|
||||||
|
|
||||||
|
Marco Baroni, Silvia Bernardini, Adriano Ferraresi,
|
||||||
|
and Eros Zanchetta. 2009. The WaCky wide web: a
|
||||||
|
collection of very large linguistically processed webcrawled corpora. Language resources and evaluation, 43(3):209–226.
|
||||||
51
config.json
Normal file
51
config.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"architectures": [
|
||||||
|
"GPT2LMHeadModel"
|
||||||
|
],
|
||||||
|
"attn_pdrop": 0.1,
|
||||||
|
"bos_token_id": 0,
|
||||||
|
"do_sample": false,
|
||||||
|
"embd_pdrop": 0.1,
|
||||||
|
"eos_token_ids": 0,
|
||||||
|
"finetuning_task": null,
|
||||||
|
"id2label": {
|
||||||
|
"0": "LABEL_0",
|
||||||
|
"1": "LABEL_1"
|
||||||
|
},
|
||||||
|
"initializer_range": 0.02,
|
||||||
|
"is_decoder": false,
|
||||||
|
"label2id": {
|
||||||
|
"LABEL_0": 0,
|
||||||
|
"LABEL_1": 1
|
||||||
|
},
|
||||||
|
"layer_norm_epsilon": 1e-05,
|
||||||
|
"length_penalty": 1.0,
|
||||||
|
"max_length": 20,
|
||||||
|
"model_type": "gpt2",
|
||||||
|
"n_ctx": 1024,
|
||||||
|
"n_embd": 768,
|
||||||
|
"n_head": 12,
|
||||||
|
"n_layer": 12,
|
||||||
|
"n_positions": 1024,
|
||||||
|
"num_beams": 1,
|
||||||
|
"num_labels": 2,
|
||||||
|
"num_return_sequences": 1,
|
||||||
|
"output_attentions": false,
|
||||||
|
"output_hidden_states": false,
|
||||||
|
"output_past": true,
|
||||||
|
"pad_token_id": 0,
|
||||||
|
"pruned_heads": {},
|
||||||
|
"repetition_penalty": 1.0,
|
||||||
|
"resid_pdrop": 0.1,
|
||||||
|
"summary_activation": null,
|
||||||
|
"summary_first_dropout": 0.1,
|
||||||
|
"summary_proj_to_labels": true,
|
||||||
|
"summary_type": "cls_index",
|
||||||
|
"summary_use_proj": true,
|
||||||
|
"temperature": 1.0,
|
||||||
|
"top_k": 50,
|
||||||
|
"top_p": 1.0,
|
||||||
|
"torchscript": false,
|
||||||
|
"use_bfloat16": false,
|
||||||
|
"vocab_size": 30000
|
||||||
|
}
|
||||||
1
eval_results.txt
Normal file
1
eval_results.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
perplexity = tensor(84.6408)
|
||||||
3
flax_model.msgpack
Normal file
3
flax_model.msgpack
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:ca9de9868952bbf26c5ed657e3eefb15de6cdbcc8613d0ef932534ed1d34a667
|
||||||
|
size 435534616
|
||||||
29744
merges.txt
Normal file
29744
merges.txt
Normal file
File diff suppressed because it is too large
Load Diff
3
model.safetensors
Normal file
3
model.safetensors
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:09ba4d3ef3c88413fdaa27dc36dc160329b8074c2c8da7d653d7c9b0888cb0fe
|
||||||
|
size 485877646
|
||||||
3
optimizer.pt
Normal file
3
optimizer.pt
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:be324024bb4655c35201f86034a4df0d0eae8fc951b0ead73d227a6a2044ecd4
|
||||||
|
size 871104258
|
||||||
3
pytorch_model.bin
Normal file
3
pytorch_model.bin
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:df874cf7f61b14f53f27c332086eac7f978403cd923a10a477fc8e46e3eff8a7
|
||||||
|
size 485894375
|
||||||
BIN
scheduler.pt
Normal file
BIN
scheduler.pt
Normal file
Binary file not shown.
1
special_tokens_map.json
Normal file
1
special_tokens_map.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"bos_token": "<|endoftext|>", "eos_token": "<|endoftext|>", "unk_token": "<|endoftext|>"}
|
||||||
1
tokenizer_config.json
Normal file
1
tokenizer_config.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
3
training_args.bin
Normal file
3
training_args.bin
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:dab0bb3640a6fb8619418a8d436a27e1668e25a612dbe519ff4482893016953f
|
||||||
|
size 1370
|
||||||
1
vocab.json
Normal file
1
vocab.json
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user