模型:
EleutherAI/polyglot-ko-12.8b
Polyglot-Ko是由EleutherAI polyglot团队制作的一系列大规模的韩语自回归语言模型。
Hyperparameter | Value |
---|---|
n p a r a m e t e r s n_{parameters} n p a r a m e t e r s | 12,898,631,680 |
n l a y e r s n_{layers} n l a y e r s | 40 |
d m o d e l d_{model} d m o d e l | 5120 |
d f f d_{ff} d f f | 20,480 |
n h e a d s n_{heads} n h e a d s | 40 |
d h e a d d_{head} d h e a d | 128 |
n c t x n_{ctx} n c t x | 2,048 |
n v o c a b n_{vocab} n v o c a b | 30,003 / 30,080 |
Positional Encoding | 1234321 |
RoPE Dimensions | 1235321 |
该模型由40个Transformer层组成,模型维度为5120,前馈维度为20480。模型维度分为40个头,每个头的维度为128。每个头的64维应用了旋转位置嵌入(RoPE)。该模型使用了一个包含30003个标记的标记化词汇表进行训练。
Polyglot-Ko-12.8B使用了863GB的韩语语言数据进行训练(预处理前为1.2TB),这些数据是由 TUNiB 团队精心策划的大规模数据集。数据采集过程遵守了韩国法律。该数据集是为了训练Polyglot-Ko模型而收集的,因此不会公开发布。
Source | Size (GB) | Link |
---|---|---|
Korean blog posts | 682.3 | - |
Korean news dataset | 87.0 | - |
Modu corpus | 26.4 | corpus.korean.go.kr |
Korean patent dataset | 19.0 | - |
Korean Q & A dataset | 18.1 | - |
KcBert dataset | 12.7 | github.com/Beomi/KcBERT |
Korean fiction dataset | 6.1 | - |
Korean online comments | 4.2 | - |
Korean wikipedia | 1.4 | ko.wikipedia.org |
Clova call | < 1.0 | github.com/clovaai/ClovaCall |
Naver sentiment movie corpus | < 1.0 | github.com/e9t/nsmc |
Korean hate speech dataset | < 1.0 | - |
Open subtitles | < 1.0 | opus.nlpl.eu/OpenSubtitles.php |
AIHub various tasks datasets | < 1.0 | aihub.or.kr |
Standard Korean language dictionary | < 1.0 | stdict.korean.go.kr/main/main.do |
此外,为了避免模型在训练数据中记忆和生成个人身份信息(PII),我们在预处理阶段屏蔽了以下敏感信息:
Polyglot-Ko-12.8B在256个A100 GPUs上进行了301,000步的1670亿标记训练,使用 GPT-NeoX framework 作为训练器。它作为自回归语言模型进行训练,使用交叉熵损失来最大化预测下一个标记的可能性。
可以使用AutoModelForCausalLM类轻松加载此模型:
from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("EleutherAI/polyglot-ko-12.8b") model = AutoModelForCausalLM.from_pretrained("EleutherAI/polyglot-ko-12.8b")
我们在 KOBEST dataset 评估了Polyglot-Ko-3.8B,它是一个包含5个下游任务的基准测试,对比了skt/ko-gpt-trinity-1.2B-v0.5、kakaobrain/kogpt和facebook/xglm-7.5B等可比模型,使用了论文中提供的提示。
下面的表格显示了在少量示例数不同的情况下的结果。您可以使用 polyglot branch of lm-evaluation-harness 和以下脚本来重现这些结果。为了公平比较,所有模型在相同条件下以相同提示运行。在表格中,n表示少量示例的数量。
在WiC数据集的情况下,所有模型都显示出随机性能。
python main.py \ --model gpt2 \ --model_args pretrained='EleutherAI/polyglot-ko-3.8b' \ --tasks kobest_copa,kobest_hellaswag \ --num_fewshot $YOUR_NUM_FEWSHOT \ --batch_size $YOUR_BATCH_SIZE \ --device $YOUR_DEVICE \ --output_path $/path/to/output/
Model | params | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|---|
12310321 | 1.2B | 0.6696 | 0.6477 | 0.6419 | 0.6514 |
12311321 | 6.0B | 0.7345 | 0.7287 | 0.7277 | 0.7479 |
12312321 | 7.5B | 0.6723 | 0.6731 | 0.6769 | 0.7119 |
12313321 | 1.3B | 0.7196 | 0.7193 | 0.7204 | 0.7206 |
12314321 | 3.8B | 0.7595 | 0.7608 | 0.7638 | 0.7788 |
12315321 | 5.8B | 0.7745 | 0.7676 | 0.7775 | 0.7887 |
12316321 (this) | 12.8B | 0.7937 | 0.8108 | 0.8037 | 0.8369 |
Model | params | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|---|
12310321 | 1.2B | 0.5243 | 0.5272 | 0.5166 | 0.5352 |
12311321 | 6.0B | 0.5590 | 0.5833 | 0.5828 | 0.5907 |
12312321 | 7.5B | 0.5665 | 0.5689 | 0.5565 | 0.5622 |
12313321 | 1.3B | 0.5247 | 0.5260 | 0.5278 | 0.5427 |
12314321 | 3.8B | 0.5707 | 0.5830 | 0.5670 | 0.5787 |
12315321 | 5.8B | 0.5976 | 0.5998 | 0.5979 | 0.6208 |
12323321 | 12.8B | 0.5954 | 0.6306 | 0.6098 | 0.6118 |
Model | params | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|---|
12310321 | 1.2B | 0.3356 | 0.4014 | 0.3640 | 0.3560 |
12311321 | 6.0B | 0.4514 | 0.5981 | 0.5499 | 0.5202 |
12312321 | 7.5B | 0.4464 | 0.3324 | 0.3324 | 0.3324 |
12313321 | 1.3B | 0.3552 | 0.4751 | 0.4109 | 0.4038 |
12314321 | 3.8B | 0.4320 | 0.5263 | 0.4930 | 0.4038 |
12315321 | 5.8B | 0.4356 | 0.5698 | 0.5187 | 0.5236 |
12323321 | 12.8B | 0.4818 | 0.6041 | 0.6289 | 0.6448 |
Model | params | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|---|
12310321 | 1.2B | 0.6065 | 0.6878 | 0.7280 | 0.8413 |
12311321 | 6.0B | 0.3747 | 0.8942 | 0.9294 | 0.9698 |
12312321 | 7.5B | 0.3578 | 0.4471 | 0.3964 | 0.5271 |
12313321 | 1.3B | 0.6790 | 0.6257 | 0.5514 | 0.7851 |
12314321 | 3.8B | 0.4858 | 0.7950 | 0.7320 | 0.7851 |
12315321 | 5.8B | 0.3394 | 0.8841 | 0.8808 | 0.9521 |
12323321 | 12.8B | 0.9117 | 0.9015 | 0.9345 | 0.9723 |
Model | params | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|---|
12310321 | 1.2B | 0.3290 | 0.4313 | 0.4001 | 0.3621 |
12311321 | 6.0B | 0.3526 | 0.4775 | 0.4358 | 0.4061 |
12312321 | 7.5B | 0.3280 | 0.4903 | 0.4945 | 0.3656 |
12313321 | 1.3B | 0.3297 | 0.4850 | 0.4650 | 0.3290 |
12314321 | 3.8B | 0.3390 | 0.4944 | 0.4203 | 0.3835 |
12315321 | 5.8B | 0.3913 | 0.4688 | 0.4189 | 0.3910 |
12316321 (this) | 12.8B | 0.3985 | 0.3683 | 0.3307 | 0.3273 |
Polyglot-Ko已经经过训练,以优化下一个标记的预测。此类语言模型通常用于各种任务,了解可能的意外结果是很重要的。例如,Polyglot-Ko并不总是返回最实际或准确的响应,而是返回最具统计可能性的响应。此外,Polyglot可能会生成不可接受或冒犯性的内容。我们建议有人类策展人或其他过滤机制来审查敏感内容。
如果您觉得我们的工作有用,请考虑引用:
@misc{ko2023technical, title={A Technical Report for Polyglot-Ko: Open-Source Large-Scale Korean Language Models}, author={Hyunwoong Ko and Kichang Yang and Minho Ryu and Taekyoon Choi and Seungmu Yang and jiwung Hyun and Sungho Park}, year={2023}, eprint={2306.02254}, archivePrefix={arXiv}, primaryClass={cs.CL} }
我们所有的模型都遵循Apache License 2.0的条款进行许可。
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
感谢 Stability.ai 提供的计算资源,以及 TUNiB 为本项目提供的大规模韩语数据集。