lightNLP
1.0.0
이 프로젝트는 Pytorch 및 Torchtext를 기반으로하며 자연어 처리 관련 작업을위한 기본 딥 러닝 프레임 워크를 제공하는 것을 목표로합니다.
자세한 지침 및 자습서는 프로젝트 문서를 참조하십시오 : Lightnlp-Cookbook
pip install lightNLP다음 명령을 사용하는 것과 같은 국내 소스를 설치하는 것이 좋습니다.
pip install -i https://pypi.douban.com/simple/ lightNLPPytorch 및 Torchtext와 같은 일부 라이브러리는 PYPI 소스에 있지 않거나 이전 버전 만 있으므로 일부 라이브러리를 별도로 설치해야합니다.
최신 버전의 Pytorch를 사용하십시오!
특정 설치에 대해서는 Pytorch 공식 웹 사이트를 참조하여 플랫폼, 설치 방법, Python 버전 및 CUDA 버전에 따라 귀하에게 적합한 버전을 선택하십시오.
다음 명령을 사용하여 최신 버전의 TorchText를 설치하십시오.
pip install https://github.com/pytorch/text/archive/master.zip바이오
교육 데이터 예제는 다음과 같습니다.
清 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('另一个很酷的事情是,通过框架我们可以停止并在稍后恢复训练。'))
예측 결과 :
[{'end': 15, 'entity': '我们', 'start': 14, 'type': 'Person'}]
E:TesttensorBoard 모델 교육 중 로그 저장 경로로 수정 된 명령 줄에서 다음 명령을 실행하고 포트 사양은 다음과 같습니다.
tensorboard --logdir=E: T est t ensorBoard --port=2019비슷한 효과를 볼 수 있습니다.

ner_model . deploy ( host = "localhost" , port = 2020 , debug = False ) 모든 매개 변수는 선택 사항입니다. host 매개 변수는 localhost 의 기본값입니다. port 포트는 프로그램에 의해 시스템에 유휴 포트에 자동으로 적용되며 debug 모드는 기본적으로 활성화되지 않습니다.
아래 그림과 같이 Postman을 사용하거나 프로그램을 작성하여 테스트 할 수 있습니다. 

scalar 및 점수 및 각 모델의 graph 포함한 Tensorboard 시각화 기능이 추가되었습니다 (현재 Pytorch에 SummaryWriter의 add_graph 함수에는 일부 버그가 있으므로 한동안 추가 할 수 없습니다.). name 있습니다. 이 프로젝트가 도움이된다면 보상을주십시오 ~