Getting Started with Neurogebra¶
Installation¶
For optional features:
pip install neurogebra[viz] # Visualization tools
pip install neurogebra[fast] # Performance optimizations
pip install neurogebra[frameworks] # PyTorch, TensorFlow support
pip install neurogebra[all] # Everything
Your First Expression¶
from neurogebra import MathForge
# Create forge instance
forge = MathForge()
# Get an activation function
relu = forge.get("relu")
# Evaluate it
result = relu.eval(x=5)
print(result) # 5
result = relu.eval(x=-3)
print(result) # 0
Understanding Expressions¶
# Get explanation
print(relu.explain())
# See the formula (LaTeX)
print(relu.formula)
# Get gradient
relu_grad = relu.gradient("x")
print(relu_grad)
Exploring Available Expressions¶
# List all expressions
print(forge.list_all())
# List by category
print(forge.list_all(category="activation"))
print(forge.list_all(category="loss"))
# Search
results = forge.search("classification")
print(results)
Composing Expressions¶
# Get multiple expressions
mse = forge.get("mse")
mae = forge.get("mae")
# Arithmetic composition
hybrid_loss = 0.7 * mse + 0.3 * mae
# String-based composition
custom_loss = forge.compose("mse + 0.1*mae")
Training Expressions¶
import numpy as np
from neurogebra import Expression
from neurogebra.core.trainer import Trainer
# Create trainable expression
expr = Expression(
"my_line",
"m*x + b",
params={"m": 0.0, "b": 0.0},
trainable_params=["m", "b"]
)
# Generate synthetic data
X = np.linspace(0, 5, 50)
y = 2 * X + 1
# Train
trainer = Trainer(expr, learning_rate=0.01)
history = trainer.fit(X, y, epochs=100)
print(f"Learned: m={expr.params['m']:.2f}, b={expr.params['b']:.2f}")
Next Steps¶
- Beginner Tutorial - Learn the fundamentals
- Intermediate Tutorial - Advanced features
- Advanced Tutorial - Expert-level usage