Table of Contents

Class SpiralNetOptions

Namespace
AiDotNet.Models.Options
Assembly
AiDotNet.dll

Configuration options for SpiralNet++ mesh neural network.

public class SpiralNetOptions
Inheritance
SpiralNetOptions
Inherited Members

Remarks

SpiralNet++ is a mesh convolution architecture that uses spiral sequences to define consistent neighbor orderings on irregular mesh vertices.

For Beginners: These options control how the SpiralNet++ network processes 3D mesh data. Key settings include: - SpiralLength: How many neighbors to consider for each vertex - ConvChannels: Feature sizes at each layer - PoolRatios: How much to simplify the mesh at each pooling step

Properties

ConvChannels

Gets or sets the channel sizes for each convolution layer.

public int[] ConvChannels { get; set; }

Property Value

int[]

Default is [32, 64, 128, 256].

DropoutRate

Gets or sets the dropout rate for regularization.

public double DropoutRate { get; set; }

Property Value

double

Default is 0.5.

FullyConnectedSizes

Gets or sets the sizes of fully connected layers before output.

public int[] FullyConnectedSizes { get; set; }

Property Value

int[]

Default is [256, 128].

IncludeCoordinates

Gets or sets whether to include vertex coordinates as input features.

public bool IncludeCoordinates { get; set; }

Property Value

bool

Default is true.

IncludeNormals

Gets or sets whether to include vertex normals as input features.

public bool IncludeNormals { get; set; }

Property Value

bool

Default is false.

InputFeatures

Gets or sets the number of input features per vertex.

public int InputFeatures { get; set; }

Property Value

int

Default is 3 (x, y, z coordinates).

NumClasses

Gets or sets the number of output classes for classification.

public int NumClasses { get; set; }

Property Value

int

Default is 40 (ModelNet40 classes).

PoolRatios

Gets or sets the pooling ratios for mesh simplification.

public double[] PoolRatios { get; set; }

Property Value

double[]

Default is [0.5, 0.5] for two pooling layers.

Remarks

Each ratio specifies what fraction of vertices to keep after pooling. A ratio of 0.5 keeps half the vertices.

SpiralLength

Gets or sets the length of the spiral sequence for convolutions.

public int SpiralLength { get; set; }

Property Value

int

Default is 9 neighbors per spiral.

UseBatchNorm

Gets or sets whether to use batch normalization.

public bool UseBatchNorm { get; set; }

Property Value

bool

Default is true.

UseGlobalAveragePooling

Gets or sets whether to use global average pooling before classification.

public bool UseGlobalAveragePooling { get; set; }

Property Value

bool

Default is true.