矩阵分解

推荐系统(五)Graph Convolution Network

南楼画角 提交于 2020-02-16 23:22:05
本文尝试通过最简单易懂的语言来讲解GCN(Graph Convolution Network)原理,希望能够帮助大家理解GCN。这里只是讲解GCN的大致原理,公式细节上会省略一些常量,请大家见谅,毕竟这篇博客的目的在于GCN入门,不是深奥的数学知识。如果有讲的不对的地方,麻烦大家一定提出,毕竟错误的知识引导会造成无可估量的知识体系的伤害。 首先阐述一下一些CNN网络模型在图像领域的效果较好原因:网络不同层的卷积核在该层的输入数据上滚动能够提取到相应维度的特征,且通过不断的迭代从而学习到有效的提取特征方法,从而更好地完成任务。上述任务能够有效完成的前提是数据输入结构相对固定,具体而言,一个网络模型的输入是有要求的,比如说网络模型的输入格式为 128 ∗ 128 ∗ 3 128*128*3 1 2 8 ∗ 1 2 8 ∗ 3 ,这个输入数据(通常为图像)的每个位置都必须有值。 但如果输入是结构不固定的数据,比如一个图,再利用CNN模型完成指定任务的难度就相对较大,因为这和CNN模型的本质是冲突的。针对上面的问题,GCN的解决方案直截了当, 将输入结构不固定的数据转换为结构固定的数据,然后再送入CNN模型中 ,个人认为GCN完成的核心任务相当于 CNN的数据预处理过程,只不过这个预处理过程和CNN以往的预处理有所不同,需要在CNN每层处理之前都要做一遍 。 关键字 : 傅里叶变换

一些常用的opencv函数

别说谁变了你拦得住时间么 提交于 2020-02-16 08:02:01
分配图像空间: IplImage* cvCreateImage(CvSize size, int depth, int channels); size: cvSize(width,height); depth: IPL_DEPTH_8U, IPL_DEPTH_8S, IPL_DEPTH_16U, IPL_DEPTH_16S, IPL_DEPTH_32S, IPL_DEPTH_32F,IPL_DEPTH_64F channels: 1, 2, 3 or 4. 注意数据为交叉存取.彩色图像的数据编排为b0 g0 r0 b1 g1 r1 ... 举例: // 分配一个单通道字节图像 IplImage* img1=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1); // 分配一个三通道浮点图像 IplImage* img2=cvCreateImage(cvSize(640,480),IPL_DEPTH_32F,3); 释放图像空间: IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1); cvReleaseImage(&img); 复制图像: IplImage* img1=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1); IplImage*

R语言常用的矩阵操作

陌路散爱 提交于 2020-02-14 23:36:53
R语言是一门非常方便的数据分析语言,它内置了许多处理矩阵的方法。下面列出一些常用的矩阵操作方法示例。 矩阵的生成 > mat <- matrix(1:16, ncol = 4, nrow = 4, byrow=TRUE, dimnames=list(c(paste("x", 1:4, sep = ".")), c(paste("y", 1:4, sep = ".")))) > mat y.1 y.2 y.3 y.4 x.1 1 2 3 4 x.2 5 6 7 8 x.3 9 10 11 12 x.4 13 14 15 16# 矩阵的行列名还可以使用rownames或者colnames进行修改 > rownames(mat) <- paste("row", 1:4, sep=".") > colnames(mat) <- paste("col", 1:4, sep=".")> mat col.1 col.2 col.3 col.4 row.1 1 2 3 4 row.2 5 6 7 8 row.3 9 10 11 12 row.4 13 14 15 16 矩阵的维度 # 表示这是一个4行4列的矩阵> dim(mat) [1] 4 4 矩阵的加减 > mat.2 <- matrix(51:66, nrow = 4) > mat.2 [,1] [,2] [,3] [,4] [1,] 51

CS224n学习笔记(一)

旧巷老猫 提交于 2020-02-14 04:30:40
How do we have usable meaning in a computer? Represents the words as discrete symbols, (离散型变量) Use the one-hot vector to represent the word in sentence, (Traditional way, we can use Distributional semantics) Distributional semantics : A word's meaning is giving by words that frequently appear close-by. when a word w appear in a text, its context words is the set of words that appears nearby. We can use many contexts of w to build up a representation of w . Word Vector :We build a dense(稠密的) vector for each word, chosen so that it's similar to vector of words that appear in similar contexts, it

