公众号:尤而小屋 作者:Peter 编辑:Peter
大家好,我是Peter~
最近开始看一本之前出版社老师赠送的书《图神经网络-基础、前言与应用》,开始系统地了解下图神经网络。
书籍的目录:
第一部分:引言
- 第 1 章 表示学习
- 第 2 章 图表示学习
- 第 3 章 图神经网络
第二部分:基础
- 第 4 章 用于节点分类的图神经网络
- 第 5 章 图神经网络的表达能力
- 第 6 章 图神经网络:可扩展性
- 第 7 章 图神经网络中的可解释性
- 第 8 章 图神经网络:对抗鲁棒性
第三部分:前沿
- 第 9 章 图神经网络:图分类
- 第 10 章 图神经网络:链接预测
- 第 11 章 图神经网络:图生成
- 第 12 章 图神经网络:图变换
- 第 13 章 图神经网络:图匹配
- 第 14 章 图神经网络:图结构学习
- 第 15 章 动态图神经网络
- 第 16 章 异构图神经网络
- 第 17 章 图神经网络:AutoML
- 第 18 章 图神经网络:自监督学习
第四部分:应用
- 第 19 章 现代推荐系统中的图神经网络
- 第 20 章 计算机视觉中的图神经网络
- 第 21 章 自然语言处理中的图神经网络
- 第 22 章 程序分析中的图神经网络
- 第 23 章 软件挖掘中的图神经网络
- 第 24 章 药物开发中基于 GNN 的生物医学知识图谱挖掘
- 第 25 章 预测蛋白质功能和相互作用的图神经网络
- 第 26 章 异常检测中的图神经网络
- 第 27 章 城市智能中的图神经网络
后面不定期更新自己的学习笔记,感兴趣的朋友也可以收藏~
本文主要介绍表征学习。
什么是表征学习
机器学习技术的有效性不仅依赖于算法本身的设计,也依赖于良好的数据表征(特征集)。
表征学习是指学习数据的底层特征,使其在建立分类器或其他预测器时更容易提取有效的、具有鉴别性的信息。表征学习的目的是从数据中提取足够切最少的信息。
传统方法是通过先验知识以及基于数据和任务的领域专业知识来实现,这个过程也被称之为特征工程。传统方法的缺陷:
- 需要领域专家的密集劳动,因为特征工程可能需要模型开发者和领域专家之间紧密而广泛的合作;
- 不完整的和带有偏见的特征提取。不同领域专家的知识限制了提取特征的容量和判别能力。
- 领域知识限制。部分领域的知识有限,具体提取哪些特征是一个开放性的问题。
表征学习有效地避免了传统方法过度依赖特征工程的缺陷。可以说,表征学习技术见证了从传统表征学习到更先进表征学习的发展与演变。对比传统表征学习和先进表征学习的特点:
- 基于传统方法:属于“浅层模型”,基于学习数据转换,比如PCA、高斯马尔科夫随机场GMRF、局部保持投影LPP
- 基于深度学习:由多个非线性变换组成,目的是产生更抽象且有用的特征。
3种常见的表征学习技术:
- 监督学习:通过大量标记数据来训练深度学习的模型
- 无监督学习:旨在学习数据的潜在固有结构和分布,通过代理任务从大量无标签数据中探索监督信息。
- 迁移学习:利用任何资源(数据、模型、标签等)增加模型对目标任务的学习和泛化能力。
其他表征学习方法:强化学习、小样本学习和解耦表征学习等。
为什么需要表征学习
定义好的表征十分重要:
- 减少数据量:表征学习能够将原始数据转化为更简洁、更具有代表性的特征表示,从而大大减少了需要处理的数据量。这对于处理大规模数据集尤为重要,因为它可以显著提高模型的训练速度和效率。
- 提高泛化能力:通过学习如何提取数据的特征,模型能够更好地捕捉到数据的内在结构和规律,从而在解决相似问题时具有更强的泛化能力。这有助于提高模型的预测准确性和鲁棒性。
- 促进知识迁移:表征学习使得模型能够更好地理解和处理不同类型的数据。这使得机器学习模型可以更容易地适应不同的任务和场景,从而实现知识迁移。通过将不同领域的知识和经验结合起来,可以加速模型的训练和提高其性能等。
介绍表征学习在4个领域的应用:
- 图像处理
- 语音识别
- 自然语言处理
- 网络分析
用于图像处理的表征学习
图像表征学习是理解各种视觉数据(如照片、医学图像、文件扫描和视频流等)的语义的问题。
传统图像模式的提取是基于先验知识进行手工特征提取。基于深度学习的图像表征学习是以端到端的方式学习的。
1、用于图像处理的监督表征学习
- 卷积神经网络CNN
- 深度信念网络Deep Belief Network(DBN)
- 深度卷积神经网络(ConvNets)
- AlexNet
- VGG
- GoogLeNet
- ResNet
- DenseNet
2、用于图像处理的无监督表征学习
提供各种代理任务(图像着色、图像修复)供模型解决。模型通过学习代理任务的目标函数进行训练,通过此过程学习特征。使用代码任务进行学习的过程中,基于深度神经网络模型:
- 浅层部分侧重于低层次的一般特征,比如角落、边缘和纹理等
- 深层部分侧重于高层次的特定任务特征,比如物体、场景等
3、用于图像处理的迁移学习
迁移学习是通过模仿人类视觉系统,在给定领域执行新任务时,利用了相关领域的先验知识。2种类型:
- 特征表征知识迁移:利用一组提取的特征将目标领域映射到源领域,减少二者之间的数据差异。
- 基于分类器的知识迁移:将学到的源领域模型作为先验知识,用于与训练样本一起学习目标模型(将两个领域的训练集和学习的模型来学习另一个新的模型)
用于语音识别的表征学习
语音识别主流任务:
- 自动语音识别Automatic Speech Recognition,ASR
- 说话者识别Speaker Recognition, SR
- 说话者情感识别Speaker Emotion Recognition,SER
1、用于语音识别的监督表征学习
- 受限波尔兹曼机RBM
- 深度信念网络(微软的MAVIS)
- 卷积神经网络
- LSTM、RNN、GRU
2、用于语音识别的无监督表征学习
- ASR和SR:VAE
- 降噪自编码器DAE:Denoised AutoEncoder
- 生成对抗网络GAN
- 对抗性自编码器AAE
3、用于语音识别的迁移学习
迁移学习囊括的不同场景:
- MTL
- 模型自适应
- 知识迁移
- 协变量偏移
其他用于语音识别的表征学习技术:半监督学习和强化学习。
用于自然语言处理的表征学习
表征学习在NLP中的应用有两种:
- 语义表征(词嵌入)是在预训练中训练的,然后被迁移到目标任务的模型中;
- 语义表征暗含在深度学习模型中,直接以端到端的方式更好地实现目标任务。
1、用于NLP的监督表征学习
- 深度神经网络(分布式表征学习)
- CNN
- RNN
2、用于NLP的无监督表征学习
- word2vec
- GloVe
- BERT
- 自编码器VAE
- 循环自编码器
3、用于NLP的迁移学习
在NLP中主要是顺序迁移学习模型的应用,该模型包含两个阶段:预训练阶段 适应阶段。
NLP中的领域适应可以分为以模型为中心、以数据为中心和混合方法三种。
- 以模型为中心:增强特征空间、改变损失函数、结构或者模型参数
- 以数据为中心:专注数据方面,涉及为伪标签(自举);其中少量的类别在源数据集和目标数据集之间共享
其他用于NLP的其他表征技术:单样本/少样本学习。
用于网络分析的表征学习
- 虚拟网络:社交网络、引用网络、电信网络等
- 现实网络:交通网络、生物网络
传统的网络数据特征工程的侧重点:图层面(直径、平均路径长度和聚类系数等)、节点层面(节点度和中心度)和子图层面(频繁子图和图主题)。
图表征学习(NetWork Representation Learning,NRL)旨在学习潜在的、低维的网络顶点特征,同时保留网络拓扑结构、顶点内容和其他侧面信息。