在python中是否有任何字形特征库用于NER?

时间:2018-04-20 16:13:30

标签: python string nlp named-entity-recognition

作为python的初学者,我正在尝试构建自己的命名实体识别器,众所周知,字形特征在NER中尤为重要。是否有任何已知的库可以定义这些功能?例如,这些特征的一个版本表示x的大写字母和X的大写字母,d的数字和保留的标点符号,地图 DC10-30 XX-dd-dd IMF XXX

因此,我寻找一个可以通过应用这些众所周知的功能来改进我的识别器的库。如果没有这样的库,我怎样才能提取像

这样的单词的字形特征
wordshape("D-Day") = X-Xxx

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用正则表达式(正则表达式)解决此问题。正则表达式的Python标准库是re

以下功能可以达到你想要的效果

def wordshape(text):
    import re
    t1 = re.sub('[A-Z]', 'X',text)
    t2 = re.sub('[a-z]', 'x', t1)
    return re.sub('[0-9]', 'd', t2)

>>> wordshape("DC10-30")
'XXdd-dd'
>>> wordshape("D-Day")
'X-Xxx'
>>> wordshape('I.M.F')
'X.X.X'