CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs

目录:

  1. Course Logistics 一些注意事项和先修知识
    主要是课程需要的先修的课程和用到的工具
  2. Why Graphs ?
  3. Applications of Graph ML
  4. Choice of Graph Representation

1. Course Logistics

Graph Representation Learning Book 课程推荐的参考书

Tools(工具): PyTorch Geometric(PyG), DeepSNAP,GraphGym,SNAP.PY,NetworkX

知识建议:

  1. 数学: 概率论与统计,线性代数,微积分
  2. 机器学习
  3. 相关领域知识,例如研究生物制药,需要对制药,医学等相关领域的知识

不必要学完先导知识再学习GNN(不代表一无所知的开始学习),而是在学习GNN的过程中补充自己缺失的知识

2. Why Graphs ?

Graphs are a general language for describing and analyzing entities with relations/interactions
图是描述和分析具有相互联系/相互作用实体的一种通用性语言

  1. 图与数据
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第1张图片
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第2张图片
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第3张图片

  2. 网络和图
    网络(自然图):社交网络,电子设备之间的通信和交流,电话,生物医学,神经元。
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第4张图片
    图(通常用作表示): 信息/知识,软件,相似性网络,关系结构
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第5张图片
    有时,网络和图的区别是很模糊的

  3. 图机器学习
    复杂域具有丰富的关系结构,可以用关系图表示。
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第6张图片

  4. Modern ML Toolbox
    现代的深度学习Toolbox专门用于简单数据类型,如简单序列(例如语音,文本这些线性结构的数据)及网格(固定尺寸的图片)(sequences,grids)
    但是,graphs,networks对于如今的Toolbox是难以处理的,因为他们更加的复杂(任意的尺寸和复杂的拓扑结构)

  5. Why is it hard?
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第7张图片
    那么我们如何开发适用于类似于graphs的复杂数据的,适用性范围更广的神经网络呢?

  6. DL in Graphs && Representation Learning
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第8张图片
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第9张图片
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第10张图片

3. Applications of Graphs ML

Graphs ML 专注于不同的级别可以划分出不同类型的任务
CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第11张图片
CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第12张图片

4. Choice of Graph Representation

  1. 图/网络的组成
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第13张图片

  2. 如何设计/定义图
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第14张图片

  3. 有向图与无向图
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第15张图片

  4. 节点的度
    无向图:

     计算图节点的平均度数   k = 2E/N (E是边数,N是节点数,由于计算度数时每一条边都被计算两次,所以需要乘以2)  (也可以从  k*N = 2 * E 理解)
    

    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第16张图片
    有向图:分为入度和出度(顾名思义)
    入度 = 0 的节点成为source
    出度 = 0 的节点称为sink

      节点度数的平均值k = E/N (对有向图而言,入度和出度的边分别只算一次)
      入度和出度的平均值相等且都为k = E/N:对于一条边而言,当它算作某一节点的入度时,必然算作是另一个节点的出度
    

CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第17张图片

  1. 二部图(二分图)CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第18张图片
    投影/折射网络:以如下二部图为例,假设 U,V分别表示论文的作者及这篇论文,那么对于作者可以投影为左边的投影图U,节点代表作者,边代表着作者间的合作关系,而像3,5没有合作关系的作者则没有link链接;同理可向右投影出投影图V
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第19张图片

  2. Representing Graphs :Adjacency Matrix 邻接矩阵(注意有向图的邻接矩阵是不对称的)
    问题:无法表示为密集矩阵,一般情况下是稀疏矩阵

CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第20张图片CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第21张图片

  1. Representing Graphs :Edge list
    问题:很难进行任何类型的图形操作和对图形的任何类型的分析
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第22张图片

  2. Representing Graphs :Adjacency list
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第23张图片

  3. 附加属性

CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第24张图片CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第25张图片

  1. 连通性
    无向图:
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第26张图片

    将无向图用邻接矩阵表示,非连通图呈现出“块对角线”结构
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第27张图片
    有向图: 强连接,弱连接CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第28张图片
    强连接组件:
    CS224W课程笔记 第一章 Introduction: Machine Learning with Graphs_第29张图片

你可能感兴趣的:(GNN,python,人工智能,机器学习,深度学习,神经网络)