当前位置: 首页 > news >正文

网站开发制作报价门户网站建设一般多少钱

网站开发制作报价,门户网站建设一般多少钱,首页关键词排名代发,顺义网站开发一、图神经网络的基础 图的基本概念 图是数学中的一个基本概念#xff0c;用于表示事物间复杂的关系。在图论中#xff0c;图通常被定义为一组节点#xff08;或称为顶点#xff09;以及连接这些节点的边。每个边可以有方向#xff0c;称为有向边#xff0c;或者没有方向…一、图神经网络的基础 图的基本概念 图是数学中的一个基本概念用于表示事物间复杂的关系。在图论中图通常被定义为一组节点或称为顶点以及连接这些节点的边。每个边可以有方向称为有向边或者没有方向称为无向边。在不同的应用场景中节点可以代表不同的实体如人、地点、物品等而边则代表这些实体间的关系或者连接如友谊、路线、交互等。 神经网络概述 神经网络是一种模仿生物神经网络例如大脑工作方式的算法是人工智能和机器学习领域的核心。最简单的神经网络由输入层、若干隐藏层和输出层组成其中每层包含多个神经元。这些神经元通过带权重的连接相互作用。输入数据在网络中传播并在每个神经元处进行加权求和和激活函数处理最终产生输出。神经网络能够通过学习数据中的模式来执行各种复杂任务如分类、预测等。 GNN的起源与发展 图神经网络GNN起源于传统神经网络是一种专门用于处理图结构数据的神经网络。早期的研究主要集中在如何将神经网络模型应用于图数据上以及如何在图结构中有效传播信息。随着深度学习的兴起GNN得到了快速发展。 GNN的核心思想是在图的节点间传播信息从而学习节点的表示。这种方法使GNN能够捕捉节点之间的复杂关系和依赖性。早期的GNN模型包括Spectral CNN、Graph Convolutional Network (GCN) 等。这些模型在不同的图结构数据上表现出色比如社交网络、化学分子结构等。 近年来GNN已经发展出多种变体如Graph Attention Networks (GAT)、GraphSAGE等它们在效率、扩展性和表达能力上有所改进。此外GNN在多个领域内的应用也日益增多例如在推荐系统、交通网络、药物发现等领域展现出巨大的潜力。 GNN的发展不仅推动了图数据处理技术的进步也为深度学习领域带来了新的研究方向和挑战。 二、GNN的工作原理 基础知识 在图深度学习中理解节点嵌入的概念是至关重要的。在图论中节点嵌入指的是将图中的每个节点映射到一个低维空间d维嵌入空间这一过程旨在使得嵌入空间中的相似节点在网络中彼此靠近。这种映射使得我们能够在图数据中捕获复杂的关系和特征。 考虑图中的两个节点 u 和 v。我们可以使用特征向量 x u \mathbf{x}_u xu​和 x v \mathbf{x}_v xv​ 来表示这些节点的特征。目标是通过一个编码器函数例如 E n c ( ⋅ ) Enc(\cdot) Enc(⋅)将这些特征向量转换成低维空间中的嵌入向量 z u \mathbf{z}_u zu​ 和 z v \mathbf{z}_v zv​。 例如编码器函数可以定义为 E n c ( u ) f ( W ⋅ x u b ) Enc(u) f(\mathbf{W} \cdot \mathbf{x}_u \mathbf{b}) Enc(u)f(W⋅xu​b) 其中 W \mathbf{W} W是权重矩阵 b \mathbf{b} b 是偏置向量 f f f是激活函数例如ReLU。 在图深度学习中度量嵌入空间中两个节点相似性的一种常用方法是计算它们嵌入向量之间的距离。相似性函数可以是欧几里得距离定义为两个向量之间的直线距离。公式如下 Similarity ( u , v ) ∑ i 1 d ( z u , i − z v , i ) 2 \text{Similarity}(u, v) \sqrt{\sum_{i1}^{d} (z_{u,i} - z_{v,i})^2} Similarity(u,v)∑i1d​(zu,i​−zv,i​)2 ​ 其中 z u , i z_{u,i} zu,i​和 z v , i z_{v,i} zv,i​ 分别是节点 u 和 v 在嵌入空间中的第 i 个维度的坐标。 此外图神经网络GNN的设计目标是捕获图中节点间的复杂结构和关系。在GNN中节点的嵌入是通过聚合邻居信息来更新的。例如在图卷积网络GCN中节点的更新公式可以表示为 z u f ( ∑ v ∈ N ( u ) 1 c u v W ⋅ x v ) \mathbf{z}_u f\left(\sum_{v \in \mathcal{N}(u)} \frac{1}{c_{uv}} \mathbf{W} \cdot \mathbf{x}_v\right) zu​f(∑v∈N(u)​cuv​1​W⋅xv​) 其中 N ( u ) \mathcal{N}(u) N(u)是节点 u 的邻居集合 c u v c_{uv} cuv​ 是归一化常数用于平衡不同节点间的影响。 节点表示学习 在GNN中节点表示学习是一个核心过程它的目标是将每个节点转换为数值形式的向量表示。这些向量包含了节点本身的特征信息以及与其相连的其他节点的信息。节点的表示向量可以用于后续的图分析任务如节点分类、链接预测等。 #mermaid-svg-g2Rm3wSU0CmRXu28 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .error-icon{fill:#552222;}#mermaid-svg-g2Rm3wSU0CmRXu28 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-g2Rm3wSU0CmRXu28 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .marker.cross{stroke:#333333;}#mermaid-svg-g2Rm3wSU0CmRXu28 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-g2Rm3wSU0CmRXu28 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .cluster-label text{fill:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .cluster-label span{color:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .label text,#mermaid-svg-g2Rm3wSU0CmRXu28 span{fill:#333;color:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .node rect,#mermaid-svg-g2Rm3wSU0CmRXu28 .node circle,#mermaid-svg-g2Rm3wSU0CmRXu28 .node ellipse,#mermaid-svg-g2Rm3wSU0CmRXu28 .node polygon,#mermaid-svg-g2Rm3wSU0CmRXu28 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-g2Rm3wSU0CmRXu28 .node .label{text-align:center;}#mermaid-svg-g2Rm3wSU0CmRXu28 .node.clickable{cursor:pointer;}#mermaid-svg-g2Rm3wSU0CmRXu28 .arrowheadPath{fill:#333333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-g2Rm3wSU0CmRXu28 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-g2Rm3wSU0CmRXu28 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-g2Rm3wSU0CmRXu28 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-g2Rm3wSU0CmRXu28 .cluster text{fill:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 .cluster span{color:#333;}#mermaid-svg-g2Rm3wSU0CmRXu28 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-g2Rm3wSU0CmRXu28 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 提取特征 用于 节点 向量表示 图分析任务 邻接矩阵与特征聚合 GNN使用邻接矩阵来表示图中的节点间关系。邻接矩阵是一个二维数组其中的元素表示节点间是否有边相连。特征聚合是GNN处理图数据的一个关键步骤它涉及将一个节点的邻居节点信息聚合到该节点的表示中。 #mermaid-svg-mLtAYDHDqn5qvTcG {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG .error-icon{fill:#552222;}#mermaid-svg-mLtAYDHDqn5qvTcG .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-mLtAYDHDqn5qvTcG .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-mLtAYDHDqn5qvTcG .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-mLtAYDHDqn5qvTcG .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-mLtAYDHDqn5qvTcG .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-mLtAYDHDqn5qvTcG .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-mLtAYDHDqn5qvTcG .marker{fill:#333333;stroke:#333333;}#mermaid-svg-mLtAYDHDqn5qvTcG .marker.cross{stroke:#333333;}#mermaid-svg-mLtAYDHDqn5qvTcG svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-mLtAYDHDqn5qvTcG .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG .cluster-label text{fill:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG .cluster-label span{color:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG .label text,#mermaid-svg-mLtAYDHDqn5qvTcG span{fill:#333;color:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG .node rect,#mermaid-svg-mLtAYDHDqn5qvTcG .node circle,#mermaid-svg-mLtAYDHDqn5qvTcG .node ellipse,#mermaid-svg-mLtAYDHDqn5qvTcG .node polygon,#mermaid-svg-mLtAYDHDqn5qvTcG .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-mLtAYDHDqn5qvTcG .node .label{text-align:center;}#mermaid-svg-mLtAYDHDqn5qvTcG .node.clickable{cursor:pointer;}#mermaid-svg-mLtAYDHDqn5qvTcG .arrowheadPath{fill:#333333;}#mermaid-svg-mLtAYDHDqn5qvTcG .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-mLtAYDHDqn5qvTcG .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-mLtAYDHDqn5qvTcG .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-mLtAYDHDqn5qvTcG .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-mLtAYDHDqn5qvTcG .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-mLtAYDHDqn5qvTcG .cluster text{fill:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG .cluster span{color:#333;}#mermaid-svg-mLtAYDHDqn5qvTcG div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-mLtAYDHDqn5qvTcG :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 邻接矩阵 特征聚合 节点 邻居节点 更新节点表示 GNN的主要类型 GNN有多种不同的类型每种类型在特征聚合和信息传播方面有所不同。 Graph Convolutional Network (GCN): GCN通过将邻接矩阵和节点特征矩阵结合起来利用卷积操作来更新节点表示。 #mermaid-svg-OPkgVMOH0ui5RKfb {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb .error-icon{fill:#552222;}#mermaid-svg-OPkgVMOH0ui5RKfb .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-OPkgVMOH0ui5RKfb .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-OPkgVMOH0ui5RKfb .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-OPkgVMOH0ui5RKfb .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-OPkgVMOH0ui5RKfb .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-OPkgVMOH0ui5RKfb .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-OPkgVMOH0ui5RKfb .marker{fill:#333333;stroke:#333333;}#mermaid-svg-OPkgVMOH0ui5RKfb .marker.cross{stroke:#333333;}#mermaid-svg-OPkgVMOH0ui5RKfb svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-OPkgVMOH0ui5RKfb .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb .cluster-label text{fill:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb .cluster-label span{color:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb .label text,#mermaid-svg-OPkgVMOH0ui5RKfb span{fill:#333;color:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb .node rect,#mermaid-svg-OPkgVMOH0ui5RKfb .node circle,#mermaid-svg-OPkgVMOH0ui5RKfb .node ellipse,#mermaid-svg-OPkgVMOH0ui5RKfb .node polygon,#mermaid-svg-OPkgVMOH0ui5RKfb .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-OPkgVMOH0ui5RKfb .node .label{text-align:center;}#mermaid-svg-OPkgVMOH0ui5RKfb .node.clickable{cursor:pointer;}#mermaid-svg-OPkgVMOH0ui5RKfb .arrowheadPath{fill:#333333;}#mermaid-svg-OPkgVMOH0ui5RKfb .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-OPkgVMOH0ui5RKfb .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-OPkgVMOH0ui5RKfb .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-OPkgVMOH0ui5RKfb .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-OPkgVMOH0ui5RKfb .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-OPkgVMOH0ui5RKfb .cluster text{fill:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb .cluster span{color:#333;}#mermaid-svg-OPkgVMOH0ui5RKfb div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-OPkgVMOH0ui5RKfb :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 卷积 结合 节点特征矩阵 更新后的节点表示 邻接矩阵 Graph Attention Network (GAT): GAT引入了注意力机制允许节点根据其邻居的重要性动态调整连接的权重。 #mermaid-svg-wnYTvxKjpqFnGwQF {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF .error-icon{fill:#552222;}#mermaid-svg-wnYTvxKjpqFnGwQF .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-wnYTvxKjpqFnGwQF .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-wnYTvxKjpqFnGwQF .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-wnYTvxKjpqFnGwQF .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-wnYTvxKjpqFnGwQF .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-wnYTvxKjpqFnGwQF .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-wnYTvxKjpqFnGwQF .marker{fill:#333333;stroke:#333333;}#mermaid-svg-wnYTvxKjpqFnGwQF .marker.cross{stroke:#333333;}#mermaid-svg-wnYTvxKjpqFnGwQF svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-wnYTvxKjpqFnGwQF .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF .cluster-label text{fill:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF .cluster-label span{color:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF .label text,#mermaid-svg-wnYTvxKjpqFnGwQF span{fill:#333;color:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF .node rect,#mermaid-svg-wnYTvxKjpqFnGwQF .node circle,#mermaid-svg-wnYTvxKjpqFnGwQF .node ellipse,#mermaid-svg-wnYTvxKjpqFnGwQF .node polygon,#mermaid-svg-wnYTvxKjpqFnGwQF .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-wnYTvxKjpqFnGwQF .node .label{text-align:center;}#mermaid-svg-wnYTvxKjpqFnGwQF .node.clickable{cursor:pointer;}#mermaid-svg-wnYTvxKjpqFnGwQF .arrowheadPath{fill:#333333;}#mermaid-svg-wnYTvxKjpqFnGwQF .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-wnYTvxKjpqFnGwQF .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-wnYTvxKjpqFnGwQF .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-wnYTvxKjpqFnGwQF .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-wnYTvxKjpqFnGwQF .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-wnYTvxKjpqFnGwQF .cluster text{fill:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF .cluster span{color:#333;}#mermaid-svg-wnYTvxKjpqFnGwQF div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-wnYTvxKjpqFnGwQF :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 注意力机制 加权邻居特征 节点 计算权重 更新节点表示 三、GNN的应用场景 社交网络分析 在社交网络分析中GNN被用来识别社群结构、推荐朋友或内容甚至预测用户行为。例如通过分析用户间的互动GNN可以预测用户可能感兴趣的新朋友或信息流内容。GraphSAGE是一个流行的开源框架能够有效地生成社交网络中节点的嵌入表示。 生物信息学 GNN在生物信息学领域也显示出巨大潜力。它被用于蛋白质结构预测、基因表达分析等领域。例如DeepMind的AlphaFold 使用GNN来预测蛋白质的三维结构这对药物发现和生物医学研究具有重大意义。 推荐系统 GNN也被广泛应用于推荐系统中。它能够根据用户的历史交互数据预测用户对未知项目的偏好。例如Pinsage是Pinterest开发的一种基于图的深度学习模型用于增强其推荐系统的效果。 四、GNN的实际案例 案例研究使用GNN进行社交网络分析 在社交网络分析的案例中GNN能够帮助揭示用户间复杂的互动模式。例如使用GNN分析Twitter上的用户互动数据可以识别出影响力大的用户、话题趋势甚至是传播虚假信息的模式。相关研究和案例可以在arXiv找到。 简单实现 在这个简单实现中将使用PyTorch Geometric一种流行的GNN库和一个公开的社交网络数据集。使用的是Cora数据集这是一个常用于图神经网络研究的学术论文引用网络。 请注意要运行以下代码需要安装torch和torch_geometric。代码会构建一个简单的图卷积网络GCN用于节点分类任务。 数据集 方法一直接下载数据集下载链接https://networkrepository.com/cora.php 解压后放在和主函数同级的data文件夹下方法二使用PyTorch Geometric库它提供了一个简便的方法来下载和加载Cora数据集​​。以下是在Python中使用PyTorch Geometric获取Cora数据集的代码示例 from torch_geometric.datasets import Planetoid dataset Planetoid(rootdata/Cora, nameCora)data dataset[0] print(fDataset: {dataset}:) print() print(fNumber of graphs: {len(dataset)}) print(fNumber of features: {dataset.num_features}) print(fNumber of classes: {dataset.num_classes})print(fNumber of nodes: {data.num_nodes}) print(fNumber of edges: {data.num_edges}) print(fAverage node degree: {data.num_edges / data.num_nodes:.2f}) print(fNumber of training nodes: {data.train_mask.sum()}) print(fTraining node label rate: {int(data.train_mask.sum()) / data.num_nodes:.2f}) print(fContains isolated nodes: {data.contains_isolated_nodes()}) print(fContains self-loops: {data.contains_self_loops()}) print(fIs undirected: {data.is_undirected()})方法三如果更倾向于使用TensorFlow可以通过以下链接下载Cora数据集并按照TensorFlow Neural Structured Learning的格式对其进行处理。下载和处理数据集的命令如下 wget --quiet -P /tmp https://linqs-data.soe.ucsc.edu/public/lbc/cora.tgz tar -C /tmp -xvzf /tmp/cora.tgz!wget https://raw.githubusercontent.com/tensorflow/neural-structured-learning/master/neural_structured_learning/examples/preprocess/cora/preprocess_cora_dataset.py!python preprocess_cora_dataset.py \ --input_cora_content/tmp/cora/cora.content \ --input_cora_graph/tmp/cora/cora.cites \ --max_nbrs5 \ --output_train_data/tmp/cora/train_merged_examples.tfr \ --output_test_data/tmp/cora/test_examples.tfr main.py import torch from torch_geometric.datasets import Planetoid import torch_geometric.transforms as T from torch_geometric.nn import GCNConv# 加载Cora数据集 dataset Planetoid(root/data/Cora, nameCora, transformT.NormalizeFeatures())# 定义图卷积网络模型 class GCN(torch.nn.Module):def __init__(self):super(GCN, self).__init__()self.conv1 GCNConv(dataset.num_node_features, 16)self.conv2 GCNConv(16, dataset.num_classes)def forward(self, data):x, edge_index data.x, data.edge_indexx self.conv1(x, edge_index)x torch.relu(x)x self.conv2(x, edge_index)return torch.log_softmax(x, dim1)# 初始化模型和优化器 device torch.device(cuda if torch.cuda.is_available() else cpu) model GCN().to(device) data dataset[0].to(device) optimizer torch.optim.Adam(model.parameters(), lr0.01, weight_decay5e-4)# 训练模型 model.train() for epoch in range(200):optimizer.zero_grad()out model(data)loss torch.nn.functional.nll_loss(out[data.train_mask], data.y[data.train_mask])loss.backward()optimizer.step()# 测试模型 model.eval() _, pred model(data).max(dim1) correct pred[data.test_mask].eq(data.y[data.test_mask]).sum().item() accuracy correct / data.test_mask.sum().item() print(Accuracy: {:.4f}.format(accuracy)) 案例研究GNN在药物发现中的应用 药物发现领域中图神经网络GNN的一个重要应用是通过分析化学结构来预测化合物的生物活性。具体来说研究人员开发了新型的GNN模型如RG-MPNN这种模型将药效团信息层次性地融入到消息传递神经网络MPNN架构中从而提高了化学属性预测的准确性。这种方法不仅吸收了原子和键的信息还吸收了药效团的信息能有效地用于虚拟筛选和先导化合物优化​​。 GNN在预测化合物与蛋白质相互作用CPI方面也显示出巨大潜力。在这方面的深度学习方法如分层图卷积网络HGCN能够学习复杂的从原始数据中提取的抽象特征从而提高性能。这些模型通常包括三个主要组件负责分别编码化合物和蛋白质的两个组件以及将这些编码层的输出转化为CPI预测的最终组件。例如利用SMILES字符串来表示化合物可以将其转换为独特的分子图其中节点代表原子边代表原子间的共价键。通过这种方法研究人员可以更有效地预测化合物和蛋白质之间是否发生相互作用​​。。一个实际案例是使用GNN来加速新药的发现过程这在ChemRXiv上有详细的论文和研究报告。 五、GNN的未来趋势与挑战 图神经网络GNN正迅速成为处理图结构数据的重要工具。尽管在多个领域取得了显著的进展但GNN的未来发展仍面临一些挑战和研究趋势。 数据集不平衡目前可用的数据集存在限制标签数据、领域依赖性数据和数据不平衡等问题。解决这些问题的方法之一是使用迁移学习和领域适应技术。 现有系统/模型的准确性可以利用深度学习模型如GCN、GAT和GraphSAGE等方法来提高当前系统的效率和精度。此外在大型、特定领域的数据集上训练模型可以进一步提高性能。 提高文本分类效果文本分类是一个重大挑战可以通过利用先进的深度学习方法如图神经网络来提高文本分类的准确性和性能。 过度平滑Oversmoothing在GNN中使用过多的消息传递和聚合层可能会导致过度平滑现象。随着网络深度的增加图中不同部分的节点表示可能变得难以区分。在极端情况下所有节点特征可能会趋于相似状态失去其独特信息。这是因为在多次平滑迭代后节点特征从其邻域中聚合了太多信息从而丢失了个体的独特特征。 GNN的不断发展强调了需要解决的一系列图分析问题。在GNN的研究领域中我们探讨了几个关键的近期研究领域包括链接预测、图生成和图分类等​​​​。 随着GNN的持续发展它们在捕获数据中的复杂关系和依赖性方面显示出独特的能力但同时也面临着数据不平衡、模型准确性和文本分类等方面的挑战。未来GNN的发展方向可能会集中在解决这些问题上以及探索新的应用场景和优化现有模型的方法。
文章转载自:
http://www.morning.qwpyf.cn.gov.cn.qwpyf.cn
http://www.morning.cbndj.cn.gov.cn.cbndj.cn
http://www.morning.mdtfh.cn.gov.cn.mdtfh.cn
http://www.morning.mgnrc.cn.gov.cn.mgnrc.cn
http://www.morning.rqmqr.cn.gov.cn.rqmqr.cn
http://www.morning.nckjk.cn.gov.cn.nckjk.cn
http://www.morning.srbsr.cn.gov.cn.srbsr.cn
http://www.morning.tfwg.cn.gov.cn.tfwg.cn
http://www.morning.pznqt.cn.gov.cn.pznqt.cn
http://www.morning.lkbyj.cn.gov.cn.lkbyj.cn
http://www.morning.cszbj.cn.gov.cn.cszbj.cn
http://www.morning.zzgkk.cn.gov.cn.zzgkk.cn
http://www.morning.tklqs.cn.gov.cn.tklqs.cn
http://www.morning.lkthj.cn.gov.cn.lkthj.cn
http://www.morning.zbpqq.cn.gov.cn.zbpqq.cn
http://www.morning.xpqdf.cn.gov.cn.xpqdf.cn
http://www.morning.brld.cn.gov.cn.brld.cn
http://www.morning.mzhgf.cn.gov.cn.mzhgf.cn
http://www.morning.dplmq.cn.gov.cn.dplmq.cn
http://www.morning.pnjsl.cn.gov.cn.pnjsl.cn
http://www.morning.ypcbm.cn.gov.cn.ypcbm.cn
http://www.morning.phlrp.cn.gov.cn.phlrp.cn
http://www.morning.dschz.cn.gov.cn.dschz.cn
http://www.morning.pjfmq.cn.gov.cn.pjfmq.cn
http://www.morning.qbwtb.cn.gov.cn.qbwtb.cn
http://www.morning.jgmlb.cn.gov.cn.jgmlb.cn
http://www.morning.kspfq.cn.gov.cn.kspfq.cn
http://www.morning.xoaz.cn.gov.cn.xoaz.cn
http://www.morning.fqklt.cn.gov.cn.fqklt.cn
http://www.morning.nqrfd.cn.gov.cn.nqrfd.cn
http://www.morning.gbxxh.cn.gov.cn.gbxxh.cn
http://www.morning.fyxr.cn.gov.cn.fyxr.cn
http://www.morning.ishoufeipin.cn.gov.cn.ishoufeipin.cn
http://www.morning.gmgyt.cn.gov.cn.gmgyt.cn
http://www.morning.xqcgb.cn.gov.cn.xqcgb.cn
http://www.morning.jsljr.cn.gov.cn.jsljr.cn
http://www.morning.yhjrc.cn.gov.cn.yhjrc.cn
http://www.morning.ppgdp.cn.gov.cn.ppgdp.cn
http://www.morning.pngdc.cn.gov.cn.pngdc.cn
http://www.morning.ndcf.cn.gov.cn.ndcf.cn
http://www.morning.ssjee.cn.gov.cn.ssjee.cn
http://www.morning.mxhcf.cn.gov.cn.mxhcf.cn
http://www.morning.lqjpb.cn.gov.cn.lqjpb.cn
http://www.morning.zgztn.cn.gov.cn.zgztn.cn
http://www.morning.wyfpc.cn.gov.cn.wyfpc.cn
http://www.morning.xptkl.cn.gov.cn.xptkl.cn
http://www.morning.kmbgl.cn.gov.cn.kmbgl.cn
http://www.morning.kcbml.cn.gov.cn.kcbml.cn
http://www.morning.jpnw.cn.gov.cn.jpnw.cn
http://www.morning.tslfz.cn.gov.cn.tslfz.cn
http://www.morning.xtgzp.cn.gov.cn.xtgzp.cn
http://www.morning.lkmks.cn.gov.cn.lkmks.cn
http://www.morning.burpgr.cn.gov.cn.burpgr.cn
http://www.morning.wgxtz.cn.gov.cn.wgxtz.cn
http://www.morning.rdwm.cn.gov.cn.rdwm.cn
http://www.morning.zxhpx.cn.gov.cn.zxhpx.cn
http://www.morning.qxgmp.cn.gov.cn.qxgmp.cn
http://www.morning.nqlkb.cn.gov.cn.nqlkb.cn
http://www.morning.gjssk.cn.gov.cn.gjssk.cn
http://www.morning.jpgfx.cn.gov.cn.jpgfx.cn
http://www.morning.rfxg.cn.gov.cn.rfxg.cn
http://www.morning.nqpxs.cn.gov.cn.nqpxs.cn
http://www.morning.kbkcl.cn.gov.cn.kbkcl.cn
http://www.morning.gpryk.cn.gov.cn.gpryk.cn
http://www.morning.rqrh.cn.gov.cn.rqrh.cn
http://www.morning.qysnd.cn.gov.cn.qysnd.cn
http://www.morning.smtrp.cn.gov.cn.smtrp.cn
http://www.morning.tznlz.cn.gov.cn.tznlz.cn
http://www.morning.fmtfj.cn.gov.cn.fmtfj.cn
http://www.morning.jjzjn.cn.gov.cn.jjzjn.cn
http://www.morning.qdsmile.cn.gov.cn.qdsmile.cn
http://www.morning.qbxdt.cn.gov.cn.qbxdt.cn
http://www.morning.cwgt.cn.gov.cn.cwgt.cn
http://www.morning.ghkgl.cn.gov.cn.ghkgl.cn
http://www.morning.wfdlz.cn.gov.cn.wfdlz.cn
http://www.morning.sgnxl.cn.gov.cn.sgnxl.cn
http://www.morning.klrpm.cn.gov.cn.klrpm.cn
http://www.morning.ksjnl.cn.gov.cn.ksjnl.cn
http://www.morning.qrzqd.cn.gov.cn.qrzqd.cn
http://www.morning.zqcsj.cn.gov.cn.zqcsj.cn
http://www.tj-hxxt.cn/news/252443.html

相关文章:

  • iosapp做网站排版设计网站有哪些
  • 网站查询平台个人公司注册流程及材料
  • 网站搭建响应式wordpress+制作首页模板下载
  • 手机网页无法访问镇江网站建设优化制作公司
  • 有没有接活做的网站百度小程序优化排名
  • 广告行业网站建设方案济南行知网站建设有限公司怎么样
  • 苏州网站开发公司兴田德润在哪儿wordpress多語言主頁
  • 腾讯网站建设阿里巴巴网站网络营销的影响
  • 陈仓网站建设河北工商注册网入口
  • 幸运快三的网站怎么做国家建设部人才交流中心网站
  • 廊坊市固安县建设局网站凡客诚品vancl
  • 云南网站建设优化技术计算机应用技术
  • 上海企业网站优化多少钱网站域名注册如何填写
  • 设计最简单的企业网站哪些外贸网站比较好
  • 站长统计网站统计如何建个人免费网站
  • 长清网站建设费用雄安优秀网站建设
  • 菏泽郓城网站建设网站开发在线
  • 电脑字体wordpressseo公司电信上海百首网络
  • 建设网站需要什么基础知识wordpress ?cat=
  • w3c验证网站wordpress 中文文件重命名
  • 网站如何做百度才会收录建设网站如
  • 深圳商业网站建设推荐公司wordpress大学百度云
  • 北京网站建设 招聘信息html5效果网站
  • 惠州网站制作专业微网站搭建
  • 适合用于网站开发的工具海宁网站建设公司推荐
  • php网站微信支付怎么做建设企业网站的需求
  • 外包app手机优化助手
  • 部门门户网站建设请示重庆网站托管服务
  • 西部数码助手网站后台管理wordpress更改页面图片链接
  • 做网站 前途网站托管服务适用于