矩阵运算相关函数

人盡茶涼 提交于 2020-02-13 06:22:02
+ - * / ^ 对应元素相加、相减、相乘、相除、求幂 A %*% B 矩阵相乘 A %o% B 矩阵的外积。 AB' cbind(A, B, ...) 横向组合矩阵或向量 col(A) 求A的Choleski因子。如果 R <- chol(A) ,则 chol(A) 包含上三角因子,并有 R'R=A colMeans(A) 返回一个向量,包含A每列的均值 crossprod(A) A'A (A的转置与A相乘) tcrossprod(A,B) AB'(A乘以B的转置) colSums(A) 返回一个向量,包含A每列的和 diag(A) 返回一个向量,包含主对角线元素 diag(x) 以x为主对角线元素创建对角矩阵 diag(k) 如果k是标量,则创建一个k × k的单位矩阵 eigen(A) A的特征值和特征向量。如果 y <- eigen(A) ,则 y$val 是A的特征值, y$vec 是A的特征向量 ginv(A) A的Moore-Penrose广义逆。(需要MASS包) qr(A) A的QR分解。如果 y <- qr(A) ,则 y$qr 有一个包含分解值的上三角矩阵和一个包含分解值信息的下三角矩阵, y$rank 是A的秩, y$qraux 是包含Q其他信息的向量, y$pivot 包含旋转策略的信息。 rbind(A, B, ...) 纵向组合矩阵或向量

矩阵特征值

試著忘記壹切 提交于 2020-02-13 02:19:32
参考:https://www.zhihu.com/question/21874816 如何理解矩阵特征值? 想要理解特征值,首先要理解矩阵相似。什么是矩阵相似呢?从定义角度就是:存在可逆矩阵P满足B= 则我们说A和B是相似的。让我们来回顾一下之前得出的重要结论:对于同一个线性空间,可以用两组不同的基 和基 来描述,他们之间的过渡关系是这样的: ,而对应坐标之间的过渡关系是这样的: 。其中P是可逆矩阵,可逆的意义是我们能变换过去也要能变换回来,这一点很重要。 我们知道,对于一个线性变换,只要你选定一组基,那么就可以用一个矩阵T1来描述这个线性变换。换一组基,就得到另一个不同的矩阵T2(之所以会不同,是因为选定了不同的基,也就是选定了不同的坐标系)。所有这些矩阵都是这同一个线性变换的描述,但又都不是线性变换本身。具体来说,有一个线性变换 ,我们选择基 来描述,对应矩阵是 ;同样的道理,我们选择基 来描述 ,,对应矩阵是 ;我们知道基 和基 是有联系的,那么他们之间的变换 和 有没有联系呢? 当然有, 和 就是相似的关系,具体的请看下图: &amp;lt;img src="https://pic1.zhimg.com/6cf43eca0f26cb1752f8fbf2633b699c_b.jpg" data-rawwidth="721" data-rawheight="449" class

Tensorflow从入门到精通之——Tensorflow基本操作

家住魔仙堡 提交于 2020-02-12 15:56:06
前边的章节介绍了什么是Tensorflow,本节将带大家真正走进Tensorflow的世界,学习Tensorflow一些基本的操作及使用方法。同时也欢迎大家关注我们的网站和系列教程: http://www.tensorflownews.com / ,学习更多的机器学习、深度学习的知识! Tensorflow是一种计算图模型,即用图的形式来表示运算过程的一种模型。Tensorflow程序一般分为图的构建和图的执行两个阶段。图的构建阶段也称为图的定义阶段,该过程会在图模型中定义所需的运算,每次运算的的结果以及原始的输入数据都可称为一个节点(operation ,缩写为op)。我们通过以下程序来说明图的构建过程: 程序2-1: 程序2-1定义了图的构建过程,“import tensorflow as tf”,是在python中导入tensorflow模块,并另起名为“tf”;接着定义了两个常量op,m1和m2,均为1*2的矩阵;最后将m1和m2的值作为输入创建一个矩阵加法op,并输出最后的结果result。 我们分析最终的输出结果可知,其并没有输出矩阵相加的结果,而是输出了一个包含三个属性的Tensor(Tensor的概念我们会在下一节中详细讲解,这里就不再赘述)。 以上过程便是图模型的构建阶段:只在图中定义所需要的运算,而没有去执行运算。我们可以用图2-1来表示: 图2-1

