CoolFace
Modelpublic

pcwoods/2026-24679-distilbert-study-spots

sourceHugging Faceapache-2.0updated 1d agoView on Hugging Face
0likes
Model Card

Study-Spot Verdict Classifier

This model classifies a short description of a campus location as Not good for studying (`0`) or Good for studying (`1`). It fine-tunes DistilBERT with norm-fit PEFT in AutoGluon MultiModal.

Inputs and outputs

Supply a pandas DataFrame with a text column. predict() returns 0 or 1.

LabelMeaning
0Not good for studying
1Good for studying

Data and training

Source: Study-spot passages, short descriptions of CMU and Pittsburgh study locations. Published splits were used unchanged. Augmented variants appear in training only, and no parent_id crosses splits.

PartitionRows
Training1,151
Validation15 (originals)
Test15 (originals)
Training settingRecorded value
FrameworkAutoGluon MultiModal 1.6.1
Text backbonedistilbert-base-uncased, max 128 tokens
Fine-tuning modenorm_fit: 62,978 of 66.4 M parameters trainable (0.095%)
OptimizerLearning rate 2e-5, layerwise decay, weight decay 0.01
Batch size and epochs8; 5 epochs (720 steps)
Search spaceNone; fine-tuning mode chosen manually (bit_fit / norm_fit / full)
Checkpoint selectionBest single epoch by validation accuracy (epoch 2)
Text augmentationDisabled
Seed24679
EnvironmentColab CPU (2 vCPU, 12.7 GB RAM, no GPU); Linux; Python 3.13.15; PyTorch 2.11.0+cpu

Evaluation

MetricValidationTest
Accuracy0.667 (10/15)0.733 (11/15)
Weighted F10.6640.731

Three of the four test errors were Not-good passages predicted as Good, and the fourth was the reverse. The misclassified Not-good passages mix praise with a negative verdict, which suggests the model tracks sentiment words more than the conclusion. Each prediction moves accuracy by about 7 points. Only 0.095% of weights were updated, and validation did not improve after epoch 2.

Load and predict

python
from huggingface_hub import snapshot_download
from autogluon.multimodal import MultiModalPredictor
import pandas as pd
 
path = snapshot_download("pcwoods/2026-24679-distilbert-study-spots", allow_patterns="automm/*")
predictor = MultiModalPredictor.load(f"{path}/automm")
print(predictor.predict(pd.DataFrame({"text": ["Quiet library with big tables."]})))

The automm/ folder also contains requirements.txt and model_notes.json.

Licensing and provenance

The model is released under Apache-2.0, matching DistilBERT. Refer to the dataset card for the data's terms.

AI usage disclosure

Claude was utilized to help modify an existing notebook template. Additionally, Claude was used to assist with model card creation.