- 博客(70)
- 收藏
- 关注
原创 笔记
图上的图信号:x=[1,2,3,4,4]x=[1,2,3,4,4]x=[1,2,3,4,4]先滤波,再做非线性变换x′=gθ∗xkx' = g_{\theta}* x_{k}x′=gθ∗xkxk+1=σ(wx′)x_{k+1} = \sigma(wx')xk+1=σ(wx′)使用图卷积滤波:gθ∗x=UgθUTxg_{\theta}* x=U g_{\theta}U^T xgθ∗x=UgθUTx其中:L=IN−D−1/2AD−1/2=UΛUTL=I_N-D^{-1/2}AD^{-1/.
2021-04-21 19:18:10
238
原创 Go
package main// 导入语句import "fmt"//函数外只能放置标识符(变量/常量/函数/类型)的声明var( name string age int isOk bool)//程序的入口函数func main() { name = "lixiang" age = 16 isOk = true //var h int //报错:非全局变量声明后未使用 fmt.Print(isOk) // 无换行 fmt.Println() fmt.Printf("n
2021-03-13 21:49:54
162
原创 Windows10安装torch-geometric
查看 pytorch, cuda, cudnn的版本在命令行中输入python转入python命令行按照图中分别输入,查看pytorch, cuda, cudnn的版本在网站点击对应的条目例如pytorch版本为1.4, cuda版本为102,因此选择torch-1.5.0+cu102在之后跳出来的网站里分别点击下载四个文件:scatter / sparse / cluster / spline-conv下载好后,记住文件存放的地址,分别进行安装例如,上述文件存放地址为:D:\python
2021-03-13 11:09:40
376
1
原创 C++ 模板
1.1 模板的概念模板就是建立通用的模具,大大提高复用性模板的特点:模板不可以直接使用,它只是一个框架模板的通用并不是万能的1.2 函数模板C++另一种编程思想称为 泛型编程 ,主要利用的技术就是模板C++提供两种模板机制:函数模板和类模板1.2.1 函数模板语法函数模板作用:建立一个通用函数,其函数返回值类型和形参类型可以不具体制定,用一个虚拟的类型来代表。语法:template<typename T>函数声明或定义解释:template — 声明创建模板
2021-03-04 16:32:29
246
1
原创 C++ 文件操作
文件操作程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化C++中对文件操作需要包含头文件 < fstream >文件类型分为两种:文本文件 - 文件以文本的ASCII码形式存储在计算机中二进制文件 - 文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂它们操作文件的三大类:ofstream:写操作ifstream: 读操作fstream : 读写操作5.1 文本文件5.1.1 写文件写文件步骤如下:包含头文件
2021-03-04 16:04:32
181
1
原创 mysql
卸载与安装卸载:添加链接描述安装:添加链接描述注:安装时新版不需要my.ini文件启动: net start mysql进入:mysql -u root -p离开:quit关闭服务:net stop mysqlmysql常见命令查看show databases;use test; #use 库名;show tabels;show tabels from mysql; #show tabels from 库名;select database();见库create datab
2021-02-26 21:02:25
128
原创 C++ [二]
内存分区模型C++程序在执行时,将内存大方向划分为4个区域代码区:存放函数体的二进制代码,由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义:不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程1.1 程序运行前在程序编译后,生成了exe可执行程序,未执行该程序前分为两个区域代码区:存放 CPU 执行的机器指令代码区是共享的
2021-01-26 20:10:05
332
原创 Java
方法方法的调用单独调用:方法名称(参数)打印调用赋值调用public static void main(String[] args) { //1. 单独调用 sum(10, 20); //2. 打印调用 System.out.println(sum(10,20)); //3. 赋值调用 int result2 = sum(10, 20); }public static int s
2021-01-01 20:24:56
152
原创 leet
基础知识C++向量vector#include<vector>using namespace std;定义vector<int> vi;vector<vector<int>> vii;访问:1.下标,2.迭代器for(int i=0; i<vi.size(); i++)for(vector<int>::iterator it=vi.begin();it!=vi.end(); it++)常用函数vi.push_b
2020-12-24 15:59:59
205
原创 C++ [一]
8 结构体8.1 定义与使用结构体属于用户自定义的数据类型,允许用户存储不同的数据类型语法:struct 结构体名 { 结构体成员列表 };通过结构体创建变量的方式有三种:struct 结构体名 变量名struct 结构体名 变量名 = { 成员1值 , 成员2值…}定义结构体时顺便创建变量//定义struct Student{ //成员列表 //姓名 string name; //年龄 int age; //分数 int score;}s3; //定义结构体时顺便创
2020-12-17 16:44:42
150
原创 剑指offer15 - 二进制中的1
C++ 移位PythonC++class Solution {public: int hammingWeight(uint32_t n) { int res = 0; while(n!=0){ if(n&1==1) res++; n=n>>1; } return res; }};Pythonclass Solution: def hamm
2020-12-13 22:19:56
132
原创 剑指14 - 剪绳子
动态规划dp: dp[i] 表示将正整数 i 拆分成至少两个正整数的和之后,这些正整数的最大乘积。边界条件 :0 不是正整数,1 是最小的正整数,0 和 1 都不能拆分,因此 dp[0]=dp[1]=0。状态转移方程:class Solution {public: int cuttingRope(int n) { vector<int> vi; vi.push_back(0); vi.push_back(0);
2020-12-13 21:33:24
115
原创 二维数组
定义typedef name[rows][columns];typedef name[rows][columns] = {{1,2},{2,4}...};typedef name[rows][columns] = {1,2,3,4...};typedef name[][columns] = {{1,2},{2,4}...};数组名查看二维数组所占的内存空间int arr[2][3];cout << sizeof(arr) << " 字节" << en
2020-12-02 21:08:38
173
原创 剑指11 -旋转数字
写法1:遍历时间复杂度:O(n)O(n)O(n)写法2: 二分查找时间复杂度:O(logn)O(log n)O(logn)int MinInOrder(vector<int>& numbers, int left, int right){ //顺序查找[left, right)中的最小值 int res = numbers[left]; for(int i= left+1; i<=right; i++){ if(res>numbers
2020-12-02 20:44:15
124
原创 剑指10 - 斐波那契数列
tip关于求余(x+y)⊙p=(x⊙p+y⊙p)⊙p(x+y)\odot p = (x\odot p+y\odot p)\odot p(x+y)⊙p=(x⊙p+y⊙p)⊙p防止x+y时溢出,⊙\odot⊙是求余操作第一种写法 : 直接递归int fib(int n) { if(n==0) return 0; else if(n==1) return 1; else return (fib(n-1)%1000000007+fib(n-2)%1000000
2020-12-02 19:31:11
227
原创 C
排序#include<iostream>#include<string>using namespace std;//返回第k位前的一个大写字母的下标int cal(string a, int k){ for (int i = k; i >= 0; i--) { if (a[i] >= 'A'&&a[i] <= 'Z') return i; } return -1;
2020-11-17 19:29:24
124
原创 C语言 一
1. 数据类型数据类型所有数据均有固定的数据类型,C中数据的类型不能改变整数:int / short / long /浮点数 : float / double字符型 : char数组结构体数据类型决定了该数据的内存,存储方式,取值范围常量定义固定常量#define PI 3.14159const float pi = 3.14159数据:名称/值/地址int a;char b;float c;double d;cout << sizeof(a) <
2020-11-17 16:08:43
259
原创 NLP
短语结构树(constituent tree)与依存树(dependency tree)是NLP中的两种典型的树结构短语结构树用来表达句子的句法结构,其只有叶子结点与输入句子中的词语相关联,其他中间结点都是标记短语成分。依存树用来表达句子中词与词的依存关系,具体地,分析识别句子中的“主谓宾”、“定状补”等语法成分。其每个结点都是一个词语。名词解释ROOT:要处理文本的语句IP:简单从句NP:名词短语VP:动词短语PU:断句符,通常是句号、问号、感叹号等标点符号LCP:方位词
2020-09-19 16:18:50
1378
原创 python常用库
shutil拷贝文件内容 – shutil.copyfileobj(fsrc, fdst[, length])将文件内容拷贝到另一个文件中src_file = open('old.xml','r')dst_file = open('new.file', 'w')shutil.copyfileobj(src_file, dst_file)拷贝文件 – shutil.copyfile(src, dst)目标文件无需存在shutil.copyfile('f1.log','f2.log').
2020-09-16 20:14:31
372
原创 DGL-图运算
1. 图变换2 消息传递3.1 dgl.DGLGraph APIg.apply_nodes(func)hg.apply_nodes(func, ntype)对图的节点使用func更新其datag.apply_edges(func)hg.apply_edges(func, edges)对图中边使用func更新其datag.update_all(mess_func, redu_func)hg.update_all(mess_func, redu_func)更
2020-09-11 14:25:44
231
原创 张量
1. 定义与属性0维张量(标量 scalar):0,11维张量(数组/向量 vector):[0], [0, 1, 2]2维张量(矩阵 matrix):3维张量 tensor…1.1 定义与访问定义# torch.tensor(data, dtype=None, device=None, requires_grad=False, pin_memory=False) → Tensora_0d = torch.tensor(0)a_1d = torch.tensor([0]) a_2d
2020-09-05 21:35:52
398
1
原创 DGL-图属性
图的创建与属性创建图创建图的函数:dgl.graph()首先创建边:0->1, 0->2, 0->3, 1->3import torchu, v = torch.tensor([0,0,0,1]), torch.tensor([1,2,3,3])在dgl的图中,所有边都是有向的,如果要创建无向图,需要创建双向边import torchsrc, dst = torch.tensor([0,0,0,1]), torch.tensor([1,2,3,3])u = tor
2020-09-04 10:33:53
4081
4
原创 pandas
sort_valuespandas中的sort_values()函数原理类似于SQL中的order by,可以将数据集依照某个字段中的数据进行排序,该函数即可根据指定列数据也可根据指定行的数据排序。DataFrame.sort_values(by=‘##’,axis=0,ascending=True, inplace=False, na_position=‘last’)#利用字典dict创建数据框import numpy as npimport pandas as pddf=pd.DataFr
2020-09-03 17:57:11
120
原创 111
anchor:exp – ([0, 155, 8, 17, 1372, 15, 196, 282, 1, 30],precision – [0.9509043927648578, 0.9002932551319648, 0.8739977090492554, 0.8849809885931559, 0.8444252376836646, 0.8554216867469879, 0.8326908249807248, 0.8551051051051051, 0.8598679383712399, 0.86
2020-08-25 15:33:06
142
原创 RNN
目标:评估词序列的概率P(w1,...,wm)P(w_1, ..., w_m)P(w1,...,wm)决定词序列是否符合文法或有含义## N-Gram语言模型概率由前 (n-1) 个词计算P(w1,...,wm)=∏i=1mP(wi∣w1,...,wi−1)P(w1,...,wm)≈∏i=1mP(wi∣wi−(n−1),...,wi−1)P(w_1,...,w_m)=\prod_{i=1}^mP(w_i|w_1,...,w_{i-1})\\P(w_1,...,w_m)\approx\p
2020-08-20 11:25:49
527
原创 变量类型
1. 基本数据类型2. 类型转换2.1 CPU和GPU的Tensor之间转换从cpu –> gpu,使用data.cuda()即可。若从gpu –> cpu,则使用data.cpu()。2.2 Tensor与Numpy Array之间的转换Tensor –> Numpy.ndarray 可以使用 data.numpy(),其中data的类型为torch.Tensor。Numpy.ndarray –> Tensor 可以使用torch.from_numpy(data)
2020-08-17 09:59:39
555
原创 Latex
https://blog.youkuaiyun.com/anscor/article/details/80878285min 下方输入变量\min_{x \in R} f(x)minx∈Rf(x)\min_{x \in R} f(x)x∈Rminf(x)空心的ℝ\mathbb{R}R\mathbb{R}R(nk)\begin{pmatrix} n \\ k \end{pmatrix}(nk)
2020-08-16 23:02:11
1036
原创 动手学pytorch DNN
#coding=utf-8import collectionsimport mathimport osimport randomimport sysimport tarfileimport timeimport zipfile# from tqdm import tqdm# from IPython import displayimport numpy as npfrom...
2020-08-15 14:45:31
253
原创 动手学pytorch CNN
tool.py#coding=utf-8import torchimport torch.nn as nnimport torch.nn.functional as Fimport torchvisionimport torchvision.transforms as transformsimport numpy as npimport collectionsimport ...
2020-08-15 14:45:04
192
原创 概率导论--一--样本空间与概率
1.2 概率模型概率模型试验:概率模型都关联着一个试验,试验必产生一个结果样本空间Ω\OmegaΩ: 试验的所有可能事件A :样本空间的子集概率:确定了任何结果或结果的集合(事件)的似然程度(likelood)表示:常用序贯树形图等序贯模型表示样本空间的试验结果概率公理非负性:∀A,P(A)≥0\forall A, P(A)\geq0∀A,P(A)≥0可加性:∀A,B,A∩B=∅,P(A∪B)=P(A)+P(B)\forall A,B, A\cap B= \varnothing ,
2020-08-14 12:54:22
1817
原创 概率导论-二-离散随机变量
2.1 随机变量随机变量:对样本空间里的所有试验结果,都关联着一个特定的数。这种试验结果与数的对应关系形成一个随机变量。将试验结果所对应的数称为随机变量的取值。随机变量是试验结果的一个实值函数。离散随机变量:随机变量的值域为有限集合或可数无限集合,如{-1, 0, 1}连续随机变量:随机变量的值域为不可数无限集合,如[-1, 1]上的一个点2.2 分布列分布列:离散随机变量的取值概率, pxpxpx表示随机变量X的分布列,即pX(x)=P({X=x}) (可简写为P(X=x)
2020-08-13 11:35:34
1172
原创 7.14 文件输入输出 -- fopen, fwrite, fclose
fopen来源:http://codingdict.com/article/2233描述C 库函数 FILE *fopen(const char *filename, const char *mode) 使用给定的模式 mode 打开 filename 所指向的文件。声明下面是 fopen() 函数的声明。FILE *fopen(const char *filename, const char *mode)参数filename – 这是 C 字符串,包含了要打开的文件名称。mode –
2020-08-05 11:38:51
314
原创 第7章 函数--C++的编程模块
7.1 函数的基本知识库函数:已定义和编译好的函数,使用标准库头文件提供其原型使用函数需完成:函数定义(function definition)函数原型(function prototype)函数调用(function call)#include<iostream>using namespace std;void simple(); //函数原型void main(){ cout << "main function" << endl;
2020-07-29 18:56:38
121
原创 3-无重复字符的最长子串
题目给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。class Solution {public: int lengthOfLongestSubstring(string s) { int l = s.length(); vector<int> vi; unordered_set<char&g
2020-07-25 22:29:23
102
原创 错误记录
链表2-两数相加runtime error: member access within null pointer of type ‘struct ListNode’(转自: https://blog.youkuaiyun.com/qq_40086556/article/details/81869349)写在前面这个BUG是我在做LeetCode的链表一类题目的时候遇到的,觉得还是蛮有代表性的,因为刚开始遇到这个BUG,我完全不知道哪里有问题,还与正确答案反复对比,结果发现完全一样,但我的就报错,后来发现原来是
2020-07-18 19:01:21
165
原创 2-两数相加
题目给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807我的解法错误解法当输入[9,8]与[1]时出错class
2020-07-18 18:58:02
141
原创 1-两数之和
题目给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解法哈希表代码(C++)class Solution{public: vector<int> twoSum
2020-07-17 19:21:55
179
原创 动手学pytorch RNN
tool.py"""6.2 rnn """def test_P154(): X, W_xh = torch.randn(3, 1), torch.randn(1, 4) H, W_hh = torch.randn(3, 4), torch.randn(4, 4) R1 = torch.matmul(X, W_xh) + torch.matmul(H, W_hh) R2 = torch....
2020-02-14 12:47:58
323
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人