Dieses Projekt basiert auf Pytorch und Torchtext und zielt darauf ab, einen grundlegenden Deep-Learn-Rahmen für Aufgaben zu natürlichen Sprachverarbeitungen zu bieten.
Ausführliche Anweisungen und Tutorials finden Sie in der Projektdokumentation: LightNLP-C-TOOKBOOK
pip install lightNLPEs wird empfohlen, inländische Quellen zur Installation zu verwenden, z. B. den folgenden Befehl:
pip install -i https://pypi.douban.com/simple/ lightNLPDa einige Bibliotheken wie Pytorch und Torchtext nicht in der PYPI -Quelle sind oder nur ältere Versionen haben, müssen wir einige Bibliotheken separat installieren.
Bitte verwenden Sie die neueste Version von Pytorch!
Für eine bestimmte Installation finden Sie auf der offiziellen Website von Pytorch, um die Version auszuwählen, die Ihnen entsprechend der Plattform, der Installationsmethode, der Python -Version und der CUDA -Version entspricht.
Verwenden Sie den folgenden Befehl, um die neueste Version von Torchtext zu installieren:
pip install https://github.com/pytorch/text/archive/master.zipBio
Die Beispiele für Trainingsdaten sind wie folgt:
清 B_Time
明 I_Time
是 O
人 B_Person
们 I_Person
祭 O
扫 O
先 B_Person
人 I_Person
, O
怀 O
念 O
追 O
思 O
的 O
日 B_Time
子 I_Time
。 O
正 O
如 O
宋 B_Time
代 I_Time
诗 B_Person
人 I_Person
from lightnlp.sl import NER
# 创建NER对象
ner_model = NER()
train_path = '/home/lightsmile/NLP/corpus/ner/train.sample.txt'
dev_path = '/home/lightsmile/NLP/corpus/ner/test.sample.txt'
vec_path = '/home/lightsmile/NLP/embedding/char/token_vec_300.bin'
# 只需指定训练数据路径和TensorBoard日志文件路径,预训练字向量可选,开发集路径可选,模型保存路径可选(模型保存路径默认为`xx_saves`,其中xx为模型简称,如ner)。
ner_model.train(train_path, vectors_path=vec_path, dev_path=dev_path, save_path='./ner_saves', log_dir='E:/Test/tensorboard/')
# 加载模型,默认当前目录下的`ner_saves`目录
ner_model.load('./ner_saves')
# 对train_path下的测试集进行读取测试
ner_model.test(train_path)
from pprint import pprint
pprint(ner_model.predict('另一个很酷的事情是,通过框架我们可以停止并在稍后恢复训练。'))
Vorhersageergebnisse:
[{'end': 15, 'entity': '我们', 'start': 14, 'type': 'Person'}]
Führen Sie den folgenden Befehl aus der Befehlszeile aus, wobei E:TesttensorBoard während des Modelltrainings als Protokollspeicherpfad geändert wird, und die Portspezifikation ist optional:
tensorboard --logdir=E: T est t ensorBoard --port=2019Sie können ähnliche Effekte sehen:

ner_model . deploy ( host = "localhost" , port = 2020 , debug = False ) Alle Parameter sind optional. host ist standardmäßig für localhost . port -Port wird vom Programm automatisch für einen Leerlaufanschluss zum System angewendet, und debug -Modus wird standardmäßig nicht aktiviert.
Sie können Postboten verwenden oder ein Programm schreiben, um es zu testen, wie in der folgenden Abbildung gezeigt: 

scalar von Verlust und Punktzahl und graph jedes Modells enthalten (derzeit gibt es einige Fehler in der Add_Graph -Funktion des Zusammenfassungswriters in Pytorch, sodass es vorerst nicht hinzugefügt werden kann.) name . Wenn dieses Projekt für Sie hilfreich ist, geben Sie mir bitte eine Belohnung ~