rasyosef's picture
Update README.md
88dd917 verified
metadata
language:
  - am
license: mit
tags:
  - sentence-transformers
  - cross-encoder
  - generated_from_trainer
  - dataset_size:491752
  - loss:BinaryCrossEntropyLoss
base_model: rasyosef/roberta-base-amharic
pipeline_tag: text-ranking
library_name: sentence-transformers
metrics:
  - map
  - mrr@10
  - ndcg@10
model-index:
  - name: roberta-amharic-reranker-base
    results:
      - task:
          type: cross-encoder-reranking
          name: Cross Encoder Reranking
        dataset:
          name: amh passage retrieval dev
          type: amh-passage-retrieval-dev
        metrics:
          - type: map
            value: 0.8534696098981692
            name: Map
          - type: mrr@10
            value: 0.8529139384920634
            name: Mrr@10
          - type: ndcg@10
            value: 0.8815092346456579
            name: Ndcg@10
          - type: map
            value: 0.8531100005859653
            name: Map
          - type: mrr@10
            value: 0.8513254037953979
            name: Mrr@10
          - type: ndcg@10
            value: 0.8802377937215004
            name: Ndcg@10

roberta-amharic-reranker-base

This is a Cross Encoder model finetuned from rasyosef/roberta-base-amharic using the sentence-transformers library. It computes scores for pairs of texts, which can be used for text reranking and semantic search.

Model Details

Model Description

  • Model Type: Cross Encoder
  • Base model: rasyosef/roberta-base-amharic
  • Maximum Sequence Length: 510 tokens
  • Number of Output Labels: 1 label
  • Language: am
  • License: mit

Model Sources

Usage

Direct Usage (Sentence Transformers)

First install the Sentence Transformers library:

pip install -U sentence-transformers

Then you can load this model and run inference.

from sentence_transformers import CrossEncoder

# Download from the 🤗 Hub
model = CrossEncoder("rasyosef/RoBERTa-Amharic-Reranker-Base")
# Get scores for pairs of texts

