Instructions to use Belnadino/SmartHome-AI-IoT-Models-Verifier with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Belnadino/SmartHome-AI-IoT-Models-Verifier with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="Belnadino/SmartHome-AI-IoT-Models-Verifier")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Belnadino/SmartHome-AI-IoT-Models-Verifier", device_map="auto") - Notebooks
- Google Colab
- Kaggle
SmartHome-AI-IoT Verifier Model
Overview
The SmartHome-AI-IoT Verifier Model is a lightweight Natural Language Understanding (NLU) model designed to validate user commands before execution in a smart-home IoT environment.
The model determines whether a given natural language command is valid for a specified smart-home context, including room location and supported automation scenarios.
The verifier acts as the first stage of the SmartHome-AI-IoT framework to prevent invalid or unsupported commands from reaching downstream device-control modules.
Authors
Belnadino Mgimba
Department of Computer Science, Durham University, Durham, United Kingdom
Anish Jindal
Department of Computer Science, Durham University, Durham, United Kingdom
Project
This model is part of the:
SmartHome-AI-IoT Framework
"A Natural Language Understanding, Low-Latency, Context-Aware, Multi-Device Control and Self-Learning SmartHome IoT Framework"
Developed for research on:
- Natural language understanding for IoT
- Context-aware smart-home automation
- Edge AI deployment
- Human-in-the-loop adaptive systems
Intended Use
This model is intended for research and development of:
- Smart-home natural language interfaces
- Context-aware IoT control systems
- Human-in-the-loop automation
- Edge AI-based intelligent environments
The model is not intended for safety-critical automation without additional validation.
Model Architecture
- Base model: DistilBERT
- Framework: PyTorch + Hugging Face Transformers
- Task: Binary text classification
- Output:
- Valid command
- Invalid command
The model uses natural language commands combined with contextual information such as:
- User command
- Room location
- Smart-home scenario
Example input: Command: Turn on the bedroom light Location: Bedroom
Example output: Valid: True Confidence: 0.99
Training Dataset
The model was trained using the SmartHomeIoTNLU dataset.
Dataset characteristics:
- Synthetic smart-home dataset
- Natural language commands
- Context information
- Room-aware command validation
- Single-device and multi-device scenarios
Dataset repository:
Training Configuration
- Model: distilbert-base-uncased
- Maximum sequence length: 64
- Batch size: 16
- Learning rate: 2e-5
- Optimizer: AdamW
- Epochs: 3
- Loss function: Binary Cross Entropy with Logits
Performance
Evaluation results:
| Metric | Value |
|---|---|
| Accuracy | 0.9839 |
| F1-score (samples) | 0.9946 |
| F1-score (micro) | 0.9978 |
| Hamming Loss | 0.0004 |
| Brier Score | 0.0002 |
Limitations
- The model is trained on synthetic smart-home commands.
- Real-world user expressions may contain unseen behaviours.
- Additional validation is required before deployment in safety-critical environments.
Citation
If you use this model, please cite: SmartHome-AI-IoT Framework: A Natural Language Understanding, Low-Latency, Context-Aware, Multi-Device Control and Self-Learning SmartHome IoT Framework.
Related Resources
GitHub implementation: [Your GitHub URL]
SmartHomeNLU Dataset: [Dataset URL]
License
Apache-2.0
- Downloads last month
- 7