词性标注

这篇文档主要介绍了词性标注算法的输入、输出以及各算法支持的参数配置。

词性标注接口

class oknlp.postagging.BasePosTagging
__call__(sents: List[str])List[List[Tuple[str, str]]]
参数

sents -- 输入的句子列表。

返回

返回一个和输入列表长度相同的列表,其中每一项对应输入的词性标注结果。

更多信息请参考 词性标注 - 示例

实际案例

>>> import oknlp
>>> postagging = oknlp.postagging.get_by_name()
>>> postagging(['我爱北京天安门', '今天天气真好'])
[
    [('我', 'PN'), ('爱', 'VV'), ('北京', 'NR'), ('天安门', 'NR')],
    [('今天', 'NT'), ('天气', 'NN'), ('真', 'AD'), ('好', 'VA')]
]

词性标注实现

BERT

class oknlp.postagging.BertPosTagging

基于BERT的词性标注算法

参数
  • device (str) -- 运行模型设备的名称,例如:"cuda:1","cpu"。

  • batch_size (int) -- 模型单次推理最大的batch size,默认会根据硬件资源自动设置。

  • num_preprocess (int) -- 预处理函数进程数,默认为一个自动设置的不超过4的值。

  • num_postprocess (int) -- 后处理函数进程数,默认为一个自动设置的不超过4的值。

  • max_queue_size (int) -- 最大调用队列长度,默认为1024.

  • multiprocessing_context -- 多进程上下文,默认优先使用"fork"方式。

Name

bert

示例

oknlp.postagging.get_by_name("bert", device="cuda:0")