BiLSTM + CRF 命名实体识别实践(下)
0. 前言
上一篇博客简单讨论了理论知识,这篇博客主要是实践部分,主要针对上一篇博客中提到的代码的优化。优化点主要包含以下几个方面:
(1)max_seq_len如何取值?
(2)sequence_len不固定会给模型带来多大的提升?
(3)batch_size不固定,方便预测
(4)词向量的预训练能给模型带来哪些好处?
(5)特定业务场景下,如何迁移?
注:数据集为公开数据集boson.
1. max_seq_len取值
从上图不难看出,大部分句子的长度不超过50。源代码设置max_seq_len=60,这里觉得设置成50就可以了。
2. sequence_len不固定
3. batch_size不固定
4.词向量的预训练给模型带来的好处
通过查看vec.txt提前预训练的词向量文件,发现实际出现的字都出现在该文件中,因此可以加速模型的收敛。但是否需要进一步训练还需要进一步尝试,与样本量和数据是否同分布有关。