--- license: cc-by-4.0 language: - ru - kbd - krc metrics: - accuracy pipeline_tag: text-classification datasets: - alimboff/adiga_taulu_corpus library_name: transformers tags: - code --- ### Zehedz #### Описание модели Модель предназначена для классификации текстов на три языка: русский (rus_Cyrl), кабардино-черкесский (kbd_Cyrl) и карачаево-балкарский (krc_Cyrl). Построена на архитектуре BERT и обучена на корпусе, который включает данные для каждого из этих языков. #### Результаты обучения ``` Epoch 1/3 Train loss: 0.0431 | accuracy: 0.9889 Val loss: 0.0014 | accuracy: 1.0000 ---------- Epoch 2/3 Train loss: 0.0111 | accuracy: 0.9974 Val loss: 0.0023 | accuracy: 0.9994 ---------- Epoch 3/3 Train loss: 0.0081 | accuracy: 0.9982 Val loss: 0.0013 | accuracy: 1.0000 ``` #### Производительность - **Средняя скорость работы на GPU (CUDA):** 0.008 секунд на одно предсказание - **Средняя скорость работы на CPU:** 0.05 секунд на одно предсказание #### Использование модели ##### Код для работы с моделью: ```python import torch from transformers import BertTokenizer, BertForSequenceClassification model_path = 'alimboff/rubert-kbd-krc-36K' model = BertForSequenceClassification.from_pretrained(model_path, num_labels=3, problem_type="single_label_classification") tokenizer = BertTokenizer.from_pretrained(model_path) def predict(text): device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") model.to(device) model.eval() encoding = tokenizer.encode_plus( text, add_special_tokens=True, max_length=512, return_token_type_ids=False, truncation=True, padding='max_length', return_attention_mask=True, return_tensors='pt', ) input_ids = encoding['input_ids'].to(device) attention_mask = encoding['attention_mask'].to(device) with torch.no_grad(): outputs = model(input_ids=input_ids, attention_mask=attention_mask) logits = outputs.logits labels = ['kbd_Cyrl', 'rus_Cyrl', 'krc_Cyrl'] predicted_class = labels[torch.argmax(logits, dim=1).cpu().numpy()[0]] return predicted_class text = "Привет, как дела?" print(predict(text)) ``` #### Использование в API Space на Hugging Face ```python from gradio_client import Client client = Client("alimboff/zehedz") result = client.predict( text="Добрый день!", api_name="/predict" ) print(result) ``` Эта модель идеально подходит для задач, связанных с автоматическим определением языка текста в многоязычных системах и приложениях.