自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 Graph Neural Networks (GNN)(五):Graph Embedding (DeepWalk, Line, Node2Vec)

1. 概述本系列之前文章主要介绍了基于空间(Spatial)和图谱(Spectral)理论的图神经网络(GNN)Graph Neural Networks (GNN)(一):Spatial-GNNGraph Neural Networks (GNN)(二):Spectral-GNN 引言和导入Graph Neural Networks (GNN)(三):Spectral-GNN 之 GCNGraph Neural Networks (GNN)(四):Spectral-GNN 与 Spatial-G

2020-07-03 13:15:25 1819 1

原创 Graph Neural Networks (GNN)(四):Spectral-GNN 与 Spatial-GNN 对比

概述前三篇详细介绍了 Spatial-GNN 和 Spectral-GNN 的内容,这一篇博客简单的对比一下。Graph Neural Networks (GNN)(一):Spatial-GNNGraph Neural Networks (GNN)(二):Spectral-GNN 引言和导入Graph Neural Networks (GNN)(三):Spectral-GNN 之 GCN总结其实两者是殊途同归的,所有的 GNN 都可以看成一个热传导模型/信息扩散模型。不管是 Spectral-G

2020-06-30 11:17:09 2597 2

转载 Graph Neural Networks (GNN)(三):Spectral-GNN 之 GCN

1. 概述前面讲了 Spectral-GNN Graph Neural Networks (GNN)(二):Spectral-GNN 引言和导入 的引言和导入。这一篇主要介绍这一类最经典的一条模型主线:GCN。参考链接:如何理解 Graph Convolutional Network(GCN)?-- Johnny Richards 的回答如何理解 Graph Convolutional Network(GCN)?-- superbrother 的回答2. 离散卷积了解 GCN 之前必须对离散卷

2020-06-29 12:57:29 1421

转载 Graph Neural Networks (GNN)(二):Spectral-GNN 引言和导入

1. 概述前面讲了 Spatial-GNNGraph Neural Networks (GNN)(一):Spatial - GNN 的基本原理和一些典型的实现。这一篇主要介绍一下另外一大类:Spectral-GNN。这一类一开始理解起来会比较抽象,因为涉及太多数学、信号处理等方面的内容,我一开始也陷入了这些困境里面。但是通过阅读了几位大牛的知乎或者博客之后,发现其实本质和 Spatial-GNN 是差不多的,只是理解的角度和出发点有些差异。参考链接:如何理解 Graph Convolutional N

2020-06-12 11:08:47 1452 1

原创 Graph Neural Networks (GNN)(一):Spatial-GNN

1. 想法CNN 中的卷积核(e.g., 3 * 3)算某一个像素点的 feature 的时候,可以看成把这个像素点周围的像素点的特征按照一定的权重加权求和。卷积操作类似于内积,即把卷积核里的每个权重和对应像素点值相乘,最后相加,得到的结果就是这个点的新的特征。Spatial-GNN 想要把这种卷积操作直接推广到 Graph 上。2. 做法将某个节点周围的领域节点特征收集起来,进行某一种操作,然后更新这个节点的特征。图片来源:李宏毅老师 2020 课程:上面我觉得直接把 i 看成 0 来理解

2020-06-05 11:18:42 2854 1

原创 图片情感识别/分类/分析 概述

目录(一)简介1. 情绪模型2. 常用数据集3. 问题难点(挑战)3.1 数据标记困难3.2 情感涉及的图片特征多样化(二)主要方法1. 低级特征2. 中级特征3. 高级特征4. 基于学习的特征(三)论文链接(一)简介图片可以用于传达某些情感,例如看到流浪狗的照片会让你感到悲伤,而看到美景的时候会让你心旷神怡。对图片所传达的情感进行识别分析是一个具有吸引力的问题。目前已经有很多的方法在研究这个...

2020-03-05 18:23:08 8055 6

原创 Optimization as a model for few-shot learning. (优化一个模型,用于少样本学习) -- ICLR 2017 Oral 论文

