Skip to main content

Module bridge

Module bridge 

Source
Expand description

Neural → Probability Bridge

This module converts neural network outputs (softmax probability distributions) into probabilistic logic constructs used by XLOG’s inference engine.

§Architecture

Neural networks produce softmax outputs: [p1, p2, ..., pn] for n labels. These are converted to:

  1. Annotated Disjunctions: p1::pred(X,l1); p2::pred(X,l2); ...
  2. Circuit Leaves: Weighted leaf nodes for d-DNNF circuit evaluation
  3. Log Probabilities: For numerical stability in gradient computation

§Example

use xlog_neural::bridge::{NeuralBridge, NeuralOutput};

let output = NeuralOutput {
    values: vec![0.7, 0.2, 0.1],
    labels: vec!["a".to_string(), "b".to_string(), "c".to_string()],
};

let bridge = NeuralBridge::new();
let probs = bridge.to_ad_probabilities(&output);
// probs[0] = ADProbability { probability: 0.7, label: "a" }

Structs§

ADProbability
Annotated disjunction probability component.
CircuitLeaf
Circuit leaf node for d-DNNF evaluation.
NeuralBridge
Bridge for converting neural outputs to probabilistic constructs.
NeuralOutput
Neural network output with probability distribution over labels.