Views
No views yet
Predicted
change neutral sustain
Actual change 75 78 23
neutral 43 396 27
sustain 11 34 361from transformers import BertTokenizer, BertForSequenceClassification
2import torch
3
4# Load model and tokenizer
5model_name = "RyanDDD/bert-motivational-interviewing"
6tokenizer = BertTokenizer.from_pretrained(model_name)
7model = BertForSequenceClassification.from_pretrained(model_name)
8
9# Predict
10text = "I really want to quit smoking. It's been affecting my health."
11inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True, max_length=128)
12
13with torch.no_grad():
14 outputs = model(**inputs)
15 probs = torch.softmax(outputs.logits, dim=1)
16 pred = torch.argmax(probs, dim=1)
17
18label_map = model.config.id2label
19print(f"Talk type: {label_map[pred.item()]}")
20print(f"Confidence: {probs[0][pred].item():.2%}")1texts = [
2 "I want to stop drinking.",
3 "I don't think I have a problem.",
4 "I like drinking with my friends."
5]
6
7inputs = tokenizer(texts, return_tensors="pt", padding=True, truncation=True, max_length=128)
8
9with torch.no_grad():
10 outputs = model(**inputs)
11 probs = torch.softmax(outputs.logits, dim=1)
12 preds = torch.argmax(probs, dim=1)
13
14for text, pred, prob in zip(texts, preds, probs):
15 label = model.config.id2label[pred.item()]
16 confidence = prob[pred].item()
17 print(f"Text: {text}")
18 print(f"Type: {label} ({confidence:.1%})")
19 print()bert-base-uncased1@misc{bert-mi-classifier-2024,
2 author = {Ryan},
3 title = {BERT for Motivational Interviewing Client Talk Classification},
4 year = {2024},
5 publisher = {HuggingFace},
6 howpublished = {\url{https://huggingface.co/RyanDDD/bert-motivational-interviewing}}
7}