Skip to content

“查找表”功能不能支持中文吗? #2

@lixiang1991

Description

@lixiang1991

通过rasa_nlu的官方文档,我知道查找表是为了优化实体识别功能,同时又不增加过多训练样本。
但是实际使用我发现没有效果,请问你知道怎么用吗?

我在nlu.json中增加

"lookup_tables": [
      {
        "name": "date-time",
        "elements": [
          "周子","明天","后天","海天","每天"
        ]
      }]

nlu_model_config.yaml中增加pipeline
- name: "intent_entity_featurizer_regex"
训练时会在models文件夹中生成regex_featurizer.json文件。

看了rasa_nlu的源码中featurizers/regex_featurizer.py文件,
regex_string = '(?i)(\\b' + '\\b|\\b'.join(elements_sanitized) + '\\b)'
这里加了\b导致无法匹配中文(因为送到这里的文本没有分词)
然后我去掉了这里的\b,确实就能够被查找表的正则匹配了。

我理解的查找表应该是把自定义词“周子”当作和“明天”一样的'date-time'实体。
但是实际上输入“周子”时,它还是被识别成了'address'词。

请问是我理解不对,还是哪一步做错了吗?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions