Chinesische Beschreibung | Englisch

Dieses Projekt bietet ein vorgebildetes XLNET-Modell für Chinesen, das darauf abzielt, die chinesischen Ressourcen für die Verarbeitung von natürlichen Sprachen zu bereichern und eine diversifizierte chinesische vorgebrachte Modellauswahl bereitzustellen. Wir begrüßen alle Experten und Wissenschaftler, um sie herunterzuladen und zu nutzen und gemeinsam den Bau chinesischer Ressourcen zu fördern und zu entwickeln.
Dieses Projekt basiert auf dem offiziellen XLNET von CMU/Google: https://github.com/zihangdai/xlnet
Chinesische LERT | Chinese Englisch Pert | Chinesischer Macbert | Chinesische Elektrik | Chinesische xlnet | Chinesische Bert | Knowledge Destillation Tool Textbrewer | Modellschneidwerkzeug Textpruner
Siehe weitere Ressourcen,
2023/3/28 Open Source Chinese Lama & Alpaca Big Model, das schnell auf dem PC eingesetzt und erfahren werden kann, https://github.com/ymcui/chinese-lama-alpaca
2022/10/29 Wir schlagen eine vorgebildete Modelllert vor, die sprachliche Informationen integriert. Ansicht: https://github.com/ymcui/lert
2022/3/30 Wir Open Source Ein neues vorgebildetes Modell Pert. Ansicht: https://github.com/ymcui/pert
2021/12/17 IFlytek Joint Laboratory startet das Modell Schneidetoolkit Textpruner. Anzeigen: https://github.com/airaria/textpruner
2021/10/24 IFlytek Joint Laboratory veröffentlichte ein vorgebildetes Modell CINO für ethnische Minderheitensprachen. Ansicht: https://github.com/ymcui/chinese-minority-plm
2021/7/21 "Natürliche Sprachverarbeitung: Methoden, die auf Voraussetzungsmodellen basieren", wurden von vielen Wissenschaftlern des Harbin Institute of Technology SCIR veröffentlicht, und jeder ist eingeladen, es zu kaufen.
2021/1/27 Alle Modelle haben TensorFlow 2 unterstützt. Bitte rufen Sie ihn an oder laden Sie ihn über die Transformers Library herunter. https://huggingface.co/hfl
2020/8/27 IFL Joint Laboratory hat die Liste in der Bewertung der allgemeinen natürlichen Sprachverständnis der Kleber an der Liste der Leim.
2020/3/11 Um die Anforderungen besser zu verstehen, sind Sie eingeladen, den Fragebogen auszufüllen, um Ihnen bessere Ressourcen bereitzustellen.
2020/2/26 IFLYTEK Joint Laboratory Freisetzende Wissensdestillationsinstrument für Wissensdestillation
2019/12/19 Das in diesem Verzeichnis veröffentlichte Modell wurde mit Huggingface-Transformern verbunden, um das schnelle Laden anzuzeigen
2019/9/5 XLNet-base steht zum Download zur Verfügung, den Modell Download anzeigen
2019/8/19 bietet chinesisches XLNet-mid Modell, das auf großem Maßstab Universal Corpus (5.4B Word Count) ausgebildet ist, das Modell zum Ansehen
| Kapitel | beschreiben |
|---|---|
| Modell Download | Bietet die Download-Adresse von vorgebildetem XLNet auf Chinesisch |
| Basissystemeffekte | Listen Sie einige Basissystemeffekte auf |
| Details vor der Ausbildung | Beschreibung der Details vor dem Training |
| Downstream-Aufgabe Feinabstimmungsdetails | Verwandte Beschreibungen der nachgeschalteten Aufgabe Feinabstimmungsdetails |
| FAQ | FAQs und Antworten |
| Zitat | Technische Berichte in diesem Verzeichnis |
XLNet-mid : 24-Layer, 768 versteckte, 12-Heads, 209m ParameterXLNet-base : 12-Layer, 768 versteckte, 12-Heads, 117m Parameter| Modellabkürzung | Materialien | Google Download | Baidu NetDisk -Download |
|---|---|---|---|
XLNet-mid, Chinese | Chinesisches Wiki+ Allgemeine Daten [1] | Tensorflow Pytorch | TensorFlow (Passwort 2JV2) |
XLNet-base, Chinese | Chinesisches Wiki+ Allgemeine Daten [1] | Tensorflow Pytorch | TensorFlow (Passwort GE7W) |
[1] Zu den allgemeinen Daten gehören: Enzyklopädie, Nachrichten, Q & A und andere Daten, wobei eine Gesamtzahl von Wörtern 5,4B erreicht ist, die wie der von uns veröffentlichte Bert-WWM-EXT-Trainingskorpus.
Wenn Sie die Pytorch -Version benötigen,
1) Bitte konvertieren Sie es selbst durch das von Transformers bereitgestellte Konvertierungsskript.
2) oder laden Sie Pytorch direkt über die offizielle Website von Huggingface herunter: https://huggingface.co/hfl
Methode: Klicken Sie auf ein Modell, das Sie herunterladen → nach unten ziehen möchten und auf "Alle Dateien in Modelllisten auflisten" → Download Bin- und JSON-Dateien im Popup-Feld.
Es wird empfohlen, Baidu NetDisk -Download -Punkte auf dem chinesischen Festland zu verwenden, und in Übersee wird empfohlen, Google -Download -Punkte zu verwenden. XLNet-mid Modelldateigröße beträgt ungefähr 800 m . TensorFlow-Version XLNet-mid, Chinese als Beispiel nach dem Herunterladen der ZIP-Datei, um zu erhalten, um zu erhalten:
chinese_xlnet_mid_L-24_H-768_A-12.zip
|- xlnet_model.ckpt # 模型权重
|- xlnet_model.meta # 模型meta信息
|- xlnet_model.index # 模型index信息
|- xlnet_config.json # 模型参数
|- spiece.model # 词表
Die oben genannten Modelle sind leicht aufgerufen.
tokenizer = AutoTokenizer.from_pretrained("MODEL_NAME")
model = AutoModel.from_pretrained("MODEL_NAME")
Die entsprechende Liste von MODEL_NAME lautet wie folgt:
| Modellname | Model_name |
|---|---|
| XLNET-MID | HFL/Chinese-XLNet-Mid |
| Xlnet-Base | HFL/Chinese-XLNet-Base |
Um den Baseline -Effekt zu vergleichen, haben wir ihn auf den folgenden chinesischen Datensätzen getestet. Chinesische Bert, Bert-WWM, Bert-Wwm-EXT, XLNET-BASE, XLNET-MID wurden verglichen. Unter ihnen stammen die Ergebnisse von chinesischem Bert, Bert-WWM und Bert-Wwm-EXT aus dem chinesischen Bert-WWM-Projekt. Zeit und Energie sind begrenzt und konnten nicht mehr Kategorien von Aufgaben abdecken. Bitte versuchen Sie es selbst.
Hinweis: Um die Zuverlässigkeit der Ergebnisse zu gewährleisten, laufen wir für dasselbe Modell 10 -mal (unterschiedliche Zufallssamen), um die maximalen und Durchschnittswerte der Modellleistung zu melden. Wenn nichts Unerwartetes passiert, sollte das Ergebnis Ihres Betriebs in diesem Bereich liegen.
Im Bewertungsindikator wird der Durchschnittswert in Klammern dargestellt und der Maximalwert außerhalb der Klammern dargestellt.
** CMRC 2018 Data Set ** sind chinesische Daten des maschinellen Leseverständnisses, die von Iflytek Joint Laboratory veröffentlicht wurden. Laut einer bestimmten Frage muss das System Fragmente aus dem Kapitel als Antwort in der gleichen Form wie Kader extrahieren. Bewertungsindikatoren sind: EM / F1
| Modell | Entwicklungsset | Testset | Herausforderungssatz |
|---|---|---|---|
| Bert | 65,5 (64,4) / 84,5 (84,0) | 70,0 (68,7) / 87,0 (86,3) | 18,6 (17.0) / 43,3 (41,3) |
| Bert-wwm | 66,3 (65,0) / 85,6 (84,7) | 70,5 (69,1) / 87,4 (86,7) | 21.0 (19.3) / 47.0 (43,9) |
| Bert-wwm-ot | 67,1 (65,6) / 85,7 (85,0) | 71,4 (70,0) / 87,7 (87,0) | 24.0 (20.0) / 47,3 (44,6) |
| Xlnet-Base | 65,2 (63,0) / 86,9 (85,9) | 67,0 (65,8) / 87,2 (86,8) | 25,0 (22,7) / 51,3 (49,5) |
| XLNET-MID | 66,8 (66,3) / 88,4 (88,1) | 69,3 (68,5) / 89,2 (88,8) | 29,1 (27,1) / 55,8 (54,9) |
** DRCD -Datensatz ** wird vom Delta Research Institute, Taiwan, China, veröffentlicht. Seine Form ist die gleiche wie der Kader und ein extrahierter Leseverständnis -Datensatz, der auf traditionellen Chinesen basiert. Bewertungsindikatoren sind: EM / F1
| Modell | Entwicklungsset | Testset |
|---|---|---|
| Bert | 83.1 (82,7) / 89,9 (89,6) | 82,2 (81,6) / 89,2 (88,8) |
| Bert-wwm | 84,3 (83,4) / 90,5 (90,2) | 82,8 (81,8) / 89,7 (89,0) |
| Bert-wwm-ot | 85,0 (84,5) / 91,2 (90,9) | 83,6 (83,0) / 90,4 (89,9) |
| Xlnet-Base | 83,8 (83,2) / 92.3 (92,0) | 83,5 (82,8) / 92.2 (91,8) |
| XLNET-MID | 85,3 (84,9) / 93,5 (93,3) | 85,5 (84,8) / 93,6 (93,2) |
In der Aufgabe der Emotion -Klassifizierung haben wir den CHNSenticorp -Datensatz verwendet. Das Modell muss den Text in zwei Kategorien unterteilen:积极und消极. Der Bewertungsindikator ist: Genauigkeit
| Modell | Entwicklungsset | Testset |
|---|---|---|
| Bert | 94.7 (94,3) | 95.0 (94,7) |
| Bert-wwm | 95.1 (94,5) | 95.4 (95.0) |
| Xlnet-Base | ||
| XLNET-MID | 95,8 (95.2) | 95.4 (94,9) |
Im Folgenden werden die Details vor dem Training mit XLNet-mid Modell als Beispiel beschrieben.
Befolgen Sie die Schritte des offiziellen XLNET -Tutorials. Sie müssen zunächst einen Satzstück verwenden, um eine Wortschatzliste zu erstellen. In diesem Projekt haben wir eine Vokabulargröße von 32000 verwendet, und der Rest der Parameter werden in der Standardkonfiguration im offiziellen Beispiel konfiguriert.
spm_train
--input=wiki.zh.txt
--model_prefix=sp10m.cased.v3
--vocab_size=32000
--character_coverage=0.99995
--model_type=unigram
--control_symbols=<cls>,<sep>,<pad>,<mask>,<eod>
--user_defined_symbols=<eop>,.,(,),",-,–,£,€
--shuffle_input_sentence
--input_sentence_size=10000000
Nach dem Generieren der Wortschatzliste wird der Originaltextkorpus verwendet, um die Trainingsdatei tf_records zu generieren. Der Originaltext ist genauso erstellt wie das ursprüngliche Tutorial:
Im Folgenden finden Sie die Befehle beim Generieren von Daten (setzen Sie num_task und task basierend auf der tatsächlichen Anzahl von Scheiben fest):
SAVE_DIR=./output_b32
INPUT=./data/*.proc.txt
python data_utils.py
--bsz_per_host=32
--num_core_per_host=8
--seq_len=512
--reuse_len=256
--input_glob=${INPUT}
--save_dir=${SAVE_DIR}
--num_passes=20
--bi_data=True
--sp_path=spiece.model
--mask_alpha=6
--mask_beta=1
--num_predict=85
--uncased=False
--num_task=10
--task=1
Nach dem Erhalt der obigen Daten beginnt das Pre-Training XLNET offiziell. Der Grund, warum es als XLNet-mid bezeichnet wird, ist, dass die Anzahl der Schichten nur im Vergleich zu XLNet-base erhöht wird (12 Ebenen erhöhen sich auf 24 Schichten), und die verbleibenden Parameter haben sich nicht geändert, hauptsächlich aufgrund der Einschränkungen von Computergeräten. Die verwendeten Befehle sind wie folgt:
DATA=YOUR_GS_BUCKET_PATH_TO_TFRECORDS
MODEL_DIR=YOUR_OUTPUT_MODEL_PATH
TPU_NAME=v3-xlnet
TPU_ZONE=us-central1-b
python train.py
--record_info_dir=$DATA
--model_dir=$MODEL_DIR
--train_batch_size=32
--seq_len=512
--reuse_len=256
--mem_len=384
--perm_size=256
--n_layer=24
--d_model=768
--d_embed=768
--n_head=12
--d_head=64
--d_inner=3072
--untie_r=True
--mask_alpha=6
--mask_beta=1
--num_predict=85
--uncased=False
--train_steps=2000000
--save_steps=20000
--warmup_steps=20000
--max_save=20
--weight_decay=0.01
--adam_epsilon=1e-6
--learning_rate=1e-4
--dropout=0.1
--dropatt=0.1
--tpu=$TPU_NAME
--tpu_zone=$TPU_ZONE
--use_tpu=True
Das Gerät zur Feinabstimmung nachgeschalteter Aufgaben ist Google Cloud TPU V2 (64 g HBM). Im Folgenden wird kurz die Konfiguration jeder Aufgabe beschrieben, wenn die Feinabstimmung durchgeführt wird. Wenn Sie die GPU zur Feinanpassung verwenden, ändern Sie bitte die entsprechenden Parameter, insbesondere batch_size , learning_rate und andere Parameter. Für den verwandten Code überprüfen Sie bitte das src -Verzeichnis.
Für Leseverständnisaufgaben werden zuerst die TF_Records -Daten benötigt. Weitere Informationen finden Sie in der Squad 2.0 -Verarbeitungsmethode des offiziellen XLNET -Tutorials, das hier nicht beschrieben wird. Im Folgenden sind die Skriptparameter in der CMRC 2018 Chinese Machine Reading Readession -Aufgabe verwendet:
XLNET_DIR=YOUR_GS_BUCKET_PATH_TO_XLNET
MODEL_DIR=YOUR_OUTPUT_MODEL_PATH
DATA_DIR=YOUR_DATA_DIR_TO_TFRECORDS
RAW_DIR=YOUR_RAW_DATA_DIR
TPU_NAME=v2-xlnet
TPU_ZONE=us-central1-b
python -u run_cmrc_drcd.py
--spiece_model_file=./spiece.model
--model_config_path=${XLNET_DIR}/xlnet_config.json
--init_checkpoint=${XLNET_DIR}/xlnet_model.ckpt
--tpu_zone=${TPU_ZONE}
--use_tpu=True
--tpu=${TPU_NAME}
--num_hosts=1
--num_core_per_host=8
--output_dir=${DATA_DIR}
--model_dir=${MODEL_DIR}
--predict_dir=${MODEL_DIR}/eval
--train_file=${DATA_DIR}/cmrc2018_train.json
--predict_file=${DATA_DIR}/cmrc2018_dev.json
--uncased=False
--max_answer_length=40
--max_seq_length=512
--do_train=True
--train_batch_size=16
--do_predict=True
--predict_batch_size=16
--learning_rate=3e-5
--adam_epsilon=1e-6
--iterations=1000
--save_steps=2000
--train_steps=2400
--warmup_steps=240
Im Folgenden sind die Skriptparameter in der traditionellen Aufgabe des traditionellen chinesischen maschinellen Leseverständnisses verwendet:
XLNET_DIR=YOUR_GS_BUCKET_PATH_TO_XLNET
MODEL_DIR=YOUR_OUTPUT_MODEL_PATH
DATA_DIR=YOUR_DATA_DIR_TO_TFRECORDS
RAW_DIR=YOUR_RAW_DATA_DIR
TPU_NAME=v2-xlnet
TPU_ZONE=us-central1-b
python -u run_cmrc_drcd.py
--spiece_model_file=./spiece.model
--model_config_path=${XLNET_DIR}/xlnet_config.json
--init_checkpoint=${XLNET_DIR}/xlnet_model.ckpt
--tpu_zone=${TPU_ZONE}
--use_tpu=True
--tpu=${TPU_NAME}
--num_hosts=1
--num_core_per_host=8
--output_dir=${DATA_DIR}
--model_dir=${MODEL_DIR}
--predict_dir=${MODEL_DIR}/eval
--train_file=${DATA_DIR}/DRCD_training.json
--predict_file=${DATA_DIR}/DRCD_dev.json
--uncased=False
--max_answer_length=30
--max_seq_length=512
--do_train=True
--train_batch_size=16
--do_predict=True
--predict_batch_size=16
--learning_rate=3e-5
--adam_epsilon=1e-6
--iterations=1000
--save_steps=2000
--train_steps=3600
--warmup_steps=360
Im Gegensatz zu Leseverständnisaufgaben müssen Klassifizierungsaufgaben keine TF_Records im Voraus generieren. Im Folgenden finden Sie die Skriptparameter, die in der Aufgabe der CHNSenticorp Emotion Classification verwendet werden:
XLNET_DIR=YOUR_GS_BUCKET_PATH_TO_XLNET
MODEL_DIR=YOUR_OUTPUT_MODEL_PATH
DATA_DIR=YOUR_DATA_DIR_TO_TFRECORDS
RAW_DIR=YOUR_RAW_DATA_DIR
TPU_NAME=v2-xlnet
TPU_ZONE=us-central1-b
python -u run_classifier.py
--spiece_model_file=./spiece.model
--model_config_path=${XLNET_DIR}/xlnet_config.json
--init_checkpoint=${XLNET_DIR}/xlnet_model.ckpt
--task_name=csc
--do_train=True
--do_eval=True
--eval_all_ckpt=False
--uncased=False
--data_dir=${RAW_DIR}
--output_dir=${DATA_DIR}
--model_dir=${MODEL_DIR}
--train_batch_size=48
--eval_batch_size=48
--num_hosts=1
--num_core_per_host=8
--num_train_epochs=3
--max_seq_length=256
--learning_rate=2e-5
--save_steps=5000
--use_tpu=True
--tpu=${TPU_NAME}
--tpu_zone=${TPU_ZONE}
F: Wird ein größeres Modell veröffentlicht?
A: Nicht sicher, nicht garantiert. Wenn wir erhebliche Leistungsverbesserungen erhalten, werden wir die Veröffentlichung in Betracht ziehen.
F: Nicht gut in einigen Datensätzen?
A: Wählen Sie andere Modelle aus oder verwenden Sie Ihre Daten weiterhin für diesen Kontrollpunkt für die Vorausbildung.
F: Werden Daten vor dem Training veröffentlicht?
A: Entschuldigung, es kann nicht aufgrund von Urheberrechtsfragen veröffentlicht werden.
F: Wie lange dauert es, XLNET zu trainieren?
A: XLNet-mid trainierte 2M-Schritte (Batch = 32) mit Cloud TPU V3 (128 g HBM), was ungefähr 3 Wochen dauert. XLNet-base trainierte 4M-Schritte.
F: Warum hat XLNET offiziell nicht mehrsprachige oder chinesische XLNET veröffentlicht?
A: (Die folgenden sind persönliche Meinungen) Es ist unbekannt, viele Leute haben Nachrichten hinterlassen, die sagten, dass sie hoffen, klicken Sie auf XLNet-Isue-#3. Mit der offiziellen Technologie und der Rechenleistung von XLNet ist das Training eines solchen Modells nicht schwierig (die mehrsprachige Version kann komplizierter sein und erfordert das Gleichgewicht zwischen verschiedenen Sprachen. Sie können auch die Beschreibung in mehrsprachiger Bert beziehen.). Aber wenn die Autoren dagegen darüber nachdenken, sind die Autoren nicht dazu verpflichtet. Als Wissenschaftler reicht ihr technischer Beitrag aus und sie sollten nicht kritisiert werden, wenn sie nicht veröffentlicht werden, und sie fordern alle auf, die Arbeit anderer Menschen rational zu behandeln.
F: Ist XLNET in den meisten Fällen besser als Bert?
A: Derzeit scheint es, dass zumindest die oben genannten Aufgaben wirksam sind und die verwendeten Daten mit den von uns veröffentlichten Bert-Wwm-Otd ausgehen.
Q: ?
A: .
Wenn der Inhalt in diesem Verzeichnis für Ihre Forschungsarbeiten hilfreich ist, finden Sie in Ihrem Papier den folgenden technischen Bericht: https://arxiv.org/abs/2004.13922
@inproceedings{cui-etal-2020-revisiting,
title = "Revisiting Pre-Trained Models for {C}hinese Natural Language Processing",
author = "Cui, Yiming and
Che, Wanxiang and
Liu, Ting and
Qin, Bing and
Wang, Shijin and
Hu, Guoping",
booktitle = "Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing: Findings",
month = nov,
year = "2020",
address = "Online",
publisher = "Association for Computational Linguistics",
url = "https://www.aclweb.org/anthology/2020.findings-emnlp.58",
pages = "657--668",
}
Projektautoren: Cui Yiming (IFlytek Joint Laboratory), Che Wanxiang (Harbin Institute of Technology), Liu Ting (Harbin Institute of Technology), Wang Shijin (Iflytek), Hu Guoping (Iflytek)
Dieses Projekt wird vom TFRC -Programm (TensorFlow Research Cloud) von Google finanziert.
Während des Aufbaus dieses Projekts haben wir uns auf das folgende Lager verwiesen, und wir möchten uns hier bedanken:
Dieses Projekt ist nicht das von XLNET offiziell veröffentlichte chinesische XLNET -Modell. Gleichzeitig ist dieses Projekt kein offizielles Produkt des Harbin Institute of Technology oder Iflytek. Der Inhalt in diesem Projekt dient nur für technische Forschungsreferenz und wird nicht als abschließende Grundlage verwendet. Benutzer können das Modell jederzeit im Rahmen der Lizenz verwenden, aber wir sind nicht für direkte oder indirekte Verluste verantwortlich, die durch die Verwendung des Inhalts des Projekts verursacht werden.
Willkommen, um dem offiziellen WeChat -offiziellen Bericht über das Joint Laboratory Iflytek zu folgen.

Wenn Sie Fragen haben, senden Sie diese bitte in Github -Problem.
Wir haben keine Operationen und ermutigen die Internetnutzer, sich gegenseitig zu helfen, Probleme zu lösen.
Wenn Sie Implementierungsprobleme finden oder bereit sind, das Projekt gemeinsam zu erstellen, senden Sie bitte eine Pull -Anfrage.