layer_min_cut_pool: MinCutPool

Description Usage

View source: R/layers_pool.R

Description

\loadmathjax

A minCUT pooling layer as presented by Bianchi et al. (2019).

Mode: batch.

This layer computes a soft clustering \mjeqn\boldsymbolS of the input graphs using a MLP, and reduces graphs as follows:

\mjdeqn\boldsymbol

S = \textrmMLP(\boldsymbolX); \\boldsymbolA' = \boldsymbolS^\top \boldsymbolA \boldsymbolS; \boldsymbolX' = \boldsymbolS^\top \boldsymbolX;

where MLP is a multi-layer perceptron with softmax output. Two auxiliary loss terms are also added to the model: the minCUT loss \mjdeqn- \frac \mathrmTr(\boldsymbolS^\top \boldsymbolA \boldsymbolS) \mathrmTr(\boldsymbolS^\top \boldsymbolD \boldsymbolS) and the orthogonality loss \mjdeqn\left\|\frac\boldsymbolS^\top \boldsymbolS\| \boldsymbolS^\top \boldsymbolS \| _ F- \frac\boldsymbolI _ K\sqrtK\right\| _ F.

The layer can be used without a supervised loss, to compute node clustering simply by minimizing the two auxiliary losses.

Input

Output

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
layer_min_cut_pool(
  object,
  k,
  mlp_hidden = NULL,
  mlp_activation = "relu",
  return_mask = FALSE,
  activation = NULL,
  use_bias = TRUE,
  kernel_initializer = "glorot_uniform",
  bias_initializer = "zeros",
  kernel_regularizer = NULL,
  bias_regularizer = NULL,
  kernel_constraint = NULL,
  bias_constraint = NULL,
  ...
)

rdinnager/rspektral documentation built on June 12, 2021, 1:26 a.m.