BERT NER Pytorch
1.0.0
伯特為中國人。
更新:其他一些可以參考,包括biaffine,globalpointer等:示例
輸入格式(更喜歡BIOS標籤方案),每個字符的標籤都為一行。句子用無效線旋轉。
美 B-LOC
国 I-LOC
的 O
华 B-PER
莱 I-PER
士 I-PER
我 O
跟 O
他 O
run_ner_xxx.py或run_ner_xxx.sh中的配置信息。sh scripts/run_ner_xxx.sh注意:模型的文件結構
├── prev_trained_model
| └── bert_base
| | └── pytorch_model.bin
| | └── config.json
| | └── vocab.txt
| | └── ......
BERT在DEV上的總體表現:
| 準確性(實體) | 召回(實體) | F1分數(實體) | |
|---|---|---|---|
| BERT+SOFTMAX | 0.7897 | 0.8031 | 0.7963 |
| BERT+CRF | 0.7977 | 0.8177 | 0.8076 |
| bert+跨度 | 0.8132 | 0.8092 | 0.8112 |
| BERT+SPAN+ADV | 0.8267 | 0.8073 | 0.8169 |
| Bert-Small(6層)+SPAN+KD | 0.8241 | 0.7839 | 0.8051 |
| bert+span+focal_loss | 0.8121 | 0.8008 | 0.8064 |
| bert+span+label_smooth | 0.8235 | 0.7946 | 0.8088 |
阿爾伯特(Albert)在DEV上的總體表現:
| 模型 | 版本 | 準確性(實體) | 召回(實體) | F1(實體) | 火車時間/時代 |
|---|---|---|---|---|---|
| 阿爾伯特 | base_google | 0.8014 | 0.6908 | 0.7420 | 0.75倍 |
| 阿爾伯特 | 大_google | 0.8024 | 0.7520 | 0.7763 | 2.1倍 |
| 阿爾伯特 | Xlarge_google | 0.8286 | 0.7773 | 0.8021 | 6.7倍 |
| 伯特 | 0.8118 | 0.8031 | 0.8074 | ------- | |
| 阿爾伯特 | base_bright | 0.8068 | 0.7529 | 0.7789 | 0.75倍 |
| 阿爾伯特 | 大_Bright | 0.8152 | 0.7480 | 0.7802 | 2.2x |
| 阿爾伯特 | xlarge_bright | 0.8222 | 0.7692 | 0.7948 | 7.3倍 |
BERT在DEV(測試)上的總體表現:
| 準確性(實體) | 召回(實體) | F1分數(實體) | |
|---|---|---|---|
| BERT+SOFTMAX | 0.9586(0.9566) | 0.9644(0.9613) | 0.9615(0.9590) |
| BERT+CRF | 0.9562(0.9539) | 0.9671( 0.9644 ) | 0.9616(0.9591) |
| bert+跨度 | 0.9604( 0.9620 ) | 0.9617(0.9632) | 0.9611( 0.9626 ) |
| bert+span+focal_loss | 0.9516(0.9569) | 0.9644(0.9681) | 0.9580(0.9625) |
| bert+span+label_smooth | 0.9566(0.9568) | 0.9624(0.9656) | 0.9595(0.9612) |