【生物医学NLP信息抽取:药物识别、基因识别与化学物质实体识别教程与应用】

github地址:https://github.com/xy200303/bioner

基于Docker的一键化部署

  1. 创建容器网络。这是为了将solr和主体项目放在同一个局域网环境下,使得主体项目可以调用solr进行数据查询。
bash 复制代码
docker network create bioner-network
  1. 下载并运行主体项目bioner
bash 复制代码
docker run --name bioner --network bioner-network --gpus all -it -p 127.0.0.1:5000:5000 -e SOLR_URL="http://bioner-solr:8983/solr/" xy200303/bioner:latest
  1. 下载并启动运行solr服务器
bash 复制代码
docker run --name bioner-solr --network bioner-network -it -p 8983:8983 xy200303/solr-bioner:latest
  1. 进入solr服务器,初始化数据
bash 复制代码
docker exec -it bioner-solr bash
cd /app
bash init.sh

网页界面

访问地址: https://librairy.github.io/bio-ner/.

网页界面允许轻松使用该系统,只需粘贴要处理的文本并点击分析按钮。这些数据将通过AJAX调用发送到系统,系统将返回在以下视图中标注和归一化的数据:

结果标注

标注结果将以彩色框表示,其中每个框代表一个实体类别。

结果归一化

归一化结果将以表格形式呈现每个实体类别。将检索出找到的术语以及存储在Solr数据库中的ID。如果在处理的文本中出现与https://www.covid19dataportal.org/biochemistry?db=opentargetshttps://proconsortium.org/cgi-bin/textsearch_pro?search=search\&field0=ALLFLDS\&query0=ncbitaxon%3A2697049 相关的COVID术语,将出现一个额外的表格。

JSON格式结果

为了便于后续使用检索到的信息,还提供了一个Json文本框。

模型

针对每个实体类别(疾病、化学品、遗传物质)提出了一个模型。因此,最终系统由三个模型组成,每个模型负责对其对应的实体类别进行标注。系统会自动检查模型是否已存储在其对应的https://github.com/librairy/bio-ner/tree/master/models 中。如果缺少模型,系统会自动从其对应的Huggingface仓库下载缓存的版本,我们提出的模型已上传至该仓库。以下是所提出模型的仓库地址:

更多详细信息请参见: https://github.com/alvaroalon2/bio-nlp/tree/master/models。如果需要,这些模型可用于其他系统。

微调

微调过程是在Google Colab上使用TPU完成的。为此,我们提供了https://github.com/librairy/bio-ner/blob/master/fine-tuning/Fine_tuning.ipynb Jupyter笔记本,它使用了 https://github.com/librairy/bio-ner/blob/master/fine-tuning/ 中的脚本,这些脚本部分改编自 https://github.com/dmis-lab/biobert-pytorch 中最初提出的脚本,以便允许TPU执行和使用更新版本的huggingface-transformers。

嵌入可视化

关于可视化的详细信息以及一个示例,请参见 https://github.com/librairy/bio-ner/tree/master/Embeddings。

相关推荐
泡海椒1 小时前
内置SPI函数库详解:JQuick-Java Builtin工具类实战用法
java·开发语言·python
hqyjzsb1 小时前
零 AI 项目经验,学 Python 转型 AI 的正确顺序是什么?
开发语言·人工智能·python·算法·职场和发展·数据挖掘·数据分析
2601_962294052 小时前
Python机器学习入门系列-第3篇:线性回归-从零理解机器学习预测
机器学习·线性回归·模型·特征·预测
sanjiaomao3332 小时前
从论文公式到Python实现:用单元测试校验滑动平均算法
python·算法·单元测试
VL——MOESR2 小时前
【具身智能】π0论文阅读随笔
论文阅读·机器学习·vla·pi0
leoZ2312 小时前
第 1 篇:为什么不该再让 AI 画页面
人工智能·神经网络·机器学习·自然语言处理·cnn·word2vec·mllib
linweidong4 小时前
中科闻歌Java面试题及参考答案
java·python·大模型·提示词·ai agent·mcp·rag原理
小玮看世界4 小时前
[Python]OD算法在OD实际运用转化参考清单
开发语言·python·算法
萧鼎4 小时前
2026实战:用 tomlkit 优雅读写 TOML 配置,告别手写解析器
python·开源·教程·python库
小刘在重生~5 小时前
Java 常用类|包装类 装箱拆箱、Integer 缓存面试题
java·python·缓存