Re30:读论文 LegalGNN: Legal Information Enhanced Graph Neural Network for Recommendation

这篇博客介绍了LegalGNN,一种针对法律推荐系统的GNN模型,它结合了用户搜索历史、法律知识图谱和HLIN结构,增强了对用户兴趣的理解和文书推荐的准确性。文中对比了传统方法,强调了法律信息结构和内容融合的重要性,并展示了模型的构建细节和实验结果。

诸神缄默不语-个人优快云博文目录

论文标题:LegalGNN: Legal Information Enhanced Graph Neural Network for Recommendation
论文ACM官方下载地址:https://dl.acm.org/doi/abs/10.1145/3469887
官方GitHub项目:yangjun12/LegalGNN: Code for Paper: LegalGNN: Legal Information Enhanced Graph Neural Network for Recommendation

本文是2022年ACM Transactions on Information Systems论文,作者来自清华和IBM。我很少读这种长篇的论文,分析很完整、到位,包括了对新方法和以前论文提出方法的详细对比和分析。
提出了第一个用于法律推荐系统的GNN模型。

实现针对用户兴趣(根据搜索历史得到)的文书推荐(Legal-Rec任务,感觉比标准的案例检索任务要更推荐一些)。

  1. 本文提出HLIN (Heterogeneous Legal Information Network) 来统一法律内容(案例文本和法律概念定义文本)和结构信息(法条、案由 (cause of action) 之间的关系,案例文本中含有法律概念(犯罪原因、关键要素等),法律概念之间有层级化、结构化的关系。知识图谱)。
  2. 为了建模用户兴趣,将用户在法律推荐系统中提出的query结合进HLIN,链接到被检索的文档和提出问题的用户上,这对冷启动用户/item也很有用。
  3. relational attention mechanism的GNN模型将HLIN中的高阶信息应用于推荐任务中。

1. Background & Motivation

Legal-Rec和传统推荐系统的区别:

  1. 法律信息的结构联系和文本内容都很重要,因此特征融合很重要。
  2. 用户偏向于新案例(最新司法解释和司法实践),因此新item问题严重。
  3. 用户关注少数主题、兴趣稳定,所以准确建模用户兴趣很重要。

本文认为:

  1. 传统在图中传播节点特征的方法对结构联系的应用不够充分。
  2. 传统解决new-item的方法是基于内容,没有考虑与之前有充分交互信息的item的关系。本文用法律概念作为这个桥梁。

以前的Legal-Rec工作主要考虑多主题内容和冗余关系,因此使用基于主题模型的方法(如LDA)或基于图的方法。但这忽略了法律信息的联系。基于图的方法还丢失了法律文书的内容信息。
以前有用法律知识图谱做IR或QA的工作。

传统仅使用内容的推荐系统缺失结构信息,使用知识图谱的推荐系统(KG+user-item二部图)缺乏对知识图谱节点内容的应用(利用节点内容特征不够充分)。

2. LegalGNN

在这里插入图片描述

2.1 HLIN

在这里插入图片描述

节点:users, cases, queries, legal concepts, and connections among them
法律概念包括:cause, law, clause, and factor
特征:文本
边(建模用户兴趣):user-query and item-query relationships

User-item Interaction History
Search History

legal knowledge graph
Legal Domain Knowledge(作为side information):文本法律概念和其间的结构化联系。

结构化联系包括:

  • item-entity alignments(案例与法律概念相关)
  • 法律概念之间的联系(层级化定义)

有向图,但是每种关系同时考虑其反向关系

user behavior graph
interaction:user & item
submit:user & query
retrieval:query & item

2.2 LegalGNN

在这里插入图片描述

在这里插入图片描述

BERT+SDAE+TransR+GNN

Unified Content and Structure Representation Module
图基本上就是上一节的构图内容

BERT(OpenCLaP的预训练模型,最后一层嵌入token的平均池化)
降维:autoencoder (SDAE)
 Denoising Autoencoder (DAE)
 两层SDAE:
