Content to Node: Self-Translation Network Embedding

STNE是一种自翻译网络嵌入模型,采用seq2seq框架将节点属性“翻译”为结构信息,实现节点低维表示的学习。它能从文本序列中自动学习生成函数,将内容信息和结构信息无缝融合。
 
STNE:自翻译网络嵌入
该工作认为在节点属性与结构信息再本质上是有一定联系的,提出 STNE 模型,利用 seq2seq 模型进行特征提取,将利用节点信息及网络结构识别节点的过程比喻为翻译的过程

1. 简介

目的:学习网络中节点的低维表示
将利用节点信息及网络结构识别节点的过程比喻为翻译的过程
 
论文引用网络中,每个节点代表一篇论文,每条边代表引用关系。每个节点自身属性包括文章的摘要,关键词,研究领域等等。该论文的假设依据是,论文所形成的引用网络与论文自身的属性之间有较强关系
 
现有方案
1. 将结构信息和属性信息分别进行embedding之后,组合
2. 考虑短距离/固定邻域范围保留结构信息(第一/二邻近)
(复杂问题中很难确定邻域范围)
 

2. 创新点(贡献):

提出基于seq2seq 的模型框架(STNE)
利用网络上随机遍历生成的序列,将节点内容信息翻译成结构信息,从而结合两种信息
 
  • 将网络嵌入转化为 seq2seq 任务,从局部建模到序列的全局结构建模,捕获更多语义信息
  • 设计了一个异构的seq2seq 模型,嵌入原始输入文本,以端到端的方式学习从节点属性序列到节点指示序列的映射
对比
  • 与传统方法相比, STNE 直接节点序列对建模,从文本序列中自动学习生成函数,将 seq2seq 网络模型与其他文本嵌入模型相结合,通过学习内容序列到节点序列的映射,将内容信息和结构信息无缝融合到隐藏层的潜在向量中,高效表示节点
  • 根据与节点的不同交互提出上下文感知嵌入
  • 相对于 CANE: 从相邻文本节点感知嵌入
  • STNE:针对不同序列学习动态的节点嵌入(需要更长范围,更灵活的上下文)

3. 模型框架

STNE 总体框架

 

 
图一总体框架:
1. 给定内容丰富的网络,通过随机游走提取节点序列,并将节点序列分为两个部分
  • 节点属性序列
  • 节点指示序列(由节点指示向量 one-hot 表示)
2. 通过这两个序列学习特定的 seq2seq 模型,该模型可以用于将节点属性“翻译”为节点指示向量
3. 步骤二的目的是得到中间层的潜在转换( 是可用于复杂网络分析 )

4. 方法过程

 
由图2 可看出,该过程为:
  • 节点属性---->低维表示( Encoder )
  • 低维表示---->节点序列( Decoder )
 
并行序列 S 包含:
节点身份序列 Si 和 相关内容序列 Sc
(使用并行序列将网络嵌入转化为机器翻译问题,从内容到节点的异构自翻译过程)
 
映射函数 Sc->Si

 

 更详细的总结

转载于:https://www.cnblogs.com/chaoran/p/9872918.html

AANE(Accelerated Attributed Network Embedding)是一种用于属性网络嵌入的算法,旨在通过同时考虑网络结构和节点属性信息来生成低维的节点表示。该方法在处理具有丰富属性信息的复杂网络时表现出较高的效率和效果。 ### 原理 AANE 的核心思想是通过加速机制提升属性网络嵌入的效果,并结合了网络拓扑结构与节点属性特征。其原理主要包括以下几个方面: 1. **模型结构**:AANE 采用了一个基于矩阵分解的方法,将网络邻接矩阵和节点属性矩阵联合建模。它通过构建一个统一的目标函数来优化节点表示,使得最终学习到的向量能够同时保留网络的结构特性和属性特性。 2. **损失函数**:为了融合网络结构和节点属性,AANE 定义了一个综合的损失函数,包括重构误差项和正则化项。其中,重构误差项用于衡量节点之间的相似性,而正则化项则保证嵌入向量的平滑性和泛化能力。 3. **优化方法**:AANE 引入了一种高效的优化策略,利用随机梯度下降(SGD)或交替最小二乘法(ALS)等方法对目标函数进行求解。这种方法显著提升了计算效率,使其适用于大规模网络数据[^1]。 ### 应用 AANE 在多个领域中展现出广泛的应用潜力,特别是在需要处理具有属性信息的复杂网络问题时。以下是几个典型应用场景: 1. **链路预测**:在社交网络分析中,AANE 可以用于预测潜在的链接关系,帮助理解用户之间的交互模式。 2. **节点分类**:通过对节点进行嵌入表示,AANE 能够辅助实现更准确的节点分类任务,例如在引文网络中识别论文的主题类别[^2]。 3. **异常检测**:一种变体 AANE(Anomaly Aware Network Embedding)被专门设计用于检测网络中的异常链接。它通过引入新的损失函数,明确区分正常链接和异常链接,从而提高异常检测的准确性[^4]。 4. **生物信息学**:在 circRNA-疾病关联预测中,AANE 被用来提取 circRNA 和疾病的低维特征,并结合自编码器(Autoencoder)进一步提取深度特征,最终使用 XGBoost 分类器进行预测[^3]。 ### 示例代码 以下是一个简化的 Python 示例,展示如何使用 AANE 进行属性网络嵌入。注意,这只是一个概念性示例,并未包含完整的实现细节。 ```python import numpy as np class AANE: def __init__(self, num_nodes, num_attributes, embedding_dim): self.num_nodes = num_nodes self.num_attributes = num_attributes self.embedding_dim = embedding_dim self.node_embeddings = np.random.rand(num_nodes, embedding_dim) self.attribute_embeddings = np.random.rand(num_attributes, embedding_dim) def train(self, adjacency_matrix, attribute_matrix, epochs=100, learning_rate=0.01): for epoch in range(epochs): # 简单的梯度更新逻辑 pass # 初始化模型参数 num_nodes = 100 num_attributes = 50 embedding_dim = 10 # 创建模拟数据 adjacency_matrix = np.random.rand(num_nodes, num_nodes) attribute_matrix = np.random.rand(num_nodes, num_attributes) # 实例化并训练模型 model = AANE(num_nodes, num_attributes, embedding_dim) model.train(adjacency_matrix, attribute_matrix) ``` ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值