目录1. 摘要2. 介绍3. 任务描述3.1 问题设置4. 模型4.1 模型描述4.2 参数共享和预处理4.3 训练4.4 梯度独立性假设5. 个人理解6. 其他7. 论文链接1. 摘要尽管深度神经网络已经在大数据领域取得了巨大的成功,但是他们通常在少样本学习任务上表现很糟糕。少样本任务需要分类器必须在仅看到每个类很少的样本后快速推广泛化。一般认为,在高容量的分类器中的基于梯度的优化算法需要大...

2019-07-23 17:33:52 6115 4

原创 MAML: Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks (模型无关的元学习用于快速适应深度网络)

目录1. 摘要2. 介绍3. 模型3.1 模型架构3.1.1 注意力机制内核3.1.2 完全上下文 embedding3.2 训练策略4. 其他5. 论文链接1. 摘要文章提出了一种概念上简单、灵活、通用的框架用于 few-shot learning 问题。few-shot learning 问题需要分类器必须识别在每个新类只给出几个样本情况下识别新的类(新的类是指在训练阶段没有见过的类)。文...

2019-06-28 11:12:29 7008 24

原创 Few-shot learning(少样本学习)和 Meta-learning(元学习)概述

目录(一)Few-shot learning(少样本学习)1. 问题定义2. 解决方法2.1 数据增强和正则化2.2 Meta-learning(元学习)(二)Meta-learning(元学习)1. 学习微调 (Learning to Fine-Tune)2. 基于 RNN 的记忆 (RNN Memory Based)3.度量学习 (Metric Learning)4.方法简单比较5.未来方向5...

2019-06-18 23:16:35 62383 50

原创 [error] Could not locate zlibwapi.dll. Please make sure it is in your library path

I tensorflow/stream_executor/cuda/cuda_dnn.cc:384] Loaded cuDNN version 8500Could not locate zlibwapi.dll. Please make sure it is in your library path!

2022-10-28 17:32:42 859 1

原创 Python 利用 Pandas 将 json 文件转为 excel

需求:有一个json文件,想要转为excel表格文件解决方法:Pandas步骤:pip 去安装 Pandas此时 info2.json 文件内容为:{"time": "20210722", "name": "James", "age": "12"}我们代码为:import pandas as pddf = pd.read_json("info2.json")df.to_excel("info.xlsx")执行之后,报错如下:ValueError: If using all sca

2021-07-22 16:00:22 4751 1

原创 Python 包(Package)和模块(Module)的概念

模块python模块是:自我包含并且有组织的代码片段为模块。表现形式为:写的代码保存为文件。这个文件就是一个模块。moudule.py 其中文件名moudule为模块名字。包python包是:包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境。表现形式通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init__.py文件和其它模块或子包。总结简单讲,Package是由很多module组成,来实现某

2021-07-13 15:14:42 365

原创 Latex: 引用中的 citep (将作者和年份一起放到一个括号里面)

问题描述前几天在对某期刊的审稿意见做修改的时候遇到了一个问题,我文中的引用格式是这样的:然而主编需要的引用格式是这样的:一开始一直觉得是导入的引用格式包的问题,尝试了该期刊所有的引用格式文件都没有解决,最终在输入 cite 的时候有一个自动补全的 citep,尝试之后发现刚好可以满足要求.操作~\cite{lang1979bio, joshi2011aesthetics}改为~\citep{lang1979bio, joshi2011aesthetics}即可....

2020-09-28 16:46:40 6228 1

原创 python 双端队列:collections.deque 基本方法总结

1. 概述之前一篇博客介绍了一下 python 中队列的基本操作:Python 队列模块 Queue 的常用操作。但是我们发现了两个问题:向一个空的队列进行 get() 操作会进入“死循环”get 操作和我们理解的 get 操作有点差异,我们有时只需要知道队头元素时什么,但是不想取出。可以在 Queue 模块中,我们只能先 get,然后重新放入,并且还要重新调整好顺序。今天的双端队列一方面可以解决上述问题,另一方面某些场景下栈和队列都不能很好的对数据建模,而双端队列可以。双端队列可以看成栈和队列