GPS时间序列分析(二)matlab语言分析

て烟熏妆下的殇ゞ 提交于 2020-02-12 12:25:03
GPS时间序列分析(二) matlab语言分析 1.简单的GPS时间序列 load E:\RMTE.txt yuanshi_dataWeidu = RMTE ( :,4 ) ';%将原始坐标赋值 yuanshi_dataJingdu=RMTE(:,3)' ; yuanshi_dataGaochen = RMTE ( :,5 ) ' ; yuanshi_data = [ yuanshi_dataWeidu ; yuanshi_dataJingdu ; yuanshi_dataGaochen ] ; [ col,raw ] = size ( yuanshi_data ) ; llh_Z_xyz = llh2xyz ( yuanshi_data ) ; %经纬度高程转换成xyz平面坐标,输出格式为:3行n列 %第一次转换后的xyz坐标减去第一次观测的xyz坐标,组成xyz变化量矩阵 llh_Z_xyz_X = llh_Z_xyz ( 1,: ) -mean ( llh_Z_xyz ( 1,: )) ; llh_Z_xyz_Y = llh_Z_xyz ( 2,: ) -mean ( llh_Z_xyz ( 2,: )) ; llh_Z_xyz_Z = llh_Z_xyz ( 3,: ) -mean ( llh_Z_xyz ( 3,: )) ; llh_Z_xyz_XYZ = [ llh_Z

R 基本函数总结

我只是一个虾纸丫 提交于 2020-02-11 09:49:05
基本 一、数据管理 vector:向量 numeric:数值型向量 logical:逻辑型向量 character;字符型向量 list:列表 data.frame:数据框 c:连接为向量或列表 length:求长度 subset:求子集 seq,from:to,sequence:等差序列 rep:重复 NA:缺失值 NULL:空对象 sort,order,unique,rev:排序 unlist:展平列表 attr,attributes:对象属性 mode,typeof:对象存储模式与类型 names:对象的名字属性 二、字符串处理 character:字符型向量 nchar:字符数 substr:取子串 format,formatC:把对象用格式转换为字符串 paste,strsplit:连接或拆分 charmatch,pmatch:字符串匹配 grep,sub,gsub:模式匹配与替换   三、复数 complex,Re,Im,Mod,Arg,Conj:复数函数   四、因子 factor:因子 codes:因子的编码 levels:因子的各水平的名字 nlevels:因子的水平个数 cut:把数值型对象分区间转换为因子 table:交叉频数表 split:按因子分组 aggregate:计算各数据子集的概括统计量 tapply:对“不规则”数组应用函数 数学 一、计算 +,

R语言:常用函数【转】

橙三吉。 提交于 2020-02-11 09:48:40
数据结构 一、数据管理 vector:向量 numeric:数值型向量 logical:逻辑型向量 character;字符型向量 list:列表 data.frame:数据框 c:连接为向量或列表 length:求长度 subset:求子集 seq,from:to,sequence:等差序列 rep:重复 NA:缺失值 NULL:空对象 sort,order,unique,rev:排序 unlist:展平列表 attr,attributes:对象属性 mode,typeof:对象存储模式与类型 names:对象的名字属性 二、字符串处理 character:字符型向量 nchar:字符数 substr:取子串 format,format C:把对象用格式转换为字符串 paste,strsplit:连接或拆分 charmatch,pmatch:字符串匹配 grep,sub,gsub:模式匹配与替换 三、复数 complex,Re,Im,Mod,Arg,Conj:复数函数 四、因子 factor:因子 codes:因子的编码 levels:因子的各水平的名字 nlevels:因子的水平个数 cut:把数值型对象分区间转换为因子 table:交叉频数表 split:按因子分组 aggregate:计算各数据子集的概括统计量 tapply:对“不规则”数组应用函数 数学相关计算 一、计算