fancyzhx/yelp_polarity
Viewer • Updated • 598k • 14.4k • 21
How to use JiaqiLee/robust-bert-yelp with Transformers:
# Use a pipeline as a high-level helper
from transformers import pipeline
pipe = pipeline("text-classification", model="JiaqiLee/robust-bert-yelp") # Load model directly
from transformers import AutoTokenizer, AutoModelForSequenceClassification
tokenizer = AutoTokenizer.from_pretrained("JiaqiLee/robust-bert-yelp")
model = AutoModelForSequenceClassification.from_pretrained("JiaqiLee/robust-bert-yelp")This model is a fine-tuned version of the bert-base-uncased model to classify the sentiment of yelp reviews.
The BERT model is finetuned using adversarial training to boost robustness against textual adversarial attacks.
You can use the model with the following code.
from transformers import BertForSequenceClassification, BertTokenizer, TextClassificationPipeline
model_path = "JiaqiLee/robust-bert-yelp"
tokenizer = BertTokenizer.from_pretrained(model_path)
model = BertForSequenceClassification.from_pretrained(model_path, num_labels=2)
pipeline = TextClassificationPipeline(model=model, tokenizer=tokenizer)
print(pipeline("Definitely a greasy spoon! Always packed here and always a wait but worth it."))
The training data comes from Huggingface yelp polarity dataset. We use 90% of the train.csv data to train the model.
We augment original training data with adversarial examples generated by PWWS, TextBugger and TextFooler.
The model achieves 0.9532 accuracy in yelp polarity test dataset.