【生物医学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=opentargets 或https://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。

相关推荐
第九序言T3 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
Java后端的Ai之路4 小时前
CAS并发控制-从CPU指令到企业级乐观锁
vue.js·人工智能·python·cas·乐观锁
qq_426003964 小时前
UI自动化高频次登录login限流解决方案
python·ui·自动化
Sakura_j_h_4 小时前
EasyEDA PCB 快速设计Skills
c++·python·github
quantdash_cc5 小时前
如何验证历史行情的交易日期是否完整覆盖研究区间?
python·数据分析·pandas·量化交易·股票数据·quantdash
I Am a robert girl5 小时前
当智能体学会“串通”:从长程交互中读懂涌现式合谋
python·多智能体系统·多智能体协作·llm agent·涌现式合谋·对齐问题·激励机制设计
Zzj_tju5 小时前
准确率不变,概率质量也不变吗?
人工智能·深度学习·机器学习·语言模型
hhb_6186 小时前
大模型落地三重优化实战
人工智能·算法·机器学习
云和数据.ChenGuang6 小时前
光哥说Python RAG 系统需要哪些评估指标:从检索到生成的全链路评测指南
网络·人工智能·python·算法·langchain
专注仿真6 小时前
线性回归和逻辑回归算法详解
开发语言·人工智能·python·大模型训练·控制算法