forked from sergts/botnet-traffic-analysis
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or requestmodernizationModernizing code, dependencies, and structureModernizing code, dependencies, and structure
Description
Background
The 2020 research attempted to implement federated learning using TensorFlow Federated (TFF) 0.40.0, but:
- TFF 0.40.0 has unresolvable dependency conflicts (jaxlib==0.3.14 doesn't exist for Python 3.9+)
- The FL code (
train_federated_simulation.py) never successfully used botnet data - it still uses EMNIST digits - Time pressure + API complexity led to incomplete adaptation
See: docs/project-analysis/RETROSPECTIVE.md lines 103-143
Goals for Modern Branch
-
Evaluate modern TFF versions:
- TFF 0.60+ (2024 releases)
- Check if API has improved since 2020
- Verify TensorFlow 2.15+ compatibility
-
Alternative frameworks:
- Flower - Modern FL framework, framework-agnostic
- Better documentation than 2020-era TFF
- Active community support
-
Implementation research:
- Can we adapt tabular data (115 features) to FL architecture?
- Simulate multiple IoT devices as FL clients
- Compare centralized vs federated training results
-
Stretch goal:
- Actually implement FL with N-BaIoT dataset
- Per-device models with federated aggregation
- Demonstrate privacy-preserving botnet detection
Success Criteria
- Survey modern FL frameworks (TFF, Flower, PySyft)
- Prototype FL implementation with botnet data
- Compare accuracy: centralized vs federated
- Document findings and recommendations
Notes
- This is research/exploration, not a blocker
- Focus on modern main branch, not archive branches
- Original 2020 attempt was valid for the time - tools have improved
- May result in new paper/publication if successful
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestmodernizationModernizing code, dependencies, and structureModernizing code, dependencies, and structure