
 

一些符号定义
知识图谱实体数量: 
     
      
       
       
         n 
        
       
      
        n 
       
      
    n
 知识图谱中关系类型数量: 
     
      
       
       
         m 
        
       
      
        m 
       
      
    m
 三元组矩阵: 
     
      
       
       
         M 
        
       
         ∈ 
        
       
         { 
        
       
         0 
        
       
         , 
        
       
         1 
        
        
        
          } 
         
         
         
           n 
          
         
           × 
          
         
           n 
          
         
           × 
          
         
           m 
          
         
        
       
      
        \textbf{M} \in \{0, 1\}^{n \times n \times m} 
       
      
    M∈{0,1}n×n×m, 
     
      
       
        
        
          M 
         
         
         
           i 
          
         
           j 
          
         
        
          k 
         
        
       
         = 
        
       
         1 
        
       
      
        M_{ij}^k = 1 
       
      
    Mijk=1则说明实体 
     
      
       
       
         i 
        
       
      
        i 
       
      
    i和实体 
     
      
       
       
         j 
        
       
      
        j 
       
      
    j之间具有关系 
     
      
       
       
         k 
        
       
      
        k 
       
      
    k。
 输入问题 
     
      
       
       
         q 
        
       
      
        q 
       
      
    q:输入的问题
 初始实体表示向量 
     
      
       
        
        
          e 
         
        
          0 
         
        
       
         ∈ 
        
       
         { 
        
       
         0 
        
       
         , 
        
       
         1 
        
        
        
          } 
         
        
          n 
         
        
       
      
        \textbf{e}^0 \in \{0,1\}^n 
       
      
    e0∈{0,1}n,如果输入问题q中存在实体i,则 
     
      
       
        
        
          e 
         
        
          i 
         
        
          0 
         
        
       
         = 
        
       
         1 
        
       
      
        e^0_i = 1 
       
      
    ei0=1
分步 图推理模型:Step-by-Step Graph Reasoning Model
第一步:关系评分计算(Relation Score Calculation):计算每一步推理的关系得分
 
 
 
     
      
       
       
         E 
        
       
         n 
        
       
         c 
        
       
         o 
        
       
         d 
        
       
         e 
        
       
         r 
        
       
      
        Encoder 
       
      
    Encoder:文本编码器,例如bert,利用它得到整段文本的表示 
     
      
       
       
         q 
        
       
      
        \textbf{q} 
       
      
    q和所有字符的表示  
     
      
       
        
        
          h 
         
        
          1 
         
        
       
         , 
        
       
         . 
        
       
         . 
        
       
         . 
        
       
         , 
        
        
        
          h 
         
         
         
           ∣ 
          
         
           q 
          
         
           ∣ 
          
         
        
       
      
        h_1, ..., h_{|q|} 
       
      
    h1,...,h∣q∣
  
     
      
       
        
        
          f 
         
        
          t 
         
        
       
      
        f^{t} 
       
      
    ft:推理第 
     
      
       
       
         t 
        
       
      
        t 
       
      
    t步的编码器(MLP+tanh映射)
  
     
      
       
        
        
          q 
         
        
          t 
         
        
       
      
        \textbf{q}^t 
       
      
    qt:推理第 
     
      
       
       
         t 
        
       
      
        t 
       
      
    t步的文本表示
  
     
      
       
        
        
          R 
         
        
          t 
         
        
       
      
        \textbf{R}^t 
       
      
    Rt:推理第 
     
      
       
       
         t 
        
       
      
        t 
       
      
    t步的关系评分