在这里插入图片描述
在这里插入图片描述
以上两个模块与下游任务解耦

Unified Node Representation:TransR+与固定的文本内容向量(经线性变换后)concat
在这里插入图片描述
在这里插入图片描述
两种嵌入都随机初始化后梯度下降(我没太搞懂为什么,难道不是前面得到的吗?而且我确实觉得已经有GNN了还要显式建模一下结构,很奇怪)

在这里插入图片描述
通过随机corrupt构建负三元组

Multi-relational GNN Module
本文参考LightGCN构建了简化版的GNN模型。

在这里插入图片描述

GNN:pool + aggregate(直接对每种关系的邻居做一个整体的池化,然后再用attention进行聚合。不使用transformation矩阵:避免过拟合问题)
在这里插入图片描述

propagation:

  1. 在这里插入图片描述
  2. Relational Attention
    在这里插入图片描述
    注意力计算方式:
    在这里插入图片描述
    在这里插入图片描述
  3. Prediction:内积
    在这里插入图片描述
    pair-wise ranking loss:
    在这里插入图片描述
    (对每一个训练集样本,随机选择一个负样本)

模型训练

  1. 用SDAE降维:在这里插入图片描述
  2. 联合学习推荐任务和表示任务:在这里插入图片描述
  3. 按推荐任务等比例抽取图中的mini-batch进行训练;类似GraphSAGE的抽样策略

Leakage Path Bias during Graph Modeling
break-path strategy

3. 实验

3.1 数据集

大型法律推荐数据集。由于隐私问题不能完全公开。

划分数据集:leave-one-out strategy(用每个用户最新交互作为测试集,倒数第二次交互作为验证集,其他作为训练集)
不考虑重复推荐问题
negative sampling method:评估排序任务中的推荐表现(1-99)

在这里插入图片描述

在这里插入图片描述
(注意表格中只有一个方向的关系,事实上反向边也考虑)

3.2 baseline

  • 基于因式分解:BPR
  • 基于GNN
    • KGAT
    • LightGCN
  • 基于HIN
    • CFKG
    • GATNE-T
    • GATNE-I
  • 基于内容
    • ACCM
    • NFM
    • NRMS
    • NRHUB

在这里插入图片描述

3.3 实验设置

PyTorch
重复5次实验(只有随机种子改变)
其他略

3.4 主实验结果

评估指标:
Hit Ratio (HR)
Normalized Discounted Cumulative Gain (NDCG)

在这里插入图片描述

3.5 模型分析

3.5.1 Ablation Study

在这里插入图片描述
C:文本内容特征
S:结构特征
Debias:训练过程中的debias strategy
Q:query节点及其相关边

在这里插入图片描述

3.5.2 冷启动问题

在这里插入图片描述

3.5.3 超参设置

在这里插入图片描述

3.5.4 案例分析

在这里插入图片描述

