Visualization Tools
Visual3D.render
Renders the neural network into the 3D workspace using Parts and Beams.
lua
(model: Module, origin: CFrame, options: RenderOptions?) -> RenderHandlelua
{
layerSizeHints: {number}?,
maxNeuronsPerLayer: number?,
maxBeamsPerEdge: number?,
layerSpacing: number?,
boxDepth: number?,
unitHeight: number?,
updateInterval: number?,
mode: "weights" | "grads",
palette: {Color3}?,
name: string?,
getActivations: ((model) -> {{number}})?,
showNeuronValues: boolean?,
valueEvery: number?,
valueDecimals: number?,
valueColor: Color3?,
valueSize: Vector2?,
sparsity: number?
}lua
Gradien.Util.Visual3D.render(networkOrAgent, CFrame, {
layerSizeHints = {#States, HIDDEN, HIDDEN, HIDDEN, #Actions}, -- depth 3
maxNeuronsPerLayer = 48,
maxBeamsPerEdge = 256,
layerSpacing = 10,
unitHeight = 0.12,
updateInterval = 1,
mode = "weights", -- or "grads"
getActivations = getActivations, -- or nil?
showNeuronValues = true,
valueEvery = 1,
valueDecimals = 2,
})Visual2D.render
Renders the network onto a UI layer.
lua
(model: Module, parent: Instance, options: RenderOptions?) -> RenderHandlelua
{
size: UDim2?,
position: UDim2?,
anchorPoint: Vector2?,
mode: "weights" | "grads",
palette: {Color3}?,
-- ... (similar to 3D options)
}lua
Gradien.Util.Visual2D.render(networkOrAgent, SurfaceGui, {
layerSizeHints = {#States, HIDDEN, HIDDEN, HIDDEN, #Actions}, -- depth 3
mode = "weights", -- or "grads"
maxNeuronsPerLayer = 48,
maxLinesPerEdge = 256,
showLayerBoxes = true,
updateInterval = 1,
})