Downloads · 30 days
17
40% of all-time downloads
DimitriosPanagoulias/MemoryBERT
MemoryBERT is a text classification model from DimitriosPanagoulias. Use it when you need a label for a piece of text. It is set up for transformers. The card lists the license as mit.
This project is part of the NOETIV initiative — a modular AI platform for healthcare proffesionals. 🔗 Visit us at noetiv.com
Downloads · 30 days
17
40% of all-time downloads
All-time downloads
43
Public
Parameters
125M
997 MB on disk
Likes
1
Public
Click a slice to open those files.
.bin499 MB · 50%
From the Hugging Face model README
This project is part of the NOETIV initiative — a modular AI platform for healthcare proffesionals.
🔗 Visit us at noetiv.com
A RoBERTa-based transformer model for Cognitive Memory Recognition (CMR) – classifying natural language into six memory categories inspired by cognitive science.
MemoryBERT is fine-tuned to classify user-generated text into:
This model supports research into memory-type classification, schema formation, and personalized AI interaction systems.
roberta-baseOn a synthetic 400-example test set balanced across classes:
| Class | Precision | Recall | F1-score | Support |
|---|---|---|---|---|
| Associative | 1.00 | 1.00 | 1.00 | 39 |
| Emotional | 1.00 | 1.00 | 1.00 | 40 |
| Episodic | 1.00 | 1.00 | 1.00 | 39 |
| Non-memory | 1.00 | 1.00 | 1.00 | 200 |
| Semantic | 1.00 | 1.00 | 1.00 | 40 |
| Spatial | 1.00 | 1.00 | 1.00 | 42 |
⚠️ Note: These results are from a synthetic dataset — further real-world validation is ongoing and expansion of baseline dataset used for version 1 of memoryBERT
MemoryBERT was trained on a synthetic dataset of 4,000 curated examples (2,000 memory and 2,000 non-memory)
Each entry is labeled with one of six memory types and tagged by domain and span group.
from transformers import RobertaTokenizer, RobertaForSequenceClassification
model = RobertaForSequenceClassification.from_pretrained("DimitriosPanagoulias/MemoryBERT")
tokenizer = RobertaTokenizer.from_pretrained("DimitriosPanagoulias/MemoryBERT")
def predict_memory_type(text):
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=128)
outputs = model(**inputs)
predicted_id = outputs.logits.argmax(dim=-1).item()
return model.config.id2label[predicted_id]
predict_memory_type("Without a map, I navigated the winding back roads to reach my childhood home.")
or via huggingface pipeline
# Use a pipeline as a high-level helper
from transformers import pipeline
import torch
device = 0 if torch.cuda.is_available() else -1 # 0 = GPU, -1 = CPU
pipe = pipeline("text-classification", model="DimitriosPanagoulias/MemoryBERT", device=device)
pipe("I remember the long walk to my childhood school.")
outputs:
[{'label': 'episodic', 'score': 0.9272529482841492}]
You can cite either one or both of the following previous related work:
Available at: https://ieeexplore.ieee.org/document/10849404
Available at: https://ieeexplore.ieee.org/document/10786703