首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将专有名词映射到实体类型的序列转换

将专有名词映射到实体类型的序列转换
EN

Stack Overflow用户
提问于 2019-08-27 09:47:13
回答 1查看 57关注 0票数 1

我正在尝试用生物科学文本进行序列到序列的翻译,里面有很多专有名词,变成了一种结构化的生物学语言。我可以很容易地用它们的实体类型来标记术语(蛋白质、化合物等)。

我想知道是否有一种方法可以用它们的实体类型替换名词(以一种方式让我在翻译后匹配并添加它们),或者以一种可以增强翻译过程的方式对它们进行注释。

例如,将“辛伐他汀诱导的细胞凋亡伴随着小窝蛋白-1表达的特异性诱导”转换为“辛伐他汀增加小窝蛋白-1的rna表达”-辛伐他汀==化合物,小窝蛋白-1 == RNA。

我的期望是,如果我可以预处理输入的句子,我将需要更少的训练数据,但前提是我可以转换“诱导凋亡伴随着特定的表达诱导”,这样我就可以匹配输出中的原始实体(每种类型的一个实体很容易,但如果我有多个化合物或RNA会发生什么?)。

EN

回答 1

Stack Overflow用户

发布于 2019-09-03 22:18:09

你的想法似乎是合理的。他们使用placeholders for emoticons成功地将类似的方法用于嘈杂文本的翻译。

有一个名为scispacy的项目,它包含用于处理生物医学、科学或临床文本的spaCy模型。标准的命名实体识别将找不到任何东西。

它应该能够检测到生物医学实体。您可以通过以下方式安装它:

代码语言:javascript
运行
复制
pip install spacy scispacy https://s3-us-west-2.amazonaws.com/ai2-s2-scispacy/releases/v0.2.3/en_core_sci_sm-0.2.3.tar.gz
代码语言:javascript
运行
复制
In [1]: import scispacy 
   ...: import spacy 
   ...:  
   ...: nlp = spacy.load("en_core_sci_sm")

In [2]: doc = nlp("Simvastatin-induced apoptosis is accompanied by specific induction of caveolin-1 expression.")                                                                      

In [3]: doc.ents                                                                                                                                                                       
Out[3]: (Simvastatin-induced apoptosis, induction, caveolin-1, expression)

如果你使用其他可用的模型,输出可能会更好,也许它们会得到更好的结果。在此基础上,您可以尝试根据检测到的实体提出一些建议。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57666760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档