### 三级标题:Temporal Graph Neural Network(TGNN)的原理与架构 Temporal Graph Neural Network(TGNN)是一种专门用于处理具有时间动态特性的图结构数据的深度学习模型。与传统图神经网络(GNN)不同,TGNN 能够同时建模图结构的空间依赖性和节点特征的时间演化。其核心架构通常包括两个关键部分:**图结构建模模块**和**时间序列建模模块**。图结构建模模块用于捕捉节点之间的空间关系,而时间序列建模模块则用于处理节点特征随时间的变化。某些 TGNN 模型采用 GRU 或 LSTM 来建模时间动态性,同时结合图卷积网络(GCN)来提取空间特征[^1]。 在图结构建模方面,一些 TGNN 模型引入了自适应图学习机制,通过端到端的方式自动构建和优化图邻接矩阵,从而适应数据的动态变化。例如,ASTGNN(Adaptive Spatial-Temporal Graph Neural Network)采用图自适应学习模块,能够在训练过程中动态调整图结构,以更精确地建模节点间的空间依赖关系[^2]。此外,部分模型还引入了谱域图卷积方法,通过图傅里叶变换将图信号转换到频域进行处理,从而增强模型的表达能力[^3]。 ### 三级标题:Temporal Graph Neural Network 的应用场景 TGNN 在多个领域具有广泛的应用,尤其适用于具有时空特性的图结构数据任务。在交通预测中,TGNN 被用于建模道路网络中的节点(如交叉口或传感器)及其随时间变化的流量信息。例如,Adaptive Spatio-temporal Graph Neural Network 被应用于交通流量预测,通过自适应图学习获得最优邻接矩阵,并结合两阶段训练策略提高预测精度[^1]。此外,TGNN 还被用于能源管理、健康监测和社交网络分析等领域,用于建模用户行为、设备状态或社交关系的动态演化[^3]。 在多变量时间序列预测中,TGNN 通过将变量之间的依赖关系建模为图结构,并结合时间序列建模技术,实现对复杂系统的长期预测。例如,STemGNN(Spectral Temporal Graph Neural Network)利用图谱分析方法建模变量之间的非线性关系,并结合时间卷积模块进行预测,显著提升了预测的准确性和鲁棒性[^3]。 ### 三级标题:Temporal Graph Neural Network 的实现方法 在实现 TGNN 模型时,通常需要结合图神经网络和循环神经网络(RNN)或变换器(Transformer)等时间建模组件。例如,某些模型采用两阶段训练策略:第一阶段用于学习图结构,第二阶段用于优化时间动态建模部分[^1]。此外,一些模型引入图注意力机制,使模型能够动态调整不同邻居节点的权重,从而提升模型的泛化能力[^2]。 在图结构学习方面,部分模型通过引入图正则化项来优化图邻接矩阵。例如,Pre-training Enhanced Spatial-temporal Graph Neural Network 在训练过程中计算一个非归一化概率 Θij,并将其与初始邻接矩阵 Aa 之间的交叉熵作为图结构的正则化项,从而增强图结构的可解释性和鲁棒性[^4]。 以下是一个简化版的 TGNN 模型实现示例: ```python import torch import torch.nn as nn import torch.nn.functional as F class TemporalGNN(nn.Module): def __init__(self, num_nodes, input_dim, hidden_dim, output_dim): super(TemporalGNN, self).__init__() self.gcn = nn.Linear(num_nodes, num_nodes) self.rnn = nn.GRU(input_dim, hidden_dim) self.fc = nn.Linear(hidden_dim, output_dim) def forward(self, x, adj_matrix): # x: [T, N, D] (T: time steps, N: nodes, D: features) T, N, D = x.shape outputs = [] for t in range(T): h = torch.matmul(adj_matrix, x[t]) h = F.relu(h) _, h = self.rnn(h.unsqueeze(0)) out = self.fc(h.squeeze()) outputs.append(out) return torch.stack(outputs) # 示例使用 model = TemporalGNN(num_nodes=100, input_dim=10, hidden_dim=32, output_dim=1) ``` ### 三级标题:相关扩展与优化策略 为了提升 TGNN 的性能,研究者提出了多种优化策略。例如,某些模型引入预训练机制,通过在大规模图数据上进行自监督学习,提升模型在下游任务中的泛化能力[^4]。此外,一些模型采用谱域图卷积技术,结合图傅里叶变换来增强图表示能力[^3]。还有部分模型采用多尺度时间建模策略,结合不同时间粒度的特征进行预测,从而提升模型对长期依赖的建模能力[^1]。 在图结构建模方面,部分研究者尝试引入图注意力机制,使模型能够根据输入数据动态调整图结构,从而适应不同的任务需求[^2]。这些方法不仅提升了模型的表达能力,还增强了模型的可解释性和鲁棒性。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸神缄默不语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值