pairs = [
    ["በለንደን የዩክሬን ደጋፊ አገራት መሪዎች ጉባኤ", "ጀርመን አገር የተማሩ ኢትዮጵያዉያን ቁጥር ከአፍሪቃ አንደኛ ነዉ። እነ ካሜሩን ከነኬንያን ሁሉ ይበልጣል። በማኅበር የመደራጀታችን ዋናዉ ዓላማ የኢትዮ-ጀርመንን ግንኙነትን ከፍ ማድረግ ነዉ። ከ 10 ሺህ በላይ ኢትዮጵያዉያን ተማሪዎች በጀርመን አገር ተምረዉ ተመልሰዋል። አልያም አዉሮጳ ወደ አሜሪካም የተሻገሩ አሉ።"],
    ["በለንደን የዩክሬን ደጋፊ አገራት መሪዎች ጉባኤ", "በጋምቤላ እስካሁን 23 ሰዎች በኮሌራ መሞታቸውን የተናገሩት አንድ የጤና ባለሙያ በሽታውን ለመከላከል አንድ የግል ተቋም ድጋፍ ማድረጉን እና በዓለም ጤና ድርጅት የህክምና ድጋፍ መሰጠቱን አብራርተዋል፡፡ ከደቡብ ሱዳን አጎራባች አኮቦ ወረዳ ለመጀመሪያ ጊዜ መከሰቱ በተነገረው nበሽታው ብዙ ሰዎች የተጠቁት ዋንቱዋ በተባለ ወረዳ መሆኑን ጠቁመዋል፡፡"],
    ["በለንደን የዩክሬን ደጋፊ አገራት መሪዎች ጉባኤ", "በደም እጥረት ምክንያት ለህሙማን አስፈላጊዉን ህክምና ለመስጠት ተቸግረናል ሲሉ የተናገሩት የቆቦ ሆስፒታል ስራ አስኪያጅ ቢኖሩም የደም እጥረቱ ሀኪሞች አገልግሎት እንዲሰጡ አላስቻላቸዉም ይላሉ። የወልድያ ደም ባንክ አገልግሎት ስራ አስኪያጅ አሁን ለአስቸኳይ ህክምና ብቻ የሚሆን ለ20 ቀናት ብቻ የሚቆይ ደም ነዉ ያለን ይላሉ"],
    ["በለንደን የዩክሬን ደጋፊ አገራት መሪዎች ጉባኤ", "አሜሪካ ለውጭ የምትሰጠውን እርዳታ ማቆሟ በተለይ በአፍሪቃ ሃገራት ከፍተኛ ግርታና ድንጋጤ ፈጥሯል። ለሁለተኛ ጊዜ ወደ የሥልጣን መንበር የመጡት የአሜሪካው ፕሬዝደንት ዶናልድ ትራምፕ የውጭ እርዳታ ለዘጠና ቀናት እንዲቆም ወስነዋል። ትራምፕ እርዳታ አፍሪቃውያንን አሳንፏቸዋል ነው የሚሉት።"],
    ["በለንደን የዩክሬን ደጋፊ አገራት መሪዎች ጉባኤ", "በለንደን የብሪታኒያው ጠ/ሚኒ ኬይር ስታርመር አስተናጋጅነት የተካሄደው ዋናዎቹ የዩክሬን ደጋፊ አገሮች መሪዎች ጉባኤ ዩክሬንን በወታደራዊና ፋይናናስ የበለጠ ለመርዳት ተስማምቶ ማብቃቱ ተገልጿል። ይህ ከአውሮፓ ህብረት ውጭ የካናዳንና የኖርዌይ መሪዎች ብሎም የቱርክን የውጭ ጉዳይ ሚኒስትር ጉባኤ የተጠራዉ የነጬ ቤተመንግስት ክስተትን ተከትሎ ነዉ።"]
]
scores = model.predict(pairs)
print(scores.shape)
# (5,)

# Or rank different texts based on similarity to a single text
ranks = model.rank(
    "በለንደን የዩክሬን ደጋፊ አገራት መሪዎች ጉባኤ",
    [
        "ጀርመን አገር የተማሩ ኢትዮጵያዉያን ቁጥር ከአፍሪቃ አንደኛ ነዉ። እነ ካሜሩን ከነኬንያን ሁሉ ይበልጣል። በማኅበር የመደራጀታችን ዋናዉ ዓላማ የኢትዮ-ጀርመንን ግንኙነትን ከፍ ማድረግ ነዉ። ከ 10 ሺህ በላይ ኢትዮጵያዉያን ተማሪዎች በጀርመን አገር ተምረዉ ተመልሰዋል። አልያም አዉሮጳ ወደ አሜሪካም የተሻገሩ አሉ።",
        "በጋምቤላ እስካሁን 23 ሰዎች በኮሌራ መሞታቸውን የተናገሩት አንድ የጤና ባለሙያ በሽታውን ለመከላከል አንድ የግል ተቋም ድጋፍ ማድረጉን እና በዓለም ጤና ድርጅት የህክምና ድጋፍ መሰጠቱን አብራርተዋል፡፡ ከደቡብ ሱዳን አጎራባች አኮቦ ወረዳ ለመጀመሪያ ጊዜ መከሰቱ በተነገረው nበሽታው ብዙ ሰዎች የተጠቁት ዋንቱዋ በተባለ ወረዳ መሆኑን ጠቁመዋል፡፡",
        "በደም እጥረት ምክንያት ለህሙማን አስፈላጊዉን ህክምና ለመስጠት ተቸግረናል ሲሉ የተናገሩት የቆቦ ሆስፒታል ስራ አስኪያጅ ቢኖሩም የደም እጥረቱ ሀኪሞች አገልግሎት እንዲሰጡ አላስቻላቸዉም ይላሉ። የወልድያ ደም ባንክ አገልግሎት ስራ አስኪያጅ አሁን ለአስቸኳይ ህክምና ብቻ የሚሆን ለ20 ቀናት ብቻ የሚቆይ ደም ነዉ ያለን ይላሉ",
        "አሜሪካ ለውጭ የምትሰጠውን እርዳታ ማቆሟ በተለይ በአፍሪቃ ሃገራት ከፍተኛ ግርታና ድንጋጤ ፈጥሯል። ለሁለተኛ ጊዜ ወደ የሥልጣን መንበር የመጡት የአሜሪካው ፕሬዝደንት ዶናልድ ትራምፕ የውጭ እርዳታ ለዘጠና ቀናት እንዲቆም ወስነዋል። ትራምፕ እርዳታ አፍሪቃውያንን አሳንፏቸዋል ነው የሚሉት።",
        "በለንደን የብሪታኒያው ጠ/ሚኒ ኬይር ስታርመር አስተናጋጅነት የተካሄደው ዋናዎቹ የዩክሬን ደጋፊ አገሮች መሪዎች ጉባኤ ዩክሬንን በወታደራዊና ፋይናናስ የበለጠ ለመርዳት ተስማምቶ ማብቃቱ ተገልጿል። ይህ ከአውሮፓ ህብረት ውጭ የካናዳንና የኖርዌይ መሪዎች ብሎም የቱርክን የውጭ ጉዳይ ሚኒስትር ጉባኤ የተጠራዉ የነጬ ቤተመንግስት ክስተትን ተከትሎ ነዉ።",
    ]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]

