|
--- |
|
language: |
|
- vi |
|
license: apache-2.0 |
|
library_name: sentence-transformers |
|
tags: |
|
- cross-encoder |
|
- rerank |
|
datasets: |
|
- unicamp-dl/mmarco |
|
widget: |
|
- text: Trường UIT là gì ?. |
|
output: |
|
- label: >- |
|
Trường Đại_học Công_nghệ Thông_tin có tên tiếng Anh là University of |
|
Information_Technology ( viết tắt là UIT ) là thành_viên của Đại_học |
|
Quốc_Gia TP. HCM. |
|
score: 4.0033 |
|
- label: >- |
|
Trường Đại_học Kinh_tế – Luật ( tiếng Anh : University of Economics and |
|
Law – UEL ) là trường đại_học đào_tạo và nghiên_cứu khối ngành kinh_tế , |
|
kinh_doanh và luật hàng_đầu Việt_Nam . |
|
score: 0 |
|
- label: >- |
|
Quĩ_uỷ_thác đầu_tư ( tiếng Anh : Unit Investment_Trusts ; viết tắt : UIT ) |
|
là một công_ty đầu_tư mua hoặc nắm giữ một danh_mục đầu_tư cố_định |
|
score: 2.5138 |
|
pipeline_tag: text-classification |
|
--- |
|
|
|
#### Table of contents |
|
1. [Installation](#installation) |
|
2. [Pre-processing](#pre-processing) |
|
3. [Usage with `sentence-transformers`](#usage-with-sentence-transformers) |
|
4. [Usage with `transformers`](#usage-with-transformers) |
|
5. [Performance](#performance) |
|
|
|
|
|
## Installation |
|
- Install `pyvi` to word segment: |
|
|
|
- `pip install pyvi` |
|
|
|
- Install `sentence-transformers` (recommend) - [Usage](#usage-with-sentence-transformers): |
|
|
|
- `pip install sentence-transformers` |
|
|
|
- Install `transformers` (optional) - [Usage](#usage-with-transformers): |
|
|
|
- `pip install transformers` |
|
|
|
## Pre-processing |
|
|
|
```python |
|
from pyvi import ViTokenizer |
|
|
|
query = "UIT là gì?" |
|
sentences = [ |
|
"Trường Đại học Công nghệ Thông tin có tên tiếng Anh là University of Information Technology (viết tắt là UIT) là thành viên của Đại học Quốc Gia TP.HCM.", |
|
"Trường Đại học Kinh tế – Luật (tiếng Anh: University of Economics and Law – UEL) là trường đại học đào tạo và nghiên cứu khối ngành kinh tế, kinh doanh và luật hàng đầu Việt Nam.", |
|
"Quĩ uỷ thác đầu tư (tiếng Anh: Unit Investment Trusts; viết tắt: UIT) là một công ty đầu tư mua hoặc nắm giữ một danh mục đầu tư cố định" |
|
] |
|
|
|
tokenized_query = ViTokenizer.tokenize(query) |
|
tokenized_sentences = [ViTokenizer.tokenize(sent) for sent in sentences] |
|
|
|
tokenized_pairs = [[tokenized_query, sent] for sent in tokenized_sentences] |
|
``` |
|
|
|
## Usage with sentence-transformers |
|
|
|
```python |
|
from sentence_transformers import CrossEncoder |
|
model = CrossEncoder('itdainb/vietnamese-cross-encoder', max_length=256) |
|
scores = model.predict(tokenized_pairs) |
|
``` |
|
|
|
## Usage with transformers |
|
|
|
```python |
|
from transformers import AutoTokenizer, AutoModelForSequenceClassification |
|
|
|
model = AutoModelForSequenceClassification.from_pretrained('itdainb/vietnamese-cross-encoder') |
|
tokenizer = AutoTokenizer.from_pretrained('itdainb/vietnamese-cross-encoder') |
|
|
|
features = tokenizer(tokenized_pairs, padding=True, truncation="longest_first", return_tensors="pt", max_length=256) |
|
|
|
model.eval() |
|
with torch.no_grad(): |
|
model_predictions = model(**features, return_dict=True) |
|
logits = model_predictions.logits |
|
|
|
scores = [score[0] for score in logits] |
|
print(scores) |
|
``` |
|
|
|
## Performance |
|
In the following table, we provide various pre-trained Cross-Encoders together with their performance on the [MS MMarco Passage Reranking - Vi - Dev](https://huggingface.co/datasets/unicamp-dl/mmarco) dataset. |
|
|
|
| Model-Name | NDCG@3 | MRR@3 | NDCG@5 | MRR@5 | NDCG@10 | MRR@10 | Docs / Sec | |
|
| ----------------------------------------------------- |:------ | :---- |:------ | :---- |:------ | :----| :--- | |
|
|itdainb/vietnamese-cross-encoder |**0.6624**|**0.6433**|**0.7147**|**0.6706**|**0.7422**|**0.6804**|**3.19** |
|
|[BAAI/bge-reranker-v2-m3](https://huggingface.co/BAAI/bge-reranker-v2-m3) |0.6094|0.5841|0.6515|0.6062|0.6874|0.6209|0.58 |
|
|[amberoad/bert-multilingual-passage-reranking-msmarco](https://huggingface.co/amberoad/bert-multilingual-passage-reranking-msmarco) |0.4762|0.4592|0.5194|0.4834|0.4980|0.5548|0.58 |
|
|[kien-vu-uet/finetuned-phobert-passage-rerank-best-eval](https://huggingface.co/kien-vu-uet/finetuned-phobert-passage-rerank-best-eval) |0.0977|0.0892|0.1403|0.1139|0.1689|0.1254|3.13 |
|
|
|
Note: Runtime was computed on a A100 GPU. |