Module visualization

Source
Expand description

Visualization tools module Visualization tools for neural networks

This module provides comprehensive visualization capabilities including:

  • Network architecture visualization with interactive graphs
  • Training curves and metrics plotting
  • Layer activation maps and feature visualization
  • Attention mechanisms visualization
  • Interactive dashboards and real-time monitoring

§Module Organization

  • [config] - Configuration types and settings for all visualization aspects
  • [network] - Network architecture visualization and layout algorithms
  • training - Training metrics, curves, and performance monitoring
  • activations - Layer activation analysis and feature map visualization
  • [attention] - Attention mechanism visualization and analysis

§Basic Usage

use scirs2_neural::visualization::{VisualizationConfig, NetworkVisualizer};
use scirs2_neural::models::Sequential;
use scirs2_neural::layers::Dense;
use rand::SeedableRng;

// Create a simple model
let mut rng = rand::rngs::StdRng::seed_from_u64(42);
let mut model = Sequential::<f32>::new();
model.add_layer(Dense::new(784, 128, Some("relu"), &mut rng).unwrap());
model.add_layer(Dense::new(128, 10, Some("softmax"), &mut rng).unwrap());

// Configure visualization
let config = VisualizationConfig::default();

// Create network visualizer
let mut visualizer = NetworkVisualizer::new(model, config);

// Generate architecture visualization
// Note: This is a placeholder - actual implementation coming soon
// let output_path = visualizer.visualize_architecture()?;
// println!("Network visualization saved to: {:?}", output_path);

Re-exports§

pub use config::ColorPalette;
pub use config::CustomTheme;
pub use config::DownsamplingStrategy;
pub use config::FontConfig;
pub use config::GridConfig;
pub use config::ImageFormat;
pub use config::InteractiveConfig;
pub use config::LayoutConfig;
pub use config::Margins;
pub use config::PerformanceConfig;
pub use config::StyleConfig;
pub use config::Theme;
pub use config::VisualizationConfig;
pub use network::ArrowStyle;
pub use network::BoundingBox;
pub use network::Connection;
pub use network::ConnectionType;
pub use network::ConnectionVisualProps;
pub use network::DataFlowInfo;
pub use network::LayerIOInfo;
pub use network::LayerInfo;
pub use network::LayerPosition;
pub use network::LayerVisualProps;
pub use network::LayoutAlgorithm;
pub use network::LineStyle;
pub use network::NetworkLayout;
pub use network::NetworkVisualizer;
pub use network::Point2D;
pub use network::Size2D;
pub use network::ThroughputInfo;
pub use training::AxisConfig;
pub use training::AxisScale;
pub use training::LineStyleConfig;
pub use training::MarkerConfig;
pub use training::MarkerShape;
pub use training::PlotConfig;
pub use training::PlotType;
pub use training::SeriesConfig;
pub use training::SystemMetrics;
pub use training::TickConfig;
pub use training::TickFormat;
pub use training::TrainingMetrics;
pub use training::TrainingVisualizer;
pub use training::UpdateMode;
pub use activations::ActivationHistogram;
pub use activations::ActivationNormalization;
pub use activations::ActivationStatistics;
pub use activations::ActivationVisualizationOptions;
pub use activations::ActivationVisualizationType;
pub use activations::ActivationVisualizer;
pub use activations::ChannelAggregation;
pub use activations::Colormap;
pub use activations::FeatureMapInfo;
pub use attention::AttentionData;
pub use attention::AttentionStatistics;
pub use attention::AttentionVisualizationOptions;
pub use attention::AttentionVisualizationType;
pub use attention::AttentionVisualizer;
pub use attention::CompressionSettings;
pub use attention::DataFormat;
pub use attention::ExportFormat;
pub use attention::ExportOptions;
pub use attention::ExportQuality;
pub use attention::HeadAggregation;
pub use attention::HeadInfo;
pub use attention::HeadSelection;
pub use attention::HighlightConfig;
pub use attention::HighlightStyle;
pub use attention::Resolution;
pub use attention::VideoFormat;

Modules§

activations
Layer activation and feature visualization for neural networks
attention
Attention mechanism visualization for neural networks
config
Configuration types and settings for neural network visualization
network
Network architecture visualization for neural networks
training
Training metrics and curve visualization for neural networks
utils
Utility functions for visualization

Structs§

VisualizationConfigBuilder
Builder pattern for creating visualization configurations
VisualizationSuite
Combined visualization suite for comprehensive neural network analysis

Type Aliases§

ActivationViz
Convenient type alias for activation visualization
AttentionViz
Convenient type alias for attention visualization
NetworkViz
Convenient type alias for network visualization
TrainingViz
Convenient type alias for training visualization