2020-06-08 23:07:17 3220

原创 Python 队列模块 Queue 的常用操作

引言最近写代码的过程中,偶尔会遇到使用队列和栈。栈的使用可以用 python 中的 list 很好地模拟,因为尾部插入 (append) 和尾部弹出 (pop) 时间复杂度都为O(1),正好符合栈的后进先出的思想。但是对于队列 list 就没有那么友好了。无论 list 的哪一端都会导致队列的入队或出队一个复杂度为 O(n)当然我们也可以用两个栈模拟一个队列,但是会有额外操作和时间复杂度的问题。Python 的 Queue 模块提供了一般队列的操作;from queue import Queu

2020-06-04 21:00:06 3613

原创 Python 图(Graph)数据结构(三):最短路径 —— 迪杰斯特拉算法(dijkstra)

基本思想:通过Dijkstra计算图G中的最短路径时,需要指定起点s(即从顶点s开始计算)。此外,引进两个集合S和U。S的作用是记录已求出最短路径的顶点(以及相应的最短路径长度),而U则是记录还未求出最短路径的顶点(以及该顶点到起点s的距离)。初始时,S中只有起点s;U中是除s之外的顶点,并且U中顶点的路径是”起点s到该顶点的路径”。然后,从U中找出路径最短的顶点,并将其加入到S中;接着,更...

2020-04-24 10:26:55 1045 3

原创 Python 图(Graph)数据结构(二):最小生成树

