R igraph 手册页

如果您从 R 中使用 igraph,请使用此选项

embed_adjacency_matrix {igraph}R 文档

邻接矩阵的谱嵌入

描述

图的邻接矩阵的谱分解。

用法

embed_adjacency_matrix(
  graph,
  no,
  weights = NULL,
  which = c("lm", "la", "sa"),
  scaled = TRUE,
  cvec = graph.strength(graph, weights = weights)/(vcount(graph) - 1),
  options = igraph.arpack.default
)

参数

输入图,有向或无向。

一个整数标量。此值是谱嵌入的嵌入维度。应小于顶点数。最大的 no 维非零奇异值用于谱嵌入。

权重

用于计算加权嵌入的可选正权重向量。如果图具有 weight 边属性,则默认使用此属性。在加权嵌入中,使用边权重代替二进制邻接矩阵。

哪个

要使用哪个特征值(或奇异值,对于有向图)。“lm”表示具有最大幅度的特征值,“la”是(代数)最大的特征值,“sa”是(代数)最小的特征值。默认值为“lm”。请注意,对于有向图,“la”和“lm”是等效的,因为奇异值用于排序。

缩放

逻辑标量,如果 FALSE,则返回 UV 而不是 XY

cvec

一个数值向量,其长度是图中顶点的数量。此向量被添加到邻接矩阵的对角线。

选项

一个命名列表,包含 ARPACK 中 SVD 计算算法的参数。默认情况下,值列表分配由 igraph.arpack.default 给出的值。

详细信息

此函数基于其邻接矩阵 A 计算图的 no 维欧几里得表示。此表示通过邻接矩阵的奇异值分解 A=UDV^T 计算。在图中,如果该图是使用 R^{no} 中每个顶点的潜在位置向量生成的随机点积图,则嵌入将提供这些潜在向量的估计。

对于无向图,潜在位置计算为 X=U^{no}D^{1/2},其中 U^{no} 等于 U 的前 no 列,D^{1/2} 是一个对角矩阵,其对角线上包含前 no 个奇异值。

对于有向图,嵌入定义为对 X=U^{no}D^{1/2}Y=V^{no}D^{1/2}。(对于无向图,U=V,因此保留其中一个就足够了。)

一个包含以下条目的列表

X

估计的潜在位置,一个 nno 列的矩阵,n 是顶点数。

Y

无向图为 NULL,有向图的潜在位置的后半部分,一个 nno 列的矩阵,n 是顶点数。

D

算法计算出的特征值(对于无向图)或奇异值(对于有向图)。

选项

一个命名列表,有关底层 ARPACK 计算的信息。有关详细信息,请参见 arpack

参考

Sussman, D.L., Tang, M., Fishkind, D.E., Priebe, C.E. A Consistent Adjacency Spectral Embedding for Stochastic Blockmodel Graphs, Journal of the American Statistical Association, Vol. 107(499), 2012

参见

sample_dot_product

示例


## A small graph
lpvs <- matrix(rnorm(200), 20, 10)
lpvs <- apply(lpvs, 2, function(x) { return (abs(x)/sqrt(sum(x^2))) })
RDP <- sample_dot_product(lpvs)
embed <- embed_adjacency_matrix(RDP, 5)

[包 igraph 版本 1.3.5 索引]