当前位置: 代码迷 >> 综合 >> 医疗实体标准化之Paper:A Lightweight Neural Model for Biomedical Entity Linking笔记
  详细解决方案

医疗实体标准化之Paper:A Lightweight Neural Model for Biomedical Entity Linking笔记

热度:96   发布时间:2023-12-12 05:58:01.0

        刚刚踏足医疗方向,目前在研究医疗实体标化问题,相较于广义上的实体链接(entity linking),不存在实体链接一般会存在的一词多义(Entity Ambiguity)问题,确切来说,医疗标准化这块最主要的问题是多词同义(Mention Variations),即同一种病,同一种药等会有许多不同的表达方式,这就是我们要去处理的,让非结构化的数据输入进来,先找到mention,然后去KB里找到对应的entity作为输出,即标准化.举个例子,"感冒"进来,输出"上呼吸道感染".

        看了不少论文,目前在对其中一篇进行初探,有想法有疑问就写出来,当成翻译也行,大家一起研究.

         Title:<A Lightweight Neural Model for Biomedical Entity Linking>

        论文:https://arxiv.org/abs/2012.08844

        代码:https://github.com/tigerchen52/Biomedical-Entity-Linking

        论文思路分三步:

        一~预处理。对语料库中的所有mention和 KB 中的entity进行预处理,使它们具有统一的格式。

        二~候选实体生成。对于每个mention,从KB中生成一组候选entity。

        三~ranking模型。对于每个mention及其候选entity,使用排名模型对每对进行评分,输出topk

        一~预处理

        缩写扩充('DM'-'Diabetes Mellitus')

        数字替换('VI'-'6')

        KB增强(拿训练集扩充KB)

        二~候选生成

        为了计算mention M 和entity S 之间的分数,我们将它们中的每一个拆分为token, M = {m1, m2, ..., m_{m}|} 和 S = {s1, s2, ...,s_{s}|}。

        经过embedding后token维度是d*V,(embedding_dim*vocab_size*)

        考虑 M和S中不同token排序的可能性,利用了余弦相似度(cosine similarity),定义了一个Acos函数,公式如下:     

        ACos(m_{i},S)=max\{cos(m_{_{i}},s_{_{j}} )|s_{_{j}}\epsilon S\}

         这个公式作用是找到对应M中的token m_{i} 映射到S中的最相似的tokenS_{j} 并返回与该余弦相似度.

        为了防止余弦相似度倾向于长文本(余弦相似度似乎适用于短文本啊,怎么会倾向长文本?),以及度量对称(metric symmetric,这个我不懂),所以设计了一个相似度分数, 表达如下:

        sim(M,S)=\frac{1}{\left | M \right |+\left | S \right |}( \sum_{m_{i}\epsilon M}ACos(m_{i},S)+ \sum_{s_{j}\epsilon S}ACos(s_{j},M))

         构造出来的候选集 C_{M} ={ <E1, S1> , <E2,S2>,...,<Ek,Sk>} ,其中 Ei是mention的 id, Si是候选entity.这个集合包含每个mention 的topk个候选entity,如果存在分数等于 1的候选entity,别的就直接pass.

       

        三~ranking模型

        整个结构如图

         从下到上:

        word embedding:矩阵 d*V, V 是词表大小(vocab_size),d 是词向量维度(embedding_dim)

        char embedding:解决OOV问题,就是从字粒度出发,采用Bi-lstm的输出作为char-level的表征.然后与word embedding输出拼接作为整个entity的表征.

        alignment fearture:对齐层解决的其实就是顺序问题,这里利用了一个注意力矩阵(attention martrix),设计一个维度|M|*|S| 的权重矩阵 W ,w_{i,j}表示mention 的 token_{i} 与entity的token_{j}的相似度, w_{i,j}=\bar{m_{i}}^{T}\bar{s_{j}},在W 的每一行上用softmax 函数归一化,产生一个新的矩阵 W '

        定义mention的第 i 个 token向量\tilde{m_{i}} ,它是 S 中token的向量之和,权重为其与 \bar{m_{i}}的相似度:

        

        \tilde{m_{i}}主要使用 S 中与\bar{m_{i}}相似的向量相加来重构\bar{m_{i}},如果重建成功(即\bar{m_{i}}\tilde{m_{i}}相似),则 S 包含与\bar{m_{i}}相同的信息

        为了衡量这种相似性,使用以下两个比较函数:

        

        表示逐元素相乘

        sub 与欧氏距离相似,mul 与 余弦相似度相似

        最后,m_{_{i}}有了新的定义

                        

        类此,可以产生

            

        CNN层   :现在mention和entity有了新的表示,

        直接上一层cnn

        

        合并为一个输出: 

        输出层。使用两层全连接神经网络

        

        其中W2 和W1是学习的权重矩阵,而 b1 和 b2是偏差值。

        先写到这里,后面有新的理解和翻译再更新,2021年12月22日18:31:08

 

 

 

 

 

 

 

 

 

 

 

 

        

  相关解决方案