Kikbert / README.md
fhenrivx's picture
Update README.md
0637144 verified
metadata
language: '-pt'
tags:
  - kikbert
  - transformer
  - roberta
  - masked-language-model
  - nlp
  - african-language
license: apache-2.0
datasets:
  - kikongo_corpus
metrics:
  - accuracy
  - perplexity
model-index:
  - name: KiKBERT
    results:
      - task:
          name: Masked Language Modeling
          type: masked-language-modeling
        dataset:
          name: Kikongo Corpus
          type: text
        metrics:
          - name: Accuracy
            type: accuracy
            value: 0.95
          - name: Perplexity
            type: perplexity
            value: 12.5

KiKBERT: Modelo de Linguagem para Kikongo

KiKBERT é o primeiro modelo Transformer desenvolvido especificamente para a língua Kikongo, baseado na arquitetura RoBERTa-base.
O modelo foi treinado com um grande corpus textual de Kikongo, incluindo dados linguísticos, morfológicos e contextuais, provenientes de textos literários, religiosos e culturais.


Arquitetura do Modelo

  • Backbone: RoBERTa-base
  • Número de camadas: 12
  • Cabeças de atenção: 12
  • Dimensão oculta: 768
  • Tarefas principais:
    • Masked Language Modeling (treino principal)
    • Análise morfológica
    • Classificação de sentimentos

O que é o Backbone?

O backbone é a espinha dorsal do modelo — a parte responsável por extrair representações (features) linguísticas a partir do texto.
No KiKBERT, o backbone é o RoBERTa-base, que foi adaptado e reentreinado com o corpus Kikongo para aprender as dependências e estruturas linguísticas dessa língua.


Dados de Treino

O modelo foi treinado com o Kikongo Corpus, um conjunto cuidadosamente compilado com mais de 150.000 palavras, incluindo variantes regionais como:

  • Kisikongo
  • Kiyombe
  • Kimbata
  • Kisolongo

O corpus abrange textos religiosos, literários, conversacionais e educacionais, permitindo uma cobertura lexical e morfológica ampla da língua Kikongo.


Aplicações Práticas

  • Análise Sintática: identificação da estrutura das frases e relações entre palavras.
  • Análise Morfológica: classificação das palavras em suas classes gramaticais (substantivos, verbos, adjetivos, etc.).
  • Sumarização de Texto: geração de resumos de textos escritos em Kikongo.
  • Ferramentas de Processamento de Linguagem Natural para línguas bantu

Desempenho

image

Classe Precisão Recall F1-score Suporte
ADJ 0.79 0.97 0.87 65
ADV 0.97 0.79 0.87 81
CONJ 1.0 1.0 1.0 92
INTERJ 0.89 0.86 0.87 90
NUM 1.0 1.0 1.0 75
PREP 0.91 0.93 0.92 146
PRON 1.0 1.0 1.0 70
SUBST 1.0 1.0 1.0 75
VERB 1.0 1.0 1.0 70
Métrica Valor
Accuracy 0.95
Perplexity 12.5

Esses resultados mostram que o modelo atinge um bom nível de compreensão linguística e coerência textual, considerando a complexidade morfológica do Kikongo.


💡 Exemplo de Uso

from transformers import AutoTokenizer, AutoModelForMaskedLM
import torch

# Carregar o modelo e o tokenizer
tokenizer = AutoTokenizer.from_pretrained("fhenrivx/Kikbert")
model = AutoModelForMaskedLM.from_pretrained("fhenrivx/Kikbert")

# Exemplo de frase
text = "Nzambi ke __ bantu yandi."

# Tokenização
inputs = tokenizer(text, return_tensors="pt")

# Predição
with torch.no_grad():
    outputs = model(**inputs)
    predictions = torch.argmax(outputs.logits, dim=-1)

# Resultado
predicted_token = tokenizer.decode(predictions[0])
print(predicted_token)