小编eng*_*019的帖子

用 SpaCy 中的标签替换实体

无论如何,SpaCy 是否可以用其标签替换 SpaCy NER 检测到的实体?例如: 我在玩我的 Apple Macbook 时正在吃一个苹果。

我已经用 SpaCy 训练了 NER 模型来检测“水果”实体,并且该模型成功地将第一个“苹果”检测为“水果”,而不是第二个“苹果”。

我想通过用标签替换每个实体来对我的数据进行后处理,所以我想用“水果”替换第一个“苹果”。句子将是“我在玩我的 Apple Macbook 时正在吃水果。

如果我只是使用正则表达式,它也会用“FRUITS”替换第二个“Apple”,这是不正确的。有什么聪明的方法可以做到这一点吗?

谢谢!

nlp named-entity-recognition spacy ner

10
推荐指数
2
解决办法
2925
查看次数

将NER SpaCy格式转换为IOB格式

我有已经以 SpaCy 格式标记的数据。例如:

("Who is Shaka Khan?", {"entities": [(7, 17, "PERSON")]}),
("I like London and Berlin.", {"entities": [(7, 13, "LOC"), (18, 24, "LOC")]})
Run Code Online (Sandbox Code Playgroud)

但我想尝试使用任何其他 NER 模型来训练它,例如 BERT-NER,它需要 IOB 标记。是否有从 SpaCy 数据格式到 IOB 的转换代码?

谢谢!

nlp named-entity-recognition spacy ner

4
推荐指数
2
解决办法
3524
查看次数

从 YAML 文件传递​​ Python 函数

我有一个 YAML 脚本,用户可以在其中定义一些参数。他们还可以在 YAML 文件中声明他们想要应用的自定义函数。例如:

processes:
    args1: 10
    args2: 5
    funct: np.sum
Run Code Online (Sandbox Code Playgroud)

该 YAML 将被传递给如下函数:

def custom_func(args1, args2, funct):
    return funct(args1, args2)
Run Code Online (Sandbox Code Playgroud)

对于上面的 YAML 示例,我希望custom_func()执行np.sum(10,5). 如何使 YAML 文件中的数据解析为 Callable?eval()可能可以完成这项工作,但可能存在安全问题。有没有什么正确的方法呢?谢谢!

python yaml

3
推荐指数
1
解决办法
8689
查看次数

在 python 中同时使用显式参数和 **kwargs

我有这段代码:

kwargs_input = {"name": "lala", "age": 25, "postcode": 17867}

def print_kwargs(**kwargs):
    for k,v in kwargs.items():
        print(k,v)

def func_print(name="lolo", age=56, **kwargs):
    print_kwargs(**kwargs)

print(func_print(**kwargs_input))
Run Code Online (Sandbox Code Playgroud)

它打印:

postcode 17867
None
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

  1. 为什么nameage不打印?我期望使用传递的参数来覆盖名称( lolo)和年龄( )的默认值56**kwargs_input ) 的默认值。那可能吗?
  2. 从哪里来None

python

3
推荐指数
1
解决办法
650
查看次数

正则表达式:用“/”分割字符

我有这些字符串,例如: ['2300LO/LCE','2302KO/KCE']

我想要这样的输出: ['2300LO','2300LCE','2302KO','2302KCE']

我如何在 Python 中使用 Regex 来做到这一点?

谢谢!

python regex

2
推荐指数
1
解决办法
46
查看次数

标签 统计

python ×3

named-entity-recognition ×2

ner ×2

nlp ×2

spacy ×2

regex ×1

yaml ×1