Evaluation

Metrics

Cross Encoder Reranking

Metric Value
map 0.8535
mrr@10 0.8529
ndcg@10 0.8815

Cross Encoder Reranking

Metric Value
map 0.8531
mrr@10 0.8513
ndcg@10 0.8802

Training Details

Training Dataset

Unnamed Dataset

  • Size: 491,752 training samples
  • Columns: query, passage, and label
  • Approximate statistics based on the first 1000 samples:
    query passage label
    type string string int
    details
    • min: 3 characters
    • mean: 49.55 characters
    • max: 146 characters
    • min: 124 characters
    • mean: 1404.41 characters
    • max: 7660 characters
    • 0: ~87.50%
    • 1: ~12.50%
  • Samples:
    query passage label
    ‹‹የአገር መከላከያ ሠራዊት ተዋጽኦ እንደ ተወካዮች ምክር ቤት መቀመጫ የሚከፋፈል አይደለም›› ጄኔራል ሳሞራ የኑስ የአገር መከላከያ ሠራዊት ብሔራዊ ተዋጽኦ የጠበቀና የተመጣጠነ መሆን ያለበት ቢሆንም እንደ የተወካዮች ምክር ቤት መቀመጫ የሚከፋፈል እንዳልሆነ፣ የጦር ኃይሎች ጠቅላላ ኤታ ማዦር ሹም ጄኔራል ሳሞራ የኑስ ተናገሩ፡፡በአማራ ብሔራዊ ክልላዊ መንግሥት ዋና ከተማ በሆነችው በባህር ዳር ከተማ የተከበረውን ሦስተኛውን የሠራዊት ቀን ምክንያት በማድረግ በተዘጋጀው የውይይት መድረክ (ሲምፖዝየም)፣ ‹‹የኢፌዲሪ መከላከያ ሠራዊት ከየት ወዴት?›› በሚል ርዕስ ጥናታዊ ጽሑፍ ያቀረቡት ጄኔራል ሳሞራ የመከላከያ ሠራዊት አመጣጥ፣ ዕድገትና አሁን የሚገኝበትን ደረጃ ተንትነዋል፡፡ቀደም ሲል ደርግን ያሸነፈው የኢሕአዴግ ሠራዊት የአሁኑ መከላከያ ሠራዊት መሠረት እንደሆነ አስታውሰው፣ ለማመጣጠን ሲባል ከ30 ሺሕ በላይ ነባር ታጋዮች እንዲቀነሱ የተደረገበት ምክንያት ብሔራዊ አስተዋጽኦን ለማጠናከር እንደሆነ ገልጸዋል፡፡ ‹‹ለታጋዮችም ሆነ ለአመራሮች ፈታኝና ከባድ ውሳኔ የነበረ ቢሆንም ለሕዝብ ጥቅም ሲባል ወስነናል፤›› በማለት የገለጹት ጄኔራል ሳሞራ፣ በመከላከያ ሠራዊት አነስተኛ ተሳትፎ ከነበራቸው ብሔር ብሔረሰቦች አዲስ አባላት በመመልመል፣ ከወንጀል ነፃ የሆኑ ተፈላጊ ችሎታና ሙያ የነበራቸው የደርግ ሠራዊት አባላትም ታክለውበት ሠራዊቱ እንደ አዲስ መደራጀቱን አብራርተዋል፡፡ በወቅቱ ካልተቀነሱት የሕወሓት ታጋዮች ላይ ሁለት ማዕረግ እንደተቀነሰ፣ በአንፃሩ ደግሞ ለሌሎች ብሔር ተወላጆች ላይ ሁለት ማዕረግ እንዲጨመር መደረጉን አስታውሰዋል፡፡ ኢሕአዴግ ውስጥ ከተፈጠረው መከፋፈል በኋላ በተደረገው የተሃድሶ እንቅስቃሴ መሠረት የሠራዊቱ ማነቆ የነበሩ ችግሮችና አስተሳሰቦች መወገዳቸውንም አውስተዋል፡፡ አዲሱ የሠራዊት ግንባታ ሕገ መንግሥታዊ ተልዕኮዎችን የሚያሳካ፣ የመከላከል ቁመናው የማይደፈር ሆኖ ... 1
    ‹‹የአገር መከላከያ ሠራዊት ተዋጽኦ እንደ ተወካዮች ምክር ቤት መቀመጫ የሚከፋፈል አይደለም›› ጄኔራል ሳሞራ የኑስ ጠቅላይ ሚኒስትር ዓብይ አህመድ (ዶ/ር) ለሦስት የመከላከያና የደኅንነት ከፍተኛ ኃላፊዎች ዓርብ ሰኔ 21 ቀን 2011 ዓ.ም. ሹመት ሰጡ፡፡የብሔራዊ መረጃና ደኅንነት አገልግሎት ዋና ዳይሬክተር የነበሩት ጄኔራል አደም መሐመድ የጦር ኃይሎች ጠቅላይ ኤታ ማዦር ሹም፣ ሌተና ጄኔራል ሞላ ኃይለ ማርያም የምድር ኃይል ዋና አዛዥ፣ እንዲሁም አቶ ደመላሽ ገብረ ሚካኤል የብሔራዊ መረጃና ደኅንነት አገልግሎት ዋና ዳይሬክተር ሆነው ተሹመዋል፡፡ጄኔራል አደም ሰኔ 15 ቀን 2011 ዓ.ም. ምሽት በመኖሪያቸው ቤታቸው በተገደሉት በጄራል ሰዓረ መኮንን ምትክ ነው የተሾሙት፡፡ የብሔራዊ መረጃና ደኅንነት አገልግሎት በመሆን ከተሾሙ አንድ ዓመት ያለፋቸው ጄኔራል አደም፣ ቀደም ሲል የኢትዮጵያ አየር ኃይል ዋና አዛዥ በመሆን አገልግለዋል፡፡ሌተና ጄኔራል ሞላ ከዚህ በፊት የኢትዮጵያ አየር ኃይል ዋና አዛዥ በመሆን ማገልገላቸው ሲታወስ፣ በአዲሱ ሹመታቸው የምድር ኃይልን በዋና አዛዥነት ይመራሉ፡፡አቶ ደመላሽ ከዓመት በፊት የብሔራዊ መረጃና ደኅንነት ምክትል ዋና ዳይሬክተር በመሆን እያገለገሉ የነበሩ ሲሆን፣ ቀደም ሲል የኦሮሚያ ክልል ምክትል ኮሚሽነር፣ እንዲሁም የፌዴራል ፖሊስ ፀረ ሽብር ግብረ ኃይል ዳይሬክተር በመሆን ሠርተዋል፡፡ 0
    ‹‹የአገር መከላከያ ሠራዊት ተዋጽኦ እንደ ተወካዮች ምክር ቤት መቀመጫ የሚከፋፈል አይደለም›› ጄኔራል ሳሞራ የኑስ ለሕዝብ ተወካዮች ምክር ቤት ቋሚ ኮሚቴዎች የተጓደሉ ሊቀመንበሮችን ለመተካት ዕጩዎችን ያቀረቡት አፈ ጉባዔ አባዱላ ገመዳ ዕጩዎቹን የመለመሉበት መሥፈርት ዕውቀትን መሠረት ያደረገ አለመሆኑን አስመልክቶ ለተነሳባቸው ጥያቄ፣ ዕውቀት ሁልጊዜ መሥፈርት ሊሆን እንደማይችል ይልቁንም የፖለቲካ ድርጅቶች በሚሰጡት ውሳኔ የአመራርነት ምደባ እንደሚካሄድ ገለጹ፡፡አፈ ጉባዔው በምክር ቤቱ የአባልነት ሥነ ምግባርና ሥነ ሥርዓት ደንብ በሚሰጣቸው ኃላፊነት መሠረት በ2008 ዓ.ም. መጀመሪያ ላይ ለምክር ቤቱ 18 ቋሚ ኮሚቴዎች ከመደቧቸው ዋና ምክትል ሊቀመናብርት መካከል፣ የተወሰኑት በተለያዩ ምክንያቶች በመጓደላቸው በምትክነት ያጯቸውን ለምክር ቤቱ አባላት ለምደባ ሐሙስ ታኅሳስ 13 ቀን 2009 ዓ.ም. አቅርበዋል፡፡የቋሚ ኮሚቴው ሊቀመናብርት ከተጓደሉባቸው ምክንያቶች አንዱ በሥራ አስፈጻሚው መንግሥት መዋቅር ውስጥ በመመደባቸው መሆኑ ተገልጿል፡፡ ይሁን እንጂ አፈ ጉባዔው ያቀረቡት አዲስ ምደባ በተጓደሉ አመራሮች ምትክ ብቻ ሳይሆን፣ ነባሮችንም ወደ ሌላ ቋሚ ኮሚቴዎች የሚያሸጋሽግ ነው፡፡ይህንን ያስተዋሉት የምክር ቤቱ አንድ አባል አፈ ጉባዔው ባቀረቡት አዲስ ምደባ ላይ በርከት ያሉ ጥያቄዎችን አቅርበዋል፡፡ጥያቄዎቹን ያነሱት የምክር ቤት አባል አቶ ተክሌ ተሰማ የደኢሕዴን ተወካይ ሲሆኑ፣ በአዲሱ ምደባ ቀደም ሲል ከነበሩበት ቋሚ ኮሚቴ ምክትል ሊቀመንበርነት ወደ ሌላ ቋሚ ኮሚቴ ምክትል ሊቀመንበርነት እንዲዘዋወሩ፣ በአፈ ጉባዔው የውሳኔ ሐሳብ ዝርዝር ውስጥ ስማቸው ተካቷል፡፡አቶ ተክሌ ባነሱት ጥያቄ ለምደባ የቀረቡት ዕጩዎች የትምህርት ምዘና የሚመደቡበት ቋሚ ኮሚቴ ከሚጠይቀው ዕውቀት ጋር የሚጣጣም አለመሆኑን፣ የዕጩ ተመዳቢዎች ይሁንታን አፈ ጉባዔው ለምን እንዳልጠየቁ በማንሳት ዕውቀትን መሠረ... 0
  • Loss: BinaryCrossEntropyLoss with these parameters:
    {
        "activation_fn": "torch.nn.modules.linear.Identity",
        "pos_weight": 7
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: epoch
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • learning_rate: 4e-05
  • weight_decay: 0.1
  • num_train_epochs: 4
  • lr_scheduler_type: cosine
  • warmup_ratio: 0.05
  • fp16: True
  • dataloader_num_workers: 2
  • load_best_model_at_end: True

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: epoch
  • prediction_loss_only: True
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • torch_empty_cache_steps: None
  • learning_rate: 4e-05
  • weight_decay: 0.1
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 4
  • max_steps: -1
  • lr_scheduler_type: cosine
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.05
  • warmup_steps: 0
  • log_level: passive
  • log_level_replica: warning
  • log_on_each_node: True
  • logging_nan_inf_filter: True
  • save_safetensors: True
  • save_on_each_node: False
  • save_only_model: False
  • restore_callback_states_from_checkpoint: False
  • no_cuda: False
  • use_cpu: False
  • use_mps_device: False
  • seed: 42
  • data_seed: None
  • jit_mode_eval: False
  • use_ipex: False
  • bf16: False
  • fp16: True
  • fp16_opt_level: O1
  • half_precision_backend: auto
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: None
  • local_rank: 0
  • ddp_backend: None
  • tpu_num_cores: None
  • tpu_metrics_debug: False
  • debug: []
  • dataloader_drop_last: False
  • dataloader_num_workers: 2
  • dataloader_prefetch_factor: None
  • past_index: -1
  • disable_tqdm: False
  • remove_unused_columns: True
  • label_names: None
  • load_best_model_at_end: True
  • ignore_data_skip: False
  • fsdp: []
  • fsdp_min_num_params: 0
  • fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
  • fsdp_transformer_layer_cls_to_wrap: None
  • accelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch
  • optim_args: None
  • adafactor: False
  • group_by_length: False
  • length_column_name: length
  • ddp_find_unused_parameters: None
  • ddp_bucket_cap_mb: None
  • ddp_broadcast_buffers: False
  • dataloader_pin_memory: True
  • dataloader_persistent_workers: False
  • skip_memory_metrics: True
  • use_legacy_prediction_loop: False
  • push_to_hub: False
  • resume_from_checkpoint: None
  • hub_model_id: None
  • hub_strategy: every_save
  • hub_private_repo: None
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • include_for_metrics: []
  • eval_do_concat_batches: True
  • fp16_backend: auto
  • push_to_hub_model_id: None
  • push_to_hub_organization: None
  • mp_parameters:
  • auto_find_batch_size: False
  • full_determinism: False
  • torchdynamo: None
  • ray_scope: last
  • ddp_timeout: 1800
  • torch_compile: False
  • torch_compile_backend: None
  • torch_compile_mode: None
  • include_tokens_per_second: False
  • include_num_input_tokens_seen: False
  • neftune_noise_alpha: None
  • optim_target_modules: None
  • batch_eval_metrics: False
  • eval_on_start: False
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss amh-passage-retrieval-dev_ndcg@10
1.0 7684 0.3481 0.8475
2.0 15368 0.2105 0.8713
3.0 23052 0.1221 0.8839
4.0 30736 0.0555 0.8815
-1 -1 - 0.8802
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.11.13
  • Sentence Transformers: 4.1.0
  • Transformers: 4.52.4
  • PyTorch: 2.6.0+cu124
  • Accelerate: 1.7.0
  • Datasets: 3.6.0
  • Tokenizers: 0.21.1

Citation

BibTeX

Sentence Transformers

@inproceedings{reimers-2019-sentence-bert,
    title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
    author = "Reimers, Nils and Gurevych, Iryna",
    booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
    month = "11",
    year = "2019",
    publisher = "Association for Computational Linguistics",
    url = "https://arxiv.org/abs/1908.10084",
}