第二步:分步推理(Step-by-Step Reasoning):计算每个实体的评分
根据关系评分为实体之间的权重赋值
  
      
       
        
         
         
           W 
          
          
          
            i 
           
          
            j 
           
          
         
           t 
          
         
        
          = 
         
         
         
           { 
          
          
           
            
             
              
              
                R 
               
              
                k 
               
              
                t 
               
              
             
            
            
             
              
               
               
                 M 
                
                
                
                  i 
                 
                
                  j 
                 
                
               
                 k 
                
               
              
                = 
               
              
                1 
               
              
             
            
           
           
            
             
             
               0 
              
             
            
            
             
             
               Otherwise, 
              
             
            
           
          
         
        
       
         W_{ij}^t = \begin{cases} R_k^t & M_{ij}^k = 1 \\ 0 & \text{Otherwise,} \end{cases} 
        
       
     Wijt={Rkt0Mijk=1Otherwise,
根据每一步的实体间权重,从初始实体 e 0 \textbf{e}^0 e0开始,得到每一步推理的实体权重,最后通过注意力机制汇总所有的推理步,得到所有实体的评分 e ˉ \bar{\mathbf{e}} eˉ。
e t = e t − 1 W t β = Softmax ( MLP ( q ) ) , e ˉ = ∑ t = 1 T β t e t , \mathbf{e}^t = \mathbf{e}^{t-1} \mathbf{W}^t \\ \beta = \text{Softmax}(\text{MLP}(\mathbf{q})), \\ \bar{\mathbf{e}} = \sum_{t=1}^T \beta_t \mathbf{e}^t, et=et−1Wtβ=Softmax(MLP(q)),eˉ=t=1∑Tβtet,
第三步:训练
  
      
       
        
        
          L 
         
        
          = 
         
        
          ∥ 
         
         
         
           e 
          
         
           ˉ 
          
         
        
          − 
         
        
          a 
         
         
         
           ∥ 
          
         
           2 
          
         
        
          . 
         
        
       
         \mathcal{L} = \|\bar{\textbf{e}} - \textbf{a}\|^2. 
        
       
     L=∥eˉ−a∥2.
 其中 
     
      
       
       
         a 
        
       
      
        \textbf{a} 
       
      
    a为候选答案实体。
推理路径生成算法:Reasoning Path Generation Method
步骤1:从知识图谱实体集合中抽取评分( 
     
      
       
        
        
          e 
         
        
          ˉ 
         
        
       
      
        \bar{\mathbf{e}} 
       
      
    eˉ)前TopK大(之后有不同K取值的对比实验)的实体集合 
     
      
       
        
        
          E 
         
        
          k 
         
        
       
      
        \textbf{E}^k 
       
      
    Ek。
 步骤2:从问题q中的实体开始,向外拓展抽取一跳/两跳路径,需要满足 
     
      
       
        
        
          W 
         
         
         
           i 
          
         
           j 
          
         
        
          1 
         
        
       
         , 
        
        
        
          W 
         
         
         
           i 
          
         
           j 
          
         
        
          1 
         
        
       
      
        W_{ij}^1,W_{ij}^1 
       
      
    Wij1,Wij1均大于0,并且推理结束实体在 
     
      
       
        
        
          E 
         
        
          k 
         
        
       
      
        \textbf{E}^k 
       
      
    Ek集合中。
  
      
       
        
         
         
           p 
          
          
          
            i 
           
          
            j 
           
          
         
           1 
          
         
        
          = 
         
        
          ⟨ 
         
         
         
           E 
          
         
           i 
          
         
        
          , 
         
        
          R 
         
        
          e 
         
         
         
           l 
          
          
          
            i 
           
          
            j 
           
          
         
        
          , 
         
         
         
           E 
          
         
           j 
          
         
        
          , 
         
        
          [ 
         
         
         
           W 
          
          
          
            i 
           
          
            j 
           
          
         
           1 
          
         
        
          ] 
         
        
          ⟩ 
         
         
         
         
           p 
          
          
          
            i 
           
          
            k 
           
          
         
           2 
          
         
        
          = 
         
        
          ⟨ 
         
         
         
           E 
          
         
           i 
          
         
        
          , 
         
        
          R 
         
        
          e 
         
         
         
           l 
          
          
          
            i 
           
          
            j 
           
          
         
        
          , 
         
         
         
           E 
          
         
           j 
          
         
        
          , 
         
        
          R 
         
        
          e 
         
         
         
           l 
          
          
          
            j 
           
          
            k 
           
          
         
        
          , 
         
         
         
           E 
          
         
           k 
          
         
        
          , 
         
        
          [ 
         
         
         
           W 
          
          
          
            i 
           
          
            j 
           
          
         
           1 
          
         
        
          , 
         
         
         
           W 
          
          
          
            i 
           
          
            j 
           
          
         
           2 
          
         
        
          ] 
         
        
          ⟩ 
         
        
       
         p_{ij}^1 = \langle E_i, Rel_{ij}, E_j , [W_{ij}^1] \rangle \\ p_{ik}^2 = \langle E_i, Rel_{ij}, E_j, Rel_{jk}, E_k , [W_{ij}^1,W_{ij}^2] \rangle 
        
       
     pij1=⟨Ei,Relij,Ej,[Wij1]⟩pik2=⟨Ei,Relij,Ej,Reljk,Ek,[Wij1,Wij2]⟩
 步骤3:计算路径的平均W分数作为路径分数,对每个结束实体,挑选路径分数前N大(之后有不同N取值的对比实验)的路径作为大模型的提示模版。
联合推理:Joint Reasoning
将推理路径生成算法得到的推理路径转为文本模版,加入大模型提示中,回答问题。
 
 
实验
数据集
WebQSP:WebQSP是一个知识密集型的多跳问题回答基准测试。它包含4037个问题,都是基于FreeBase的1跳或2跳问题。基于之前的工作,在问题实体的2跳邻域内检索知识三联体,并生成一个包含1886684个实体、1144个关系和5780246个知识三联体的知识子图。
CompWebQ:CompWebQ是一个多跳的问题回答基准。它包含34,672个问题,有许多跳跃和约束,这使得llm的处理具有挑战性。他们利用[Shi et al.,2021]中检索到的知识子图,并利用原始数据分割进行评估。
Simple Questions:Simple Questions是一个单跳的问题回答基准。问题是基于来自FreeBase的信息而产生的,最终,在本研究中产生了108,442个严重依赖于事实知识的问题。他们随机选择1000个问题,检索问题实体的1跳邻域进行评估。
WebQuestions:WebQuestions是一个具有挑战性的自主领域的问题回答基准。它包含5,810个问题,以自由库作为知识库。对于每个问题,我们检索问题实体的2跳邻域,并利用原始数据分割进行评估。
实验结果

研究不同基座模型对实验效果的影响

对比不同检索器

研究超参数K和超参数N对实验结果的影响

示例

优势:计算更快,节省大模型资源

创新点
提出了一套可训练子图抽取算法,能够结合根据问题得到需要查询关系类型,进而生成许多推理路径。
可能的改进点

-  得到问题 第t步 表示的时候,我认为也需要考虑前t-1步推理路径加入到运算中。 
-  该方法适用场景受限,由于第一阶段只是对关系类型进行打分,然后将关系分数分配给实体。如果图谱中关系类型很少,三元组数目很多,那么在第二阶段挑选TopK实体的时候,可能会面临很多实体同分的状况,无法挑选合适的实体。除此以外,从问题中可能抽取多个不同的实体,如果分配相同的下一跳关系权重的话,也是不合适的。 



















