初始化项目,由ModelHub XC社区提供模型
Model: ku-nlp/gpt2-large-japanese-char Source: Original Platform
This commit is contained in:
35
.gitattributes
vendored
Normal file
35
.gitattributes
vendored
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.arrow filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bin filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ftz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.h5 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.joblib filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.model filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.npy filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.npz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.onnx filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ot filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.parquet filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pb filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pickle filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pkl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pth filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
||||||
|
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tflite filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.wasm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
||||||
73
README.md
Normal file
73
README.md
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
---
|
||||||
|
language: ja
|
||||||
|
license: cc-by-sa-4.0
|
||||||
|
library_name: transformers
|
||||||
|
tags:
|
||||||
|
- gpt2
|
||||||
|
datasets:
|
||||||
|
- wikipedia
|
||||||
|
- cc100
|
||||||
|
- oscar
|
||||||
|
widget:
|
||||||
|
- text: "<s>昨日私は京都で"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Model Card for Japanese character-level GPT-2 Large
|
||||||
|
|
||||||
|
## Model description
|
||||||
|
|
||||||
|
This is a Japanese character-level GPT-2 Large (717M parameters) language model pre-trained on Japanese Wikipedia, the Japanese portion of CC-100, and the Japanese portion of OSCAR.
|
||||||
|
|
||||||
|
## How to use
|
||||||
|
|
||||||
|
You can use this model directly with a pipeline for text generation.
|
||||||
|
|
||||||
|
```python
|
||||||
|
>>> from transformers import pipeline, set_seed
|
||||||
|
>>> generator = pipeline('text-generation', model='ku-nlp/gpt2-large-japanese-char')
|
||||||
|
>>> set_seed(5)
|
||||||
|
>>> generator("<s>昨日私は京都で", max_length=30, do_sample=True, num_return_sequences=5)
|
||||||
|
|
||||||
|
[{'generated_text': '<s>昨日私は京都で仕事だったのですが、帰りは車を信号で止めて、'},
|
||||||
|
{'generated_text': '<s>昨日私は京都で開かれた大阪市都市戦略会議に出席しました。そ'},
|
||||||
|
{'generated_text': '<s>昨日私は京都で行われました関西の教育者・学校事例が集まるイ'},
|
||||||
|
{'generated_text': '<s>昨日私は京都では初雪を見ました。朝は少しパッとしない天気で'},
|
||||||
|
{'generated_text': '<s>昨日私は京都でこみっくトレジャーさんの撮影を見学させていた'}]
|
||||||
|
```
|
||||||
|
|
||||||
|
You can also use this model to get the features of a given text.
|
||||||
|
|
||||||
|
## Vocabulary
|
||||||
|
|
||||||
|
A character-level vocabulary of size 6K is used. To be precise, rare characters may be split into bytes because byte-level byte-pair encoding (BPE) is used. The BPE tokenizer was trained on a small subset of the training data. Since the data were converted into a one-character-per-line format, merge operations never go beyond character boundaries.
|
||||||
|
|
||||||
|
Note that the tokenizer maps U+0020 to `[UNK]` because preprocessing eliminated whitespace characters (U+0020) from training data. Use U+3000 (Ideographic Space) instead.
|
||||||
|
|
||||||
|
## Training data
|
||||||
|
|
||||||
|
We used the following corpora for pre-training:
|
||||||
|
|
||||||
|
- Japanese Wikipedia (as of 20221020, 3.2GB, 27M sentences, 1.3M documents)
|
||||||
|
- Japanese portion of CC-100 (85GB, 619M sentences, 66M documents)
|
||||||
|
- Japanese portion of OSCAR (54GB, 326M sentences, 25M documents)
|
||||||
|
|
||||||
|
Note that we filtered out documents annotated with "header", "footer", or "noisy" tags in OSCAR.
|
||||||
|
Also note that Japanese Wikipedia was duplicated 10 times to make the total size of the corpus comparable to that of CC-100 and OSCAR. As a result, the total size of the training data is 171GB.
|
||||||
|
|
||||||
|
## Training procedure
|
||||||
|
|
||||||
|
The training took about 8 months (with 7 interruptions) with a single NVIDIA A100 80GB GPU.
|
||||||
|
|
||||||
|
The following hyperparameters were used during pre-training:
|
||||||
|
|
||||||
|
- learning_rate: 2e-4
|
||||||
|
- per_device_train_batch_size: 6
|
||||||
|
- gradient_accumulation_steps: 98
|
||||||
|
- optimizer: AdamW with betas=(0.9, 0.999) and epsilon=1e-06
|
||||||
|
- weight_decay: 0.01
|
||||||
|
- lr_scheduler_type: linear
|
||||||
|
- max_grad_norm: 1.0
|
||||||
|
- max_steps: 500,000 (but terminated at 186,000 steps ~= 2.0 epochs)
|
||||||
|
- warmup_steps: 10,000
|
||||||
|
|
||||||
|
The eval loss was 1.309 while the eval accuracy was 0.6890. The evaluation set consists of 5,000 randomly sampled documents from each of the training corpora.
|
||||||
33
config.json
Normal file
33
config.json
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"_name_or_path": "ku-nlp/gpt2-large-japanese-char",
|
||||||
|
"activation_function": "gelu_new",
|
||||||
|
"architectures": [
|
||||||
|
"GPT2LMHeadModel"
|
||||||
|
],
|
||||||
|
"attn_pdrop": 0.1,
|
||||||
|
"bos_token_id": 1,
|
||||||
|
"embd_pdrop": 0.1,
|
||||||
|
"eos_token_id": 2,
|
||||||
|
"initializer_range": 0.02,
|
||||||
|
"layer_norm_epsilon": 1e-05,
|
||||||
|
"model_type": "gpt2",
|
||||||
|
"n_embd": 1280,
|
||||||
|
"n_head": 20,
|
||||||
|
"n_inner": null,
|
||||||
|
"n_layer": 36,
|
||||||
|
"n_positions": 1024,
|
||||||
|
"pad_token_id": 1,
|
||||||
|
"reorder_and_upcast_attn": false,
|
||||||
|
"resid_pdrop": 0.1,
|
||||||
|
"scale_attn_by_inverse_layer_idx": false,
|
||||||
|
"scale_attn_weights": true,
|
||||||
|
"summary_activation": null,
|
||||||
|
"summary_first_dropout": 0.1,
|
||||||
|
"summary_proj_to_labels": true,
|
||||||
|
"summary_type": "cls_index",
|
||||||
|
"summary_use_proj": true,
|
||||||
|
"torch_dtype": "float32",
|
||||||
|
"transformers_version": "4.29.0",
|
||||||
|
"use_cache": true,
|
||||||
|
"vocab_size": 6000
|
||||||
|
}
|
||||||
7
generation_config.json
Normal file
7
generation_config.json
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"_from_model_config": true,
|
||||||
|
"bos_token_id": 1,
|
||||||
|
"eos_token_id": 2,
|
||||||
|
"pad_token_id": 1,
|
||||||
|
"transformers_version": "4.29.0"
|
||||||
|
}
|
||||||
5765
merges.txt
Normal file
5765
merges.txt
Normal file
File diff suppressed because it is too large
Load Diff
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:5092aa362028f5736b4dce63f82f3ee8285cbd93a8b379cc81547e2b308f8ab3
|
||||||
|
size 2907432506
|
||||||
6
special_tokens_map.json
Normal file
6
special_tokens_map.json
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"bos_token": "<s>",
|
||||||
|
"eos_token": "</s>",
|
||||||
|
"pad_token": "[PAD]",
|
||||||
|
"unk_token": "[UNK]"
|
||||||
|
}
|
||||||
40
tokenizer_config.json
Normal file
40
tokenizer_config.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"add_bos_token": false,
|
||||||
|
"add_prefix_space": false,
|
||||||
|
"bos_token": {
|
||||||
|
"__type": "AddedToken",
|
||||||
|
"content": "<s>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": true,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"clean_up_tokenization_spaces": true,
|
||||||
|
"eos_token": {
|
||||||
|
"__type": "AddedToken",
|
||||||
|
"content": "</s>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": true,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"errors": "replace",
|
||||||
|
"model_max_length": 1000000000000000019884624838656,
|
||||||
|
"pad_token": {
|
||||||
|
"__type": "AddedToken",
|
||||||
|
"content": "[PAD]",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": true,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"tokenizer_class": "GPT2Tokenizer",
|
||||||
|
"unk_token": {
|
||||||
|
"__type": "AddedToken",
|
||||||
|
"content": "[UNK]",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": true,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
}
|
||||||
|
}
|
||||||
6002
vocab.json
Normal file
6002
vocab.json
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user