1. 最小生成树:最小生成树即为图中权值最小的生成树(生成树中所有边权重之和)。例如对于无向图:来说最小生成树就是:1.1 最小生成树算法最小生成树的算法主要有两个:Kruskal 算法Prim 算法1.1.1 Kruskal 算法算法演示如下:代码如下,嵌入到上一篇论文的图构造里面 Python 图(Graph)数据结构(一):图的构造与遍历(深度优先 DFS 和...

2020-04-23 10:20:46 1238

原创 Python 图(Graph)数据结构(一):图的构造与遍历(深度优先 DFS 和广度优先 BFS)

1. 图图是一种复杂的数据结构,因为图中可能存在多对多的关系。图 G 由顶点集 V 和边集 E 组成,记为 G=(V,E),其中 V 表示图 G 中顶点的有限非空集;E 表示图 G 中顶点之间的关系(边)的集合。图还可以分为有向图和无向图。2. 有向图的构造和遍历class MyDirectedGraph: def __init__(self, data=None): ...

2020-04-22 11:34:53 1796 3

原创 Python 实现十大排序算法

排序(有小到大排)1.1 冒泡排序:冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大(升序),就交换...

2020-04-20 22:15:19 278

原创 Python 数据结构之二叉树:二叉树的遍历:DFS 深度优先(先序遍历、中序遍历、后续遍历)和 BFS 广度优先遍历。

1. 二叉树:二叉树是一种常用的数据结构,是树这种数据机构的一种特例。它最多只有两个子节点,且如果有两个子节点,两个子节点之间是有顺序的,一个称为左孩子节点,一个称为右孩子节点。每个节点的构造如下:class TreeNode: def __init__(self, x): self.val = x self.left = None s...

2020-04-16 11:35:56 1159 1

原创 Python:切片操作详解

基本语法:object[start:end:step=1]step:正负数均可,其绝对值大小决定了切取数据时的‘‘步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。当step省略时,默认为1,即从左往右以步长1取值。start:开始位置索引。end:结束位置索引。功效:从 start 到 end 按照 step 选取元素作为一个新的对象。(包括 s...

2020-04-15 11:33:54 1431

原创 Python 数据结构之链表:单向链表,双向链表,循环链表实现。

1. 链表我们在Python 序列:列表 (list),元组(tuple),字符串(str)深入分析(包括扩容和摊销)。 和Python:栈和队列的 python 列表实现中可以看出链表是存在一定问题的:由于动态数组,底层的数组长度可能会超过实际存储元素的个数,造成空间上的浪费。我们 append 的平均时间复杂度是 O(1),但是这是摊销的结果,某一次的时间复杂度最坏为 O(n)。队列...

2020-04-14 10:36:21 491

原创 Python:栈和队列的 python 列表实现

1. 栈1.1 栈的基本概念栈是一种简单的数据结构,是由一些列对象组成的集合,这些对象的插入和删除操作遵循“后进先出”的原则。可以在任何时候向栈中插入一个对象,但是只能取得或者删除最后插入的对象(即所谓的“栈顶”)。1.2 栈的基本操作:假设栈为 S,栈的基本操作:S.push(e):将一个元素 e 添加到栈 S 的栈顶;S.pop():从栈 S 中返回栈顶的元素,如果栈为空,这个操...

2020-04-13 12:12:52 643

原创 Python 序列:列表 (list),元组(tuple),字符串(str)深入分析(包括扩容和摊销)。

1. 概述Python 中的序列类:列表 (list),元组(tuple),字符串(str)最主要的共性:支持下标访问序列元素,例如 list[1], tuple[0], str[1]。每个类都是使用数组这种低层次的概念来表示序列。2. 数组2.1 存储机制计算机是以字节(1 字节 = 8 位)为单位存储和访问数据的,并且存储器的任一单元被存储或检索的运行时间为 O(1)。数组:一组相关...

2020-04-12 17:55:57 1189

原创 Python:赋值,浅拷贝(copy)和深拷贝(deepcopy)

基础知识请查看之前博客:Python 对象:可变对象与不可变对象赋值、浅拷贝和深拷贝的关键问题:修改一个变量,会不会导致另外对象的改变。不可变对象:import copya1 = 0a2 = a1a3 = copy.copy(a1)a4 = copy.deepcopy(a1)print(id(a1))print(id(a2))print(id(a3))print(id(...

2020-04-11 11:15:19 1462

原创 Python: 变量 += 和 变量 = 变量 +

+= 和 = + 的内部实现:为了方便起见:a += 1 和 a = a + 1 这两种形式在本文中被缩写为 += 和 =+。+= 在内部的方法是: __iadd__=+ 在内部的方法是: __add__如果一个类,没有实现 __iadd__ 方法的话,python 就会退一步调用 __add__ 方法总体来说,可变类型都有 __iadd__ 方法,而不可变类型没有 __iadd__ 方...

2020-04-10 09:38:56 1259

原创 Python:range() 函数解析以及自己实现一个 range()

range() 函数1. 何为 range()首先我们需要知道 range() 函数返回的到底是一个什么东西:from collections import Iterablefrom collections import Iteratorx = range(100)print(isinstance(x, Iterable))print(isinstance(x, Iterator...

2020-04-09 22:49:24 2272 1

原创 Python:函数式编程(五):lambda 表达式和偏函数

lambda 表达式lambda 表达式是 Python 中创建匿名函数的一个特殊语法,匿名函数顾名思义就是指:是指一类无需定义标识符(函数名)的函数或子程序。lambda 表达式返回的是一个函数,一个匿名函数。例如我们定义求积函数的一般语法如下:def multiply(a, b): return a * b而我们使用我们的 lambda 表达式是这样的:f = lambd...

2020-04-08 12:05:57 379

原创 Python:函数式编程(四):装饰器

上文讲到函数式编程的闭包,这一节讲一下闭包的一个应用,装饰器。何为装饰器装饰器本质上是一个 Python 函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量与函数功能本身无关的雷同代码并继续重用。...

2020-03-27 20:26:48 164

原创 Python:函数式编程(三):闭包

闭包的定义:维基百科关于闭包的定义:在计算机科学中,闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。前面提到函数式编程中函数作为“一等公民”,因此一个函数可以作为另一个函数的返回值。这就很显然...

2020-03-26 20:47:27 159

原创 Python:函数式编程(二):语法与内置函数

建议先阅读之前有关函数式编程的博客 Python:函数式编程(一):关于 Python 的函数式编程和可迭代对象,迭代器,生成器 Python:可迭代对象,迭代器,生成器的博客之后再来阅读此博客。1. 语法1.1 列表生成式:基本形式如下:list1 = [x * x for x in range(1, 11)]print(isinstance(list1, list))print(l...

2020-03-25 20:40:30 188 1

原创 Python:函数式编程(一):关于 Python 的函数式编程

11

2020-03-24 19:46:42 359

原创 Python:可迭代对象,迭代器,生成器。

提纲:生成器 ⫋\subsetneqq⫋ 迭代器 ⫋\subsetneqq⫋ 可迭代对象1. 可迭代对象:可迭代对象包括:迭代器 (包括生成器)。字符串 str,列表 list, 字典 dict,元组 tuple,集合 set。实现了 __iter__ 方法的对象。判断一个变量是否为可迭代对象:from collections import Iterableisinstance...

2020-03-19 20:54:08 858

原创 Python 列表 list 和字符串 str 的取值 [0] 和 [:1]

列表 list首先看一段代码:def list_head1(l): print(l[0])def list_head2(l): print(l[:1]) print(l)if __name__ == '__main__': L = [1, 2, 3, 4, 5] list_head1(L) list_head2(L)我们得到结果是...

2020-03-18 10:57:42 5861 1

原创 Python:is 和 == 的区别

总的来说,官方文档中说 is 表示的是对象标示符(object identity),而 == 表示的是相等(equality)。is 的作用是用来检查对象的标示符是否一致,也就是比较两个对象在内存中的地址是否一样,而 == 是用来检查两个对象是否相等。检查 a is b 的时候,其实相当于检查 id(a) == id(b)。检查 a == b 的时候,实际是调用了对象 a 的 __eq()_...

2020-03-17 16:59:32 105

原创 Python 函数:函数参数

首先给出一个最基本的函数:def say_hello(name): print('Hello', name)if __name__ == '__main__': say_hello('James')运行结果默认参数在我们的例子中,如果我们不知道他人的名称,如何向他人 say_hello 呢。这个就可以用默认参数,例如一般情况是和男士打招呼(程序媛太少了呀),代码如...

2020-03-16 23:11:27 135

原创 Python 对象:可变对象与不可变对象

Python 对象操作对象 (Objections) 是 python 中数据的抽象,python 中所有的数据均可以用对象或者是对象之间的关系来表示。每个对象均有标识符( identity)、类型 (type)、值 (value)。标识符:对象一旦创建,那么它的标识符就不会改变,可以把标识符看作对象在内存中的地址。 is 操作可以用来比较两个对象的标识符,函数 id() 用来返回对象标识符...

2020-03-12 23:15:14 449

原创 Latex: 修改有序列表的标号形式(例如去掉括号,加上描述)

有序列表的常规使用:\begin{enumerate}\item aaa\item bbb\item ccc\end{enumerate}效果如下但是如果我们不想要 (1) (2) (3) 这种形式呢? 比如 1. 2. 3. 或者 Stage 1. Stage 2. Stage 3. 呢? 一种简单的解决方法: 在\item 后面加上 [] 定制自己想要的样式。\begin...

2020-01-18 14:47:59 7487 1

原创 RuntimeError: cuDNN error: CUDNN_STATUS_BAD_PARAM

问题描述:在将输入数据送入到网络模型的时候,报错:RuntimeError: cuDNN error: CUDNN_STATUS_BAD_PARAM解决:一开始在网上查找相关问题描述,其中绝大部分说的是显卡中缓存太多,需要清理缓存然后重新启动。但是按照他们介绍的步骤,发现问题并没有得到解决,而且查看显卡状态,显存状态良好。最后在 stackoverflow 上找到的解决方法方法:...

2019-12-04 17:24:40 17783 10

原创 Python 用 xldr 读取 excel 时,如果表格中日期格式数据处理

问题描述最近在处理一个 excel 数据即的时候发现,如果表格中存在时间格式的数据时,常用方法:import xlrd readbook = xlrd.open_workbook('表格名.xls')sheet = book.sheet_by_index(子表序列)nrows = sheet.nrowsncols = sheet.ncolsfor row in range(sh...

2019-12-02 11:29:49 3201

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除