VoVanPhuc commited on
Commit
eae2f19
1 Parent(s): f5b7acb

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +109 -0
README.md CHANGED
@@ -0,0 +1,109 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ #### Table of contents
3
+ 1. [Introduction](#introduction)
4
+ 2. [Pretrain model](#models)
5
+ 3. [Using SimeCSE_Vietnamese with `sentences-transformers`](#sentences-transformers)
6
+ - [Installation](#install1)
7
+ - [Example usage](#usage1)
8
+ 4. [Using SimeCSE_Vietnamese with `transformers`](#transformers)
9
+ - [Installation](#install2)
10
+ - [Example usage](#usage2)
11
+ # <a name="introduction"></a> SimeCSE_Vietnamese: Simple Contrastive Learning of Sentence Embeddings with Vietnamese
12
+
13
+ Pre-trained SimeCSE_Vietnamese models are the state-of-the-art of Sentence Embeddings with Vietnamese :
14
+
15
+ - SimeCSE_Vietnamese pre-training approach is based on [SimCSE](https://arxiv.org/abs/2104.08821) which optimizes the SimeCSE_Vietnamese pre-training procedure for more robust performance.
16
+ - SimeCSE_Vietnamese encode input sentences using a pre-trained language model such as [PhoBert](https://www.aclweb.org/anthology/2020.findings-emnlp.92/)
17
+ - SimeCSE_Vietnamese works with both unlabeled and labeled data.
18
+
19
+ ## Pre-trained models <a name="models"></a>
20
+
21
+
22
+ Model | #params | Arch.
23
+ ---|---|---
24
+ [`VoVanPhuc/sup-SimCSE-VietNamese-phobert-base`](https://huggingface.co/VoVanPhuc/sup-SimCSE-VietNamese-phobert-base) | 135M | base
25
+ [`VoVanPhuc/unsup-SimCSE-VietNamese-phobert-base`](https://huggingface.co/VoVanPhuc/unsup-SimCSE-VietNamese-phobert-base) | 135M | base
26
+
27
+
28
+ ## <a name="sentences-transformers"></a> Using SimeCSE_Vietnamese with `sentences-transformers`
29
+
30
+
31
+ ### Installation <a name="install1"></a>
32
+ - Install `sentence-transformers`:
33
+ - `pip install -U sentence-transformers`
34
+
35
+
36
+ ### Example usage <a name="usage1"></a>
37
+
38
+ ```python
39
+ from sentence_transformers import SentenceTransformer
40
+ model = SentenceTransformer('VoVanPhuc/sup-SimCSE-VietNamese-phobert-base')
41
+
42
+ sentences = ['Kẻ đánh bom đinh tồi tệ nhất nước Anh.',
43
+ 'Nghệ sĩ làm thiện nguyện - minh bạch là việc cấp thiết.',
44
+ 'Bắc Giang tăng khả năng điều trị và xét nghiệm.',
45
+ 'HLV futsal Việt Nam tiết lộ lý do hạ Lebanon.',
46
+ 'việc quan trọng khi kêu gọi quyên góp từ thiện là phải minh bạch, giải ngân kịp thời.',
47
+ '20% bệnh nhân Covid-19 có thể nhanh chóng trở nặng.',
48
+ 'Thái Lan thua giao hữu trước vòng loại World Cup.',
49
+ 'Cựu tuyển thủ Nguyễn Bảo Quân: May mắn ủng hộ futsal Việt Nam',
50
+ 'Chủ ki-ốt bị đâm chết trong chợ đầu mối lớn nhất Thanh Hoá.',
51
+ 'Bắn chết người trong cuộc rượt đuổi trên sông.'
52
+ ]
53
+
54
+ embeddings = model.encode(sentences)
55
+ ```
56
+
57
+ ## <a name="sentences-transformers"></a> Using SimeCSE_Vietnamese with `transformers`
58
+
59
+ ### Installation <a name="install2"></a>
60
+ - Install `transformers`:
61
+ - `pip install -U transformers`
62
+
63
+
64
+ ### Example usage <a name="usage2"></a>
65
+
66
+ ```python
67
+ import torch
68
+ from transformers import AutoModel, AutoTokenizer
69
+
70
+ tokenizer = AutoTokenizer.from_pretrained("VoVanPhuc/sup-SimCSE-VietNamese-phobert-base")
71
+ model = AutoModel.from_pretrained("VoVanPhuc/sup-SimCSE-VietNamese-phobert-base")
72
+
73
+ sentences = ['Kẻ đánh bom đinh tồi tệ nhất nước Anh.',
74
+ 'Nghệ sĩ làm thiện nguyện - minh bạch là việc cấp thiết.',
75
+ 'Bắc Giang tăng khả năng điều trị và xét nghiệm.',
76
+ 'HLV futsal Việt Nam tiết lộ lý do hạ Lebanon.',
77
+ 'việc quan trọng khi kêu gọi quyên góp từ thiện là phải minh bạch, giải ngân kịp thời.',
78
+ '20% bệnh nhân Covid-19 có thể nhanh chóng trở nặng.',
79
+ 'Thái Lan thua giao hữu trước vòng loại World Cup.',
80
+ 'Cựu tuyển thủ Nguyễn Bảo Quân: May mắn ủng hộ futsal Việt Nam',
81
+ 'Chủ ki-ốt bị đâm chết trong chợ đầu mối lớn nhất Thanh Hoá.',
82
+ 'Bắn chết người trong cuộc rượt đuổi trên sông.'
83
+ ]
84
+ inputs = tokenizer(sentences, padding=True, truncation=True, return_tensors="pt")
85
+
86
+ with torch.no_grad():
87
+ embeddings = model(**inputs, output_hidden_states=True, return_dict=True).pooler_output
88
+ ```
89
+ ## Quick Start
90
+
91
+ [Open In Colab](https://colab.research.google.com/drive/12__EXJoQYHe9nhi4aXLTf9idtXT8yr7H?usp=sharing)
92
+
93
+ ## Citation
94
+
95
+
96
+ @article{gao2021simcse,
97
+ title={{SimCSE}: Simple Contrastive Learning of Sentence Embeddings},
98
+ author={Gao, Tianyu and Yao, Xingcheng and Chen, Danqi},
99
+ journal={arXiv preprint arXiv:2104.08821},
100
+ year={2021}
101
+ }
102
+
103
+ @inproceedings{phobert,
104
+ title = {{PhoBERT: Pre-trained language models for Vietnamese}},
105
+ author = {Dat Quoc Nguyen and Anh Tuan Nguyen},
106
+ booktitle = {Findings of the Association for Computational Linguistics: EMNLP 2020},
107
+ year = {2020},
108
+ pages = {1037--1042}
109
+ }