Quick Start Guide
This guide will help you get started with Cohomological Risk Scoring in 5 minutes.
Installation
pip install cohomological-risk-scoring
Basic Usage
1. Import the Package
from cohomological_risk_scoring import PCRScorer, FinancialSheaf
import numpy as np
2. Prepare Your Data
You need: - Node features: A matrix where each row represents features of a financial entity - Edges: List of tuples representing connections (transactions)
# Example: 20 financial entities with 4 features each
n_nodes = 20
features = np.random.randn(n_nodes, 4)
# Example: Random transaction network
edges = [(i, j) for i in range(n_nodes)
for j in range(i+1, n_nodes)
if np.random.random() > 0.7]
3. Compute Risk Scores
# Initialize scorer
scorer = PCRScorer()
# Fit the model
scorer.fit(features, edges)
# Get risk scores for all nodes
risk_scores = scorer.compute_all_scores()
# Classify entities by risk level
risk_classes = scorer.get_risk_classes()
print(f"High Risk: {risk_classes['high']}")
print(f"Medium Risk: {risk_classes['medium']}")
print(f"Low Risk: {risk_classes['low']}")
4. Visualize Results
# Visualize persistence diagram
scorer.visualize_persistence()
# Generate full report
report = scorer.generate_report()
print(report)
Advanced Usage
Working with Real Financial Data
import pandas as pd
from cohomological_risk_scoring.utils import load_transaction_data
# Load your transaction data
transactions = pd.read_csv('transactions.csv')
# Convert to graph format
edges = list(zip(transactions['from'], transactions['to']))
# Extract features per entity
features = extract_features(transactions) # Your feature extraction
# Compute risk
scorer = PCRScorer()
scorer.fit(features, edges)
scores = scorer.compute_all_scores()
Customizing Filtration
# Use custom filtration values
filtration_values = np.linspace(0, 1, 20)
scorer = PCRScorer()
scorer.fit(features, edges, filtration=filtration_values)
What’s Next?
Explore the API Reference for detailed documentation
Read the Theoretical Background for mathematical background
Check out Examples for real-world applications