作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个很大的(~50k)术语列表,其中许多关键短语/术语都有相应的首字母缩略词/缩写词。我需要一种快速查找缩写或扩展缩写(即 MS -> Microsoft )的方法,然后将其替换为完整的扩展缩写 + 缩写(即 Microsoft -> Microsoft (MS) 或 MS -> Microsoft (MS) ) .
我对 spaCy 很陌生,所以我天真的方法是使用 spacy_lookup并使用缩写和扩展缩写作为关键字,然后使用某种 pipeline extension然后通过匹配并用完整的扩展缩写+缩写替换它们。
有没有更好的方法来标记和解析 spaCy 中的首字母缩略词/缩写词?
最佳答案
退房 scispacy在 GitHub 上,它实现了 this paper 中描述的首字母缩写词识别启发式方法,(另见 here)。如果首字母缩略词在文本中以类似的模式“引入”,则启发式方法有效
StackOverflow (SO) is a question and answer site for professional and enthusiast programmers. SO rocks!
import spacy
from scispacy.abbreviation import AbbreviationDetector
nlp = spacy.load("en_core_web_sm")
abbreviation_pipe = AbbreviationDetector(nlp)
nlp.add_pipe(abbreviation_pipe)
text = "StackOverflow (SO) is a question and answer site for professional and enthusiast programmers. SO rocks!"
def replace_acronyms(text):
doc = nlp(text)
altered_tok = [tok.text for tok in doc]
for abrv in doc._.abbreviations:
altered_tok[abrv.start] = str(abrv._.long_form)
return(" ".join(altered_tok))
replace_acronyms(text)
关于python-3.x - 如何识别缩写词/首字母缩略词并在 spaCy 中扩展它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52570805/
我有一个具有可变数量子元素的固定大小的 div。我不知道 children 的大小。目标是缩小它们以适合父级。 例子: .parent { width: 100px; height: 100p
我是一名优秀的程序员,十分优秀!