Instructions to use saribasmetehan/BERT-BankingClassifier with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use saribasmetehan/BERT-BankingClassifier with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="saribasmetehan/BERT-BankingClassifier")# Load model directly from transformers import AutoTokenizer, AutoModelForSequenceClassification tokenizer = AutoTokenizer.from_pretrained("saribasmetehan/BERT-BankingClassifier") model = AutoModelForSequenceClassification.from_pretrained("saribasmetehan/BERT-BankingClassifier") - Notebooks
- Google Colab
- Kaggle
BERT-BankingClassifier
This model is a fine-tuned version of google-bert/bert-base-uncased on an unknown dataset. It achieves the following results on the evaluation set:
- Loss: 0.2867
- Accuracy: 0.9326
Model description
This model is a BERT (bert-base-uncased) model fine-tuned using the Banking77 dataset for text classification tasks. Banking77 is a dataset designed to categorize customer support messages in the banking and finance domain into 77 distinct categories. This model is specifically tailored for classifying customer complaints and inquiries in the banking sector, helping to assign messages to the correct categories effectively. Fine-Tuning Process : https://github.com/saribasmetehan/bank_administrative_assistant/blob/main/BERT_BankingClassifier.ipynb
| Label Index | Intent Category |
|---|---|
| 0 | activate_my_card |
| 1 | age_limit |
| 2 | apple_pay_or_google_pay |
| 3 | atm_support |
| 4 | automatic_top_up |
| 5 | balance_not_updated_after_bank_transfer |
| 6 | balance_not_updated_after_cheque_or_cash_deposit |
| 7 | beneficiary_not_allowed |
| 8 | cancel_transfer |
| 9 | card_about_to_expire |
| 10 | card_acceptance |
| 11 | card_arrival |
| 12 | card_delivery_estimate |
| 13 | card_linking |
| 14 | card_not_working |
| 15 | card_payment_fee_charged |
| 16 | card_payment_not_recognised |
| 17 | card_payment_wrong_exchange_rate |
| 18 | card_swallowed |
| 19 | cash_withdrawal_charge |
| 20 | cash_withdrawal_not_recognised |
| 21 | change_pin |
| 22 | compromised_card |
| 23 | contactless_not_working |
| 24 | country_support |
| 25 | declined_card_payment |
| 26 | declined_cash_withdrawal |
| 27 | declined_transfer |
| 28 | direct_debit_payment_not_recognised |
| 29 | disposable_card_limits |
| 30 | edit_personal_details |
| 31 | exchange_charge |
| 32 | exchange_rate |
| 33 | exchange_via_app |
| 34 | extra_charge_on_statement |
| 35 | failed_transfer |
| 36 | fiat_currency_support |
| 37 | get_disposable_virtual_card |
| 38 | get_physical_card |
| 39 | getting_spare_card |
| 40 | getting_virtual_card |
| 41 | lost_or_stolen_card |
| 42 | lost_or_stolen_phone |
| 43 | order_physical_card |
| 44 | passcode_forgotten |
| 45 | pending_card_payment |
| 46 | pending_cash_withdrawal |
| 47 | pending_top_up |
| 48 | pending_transfer |
| 49 | pin_blocked |
| 50 | receiving_money |
| 51 | refund_not_showing_up |
| 52 | request_refund |
| 53 | reverted_card_payment |
| 54 | supported_cards_and_currencies |
| 55 | terminate_account |
| 56 | top_up_by_bank_transfer_charge |
| 57 | top_up_by_card_charge |
| 58 | top_up_by_cash_or_cheque |
| 59 | top_up_failed |
| 60 | top_up_limits |
| 61 | top_up_reverted |
| 62 | topping_up_by_card |
| 63 | transaction_charged_twice |
| 64 | transfer_fee_charged |
| 65 | transfer_into_account |
| 66 | transfer_not_received_by_recipient |
| 67 | transfer_timing |
| 68 | unable_to_verify_identity |
| 69 | verify_my_identity |
| 70 | verify_source_of_funds |
| 71 | verify_top_up |
| 72 | virtual_card_not_working |
| 73 | visa_or_mastercard |
| 74 | why_verify_identity |
| 75 | wrong_amount_of_cash_received |
| 76 | wrong_exchange_rate_for_cash_withdrawal |
Example
from transformers import pipeline, AutoTokenizer
text = "i forgot my PIN"
model_id = "saribasmetehan/BERT-BankingClassifier"
classifier = pipeline("text-classification", model=model_id)
preds = classifier(text)
print(preds)
#[{'label': 'LABEL_27', 'score': 0.9552194476127625}]
Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 5e-05
- train_batch_size: 16
- eval_batch_size: 16
- seed: 42
- optimizer: Use adamw_torch with betas=(0.9,0.999) and epsilon=1e-08 and optimizer_args=No additional optimizer arguments
- lr_scheduler_type: linear
- num_epochs: 4
Training results
| Training Loss | Epoch | Step | Validation Loss | Accuracy |
|---|---|---|---|---|
| 2.5368 | 1.0 | 732 | 0.5945 | 0.8862 |
| 0.6013 | 2.0 | 1464 | 0.3156 | 0.9283 |
| 0.1507 | 3.0 | 2196 | 0.2895 | 0.9290 |
| 0.089 | 4.0 | 2928 | 0.2867 | 0.9326 |
Framework versions
- Transformers 4.46.3
- Pytorch 2.5.1+cu121
- Datasets 3.1.0
- Tokenizers 0.20.3
- Downloads last month
- 6
Model tree for saribasmetehan/BERT-BankingClassifier
Base model
google-bert/bert-base-uncased