|
|
--- |
|
|
tags: |
|
|
- bloom-taxonomy |
|
|
- classification |
|
|
- bert |
|
|
- education |
|
|
license: apache-2.0 |
|
|
--- |
|
|
|
|
|
# Bloom's Taxonomy Classifier |
|
|
|
|
|
This is a fine-tuned BERT model for classifying educational learning outcomes according to Bloom's Taxonomy. |
|
|
|
|
|
## Model Description |
|
|
|
|
|
This model is based on `bert-base-uncased` and has been fine-tuned to classify learning outcomes into six categories of Bloom's Taxonomy: |
|
|
- Remember |
|
|
- Understand |
|
|
- Apply |
|
|
- Analyze |
|
|
- Evaluate |
|
|
- Create |
|
|
|
|
|
## Intended Use |
|
|
|
|
|
This model can be used to automatically classify learning outcomes or educational objectives into Bloom's Taxonomy levels, helping educators and curriculum designers understand the cognitive complexity of learning goals. |
|
|
|
|
|
## Usage |
|
|
|
|
|
```python |
|
|
from transformers import AutoTokenizer, AutoModelForSequenceClassification |
|
|
import torch |
|
|
|
|
|
# Load model and tokenizer |
|
|
model_name = "phoenix28/bloom-taxonomy-classifier" |
|
|
tokenizer = AutoTokenizer.from_pretrained(model_name) |
|
|
model = AutoModelForSequenceClassification.from_pretrained(model_name) |
|
|
|
|
|
# Example text |
|
|
text = "Describe the key concepts of machine learning." |
|
|
|
|
|
# Tokenize and predict |
|
|
inputs = tokenizer(text, truncation=True, padding='max_length', max_length=128, return_tensors='pt') |
|
|
|
|
|
model.eval() |
|
|
with torch.no_grad(): |
|
|
outputs = model(**inputs) |
|
|
logits = outputs.logits |
|
|
|
|
|
# Apply sigmoid for multi-label classification |
|
|
sigmoid = torch.nn.Sigmoid() |
|
|
probs = sigmoid(logits).squeeze().numpy() |
|
|
|
|
|
# Map to categories |
|
|
categories = ['Remember', 'Understand', 'Apply', 'Analyze', 'Evaluate', 'Create'] |
|
|
threshold = 0.5 |
|
|
|
|
|
predictions = {} |
|
|
for i, category in enumerate(categories): |
|
|
predictions[category] = { |
|
|
'probability': float(probs[i]), |
|
|
'predicted': bool(probs[i] > threshold) |
|
|
} |
|
|
|
|
|
print(predictions) |
|
|
``` |
|
|
|
|
|
## Training Data |
|
|
|
|
|
This model was trained on a dataset of learning outcomes labeled with Bloom's Taxonomy categories. |
|
|
|
|
|
## Model Performance |
|
|
|
|
|
The model achieves strong performance across all Bloom's Taxonomy levels with: |
|
|
- Micro-averaged F1 Score |
|
|
- Per-class precision and recall metrics |
|
|
|
|
|
See the training logs for detailed evaluation metrics. |
|
|
|
|
|
## License |
|
|
|
|
|
Apache 2.0 |
|
|
|