Views
No views yet
pip install -U sentence-transformers1from sentence_transformers import SentenceTransformer
2
3sentences = ["This is an example sentence", "Each sentence is converted"]
4
5model = SentenceTransformer('smartmind/roberta-ko-small-tsdae')
6embeddings = model.encode(sentences)
7print(embeddings)1from sentence_transformers import util
2
3sentences = [
4 "대한민국의 수도는 서울입니다.",
5 "미국의 수도는 뉴욕이 아닙니다.",
6 "대한민국의 수도 요금은 저렴한 편입니다.",
7 "서울은 대한민국의 수도입니다.",
8 "오늘 서울은 하루종일 맑음",
9]
10
11paraphrase = util.paraphrase_mining(model, sentences)
12for score, i, j in paraphrase:
13 print(f"{sentences[i]}\t\t{sentences[j]}\t\t{score:.4f}")대한민국의 수도는 서울입니다. 서울은 대한민국의 수도입니다. 0.7616
대한민국의 수도는 서울입니다. 미국의 수도는 뉴욕이 아닙니다. 0.7031
대한민국의 수도는 서울입니다. 대한민국의 수도 요금은 저렴한 편입니다. 0.6594
미국의 수도는 뉴욕이 아닙니다. 서울은 대한민국의 수도입니다. 0.6445
대한민국의 수도 요금은 저렴한 편입니다. 서울은 대한민국의 수도입니다. 0.4915
미국의 수도는 뉴욕이 아닙니다. 대한민국의 수도 요금은 저렴한 편입니다. 0.4785
서울은 대한민국의 수도입니다. 오늘 서울은 하루종일 맑음 0.4119
대한민국의 수도는 서울입니다. 오늘 서울은 하루종일 맑음 0.3520
미국의 수도는 뉴욕이 아닙니다. 오늘 서울은 하루종일 맑음 0.2550
대한민국의 수도 요금은 저렴한 편입니다. 오늘 서울은 하루종일 맑음 0.18961from transformers import AutoTokenizer, AutoModel
2import torch
3
4
5def cls_pooling(model_output, attention_mask):
6 return model_output[0][:,0]
7
8
9# Sentences we want sentence embeddings for
10sentences = ['This is an example sentence', 'Each sentence is converted']
11
12# Load model from HuggingFace Hub
13tokenizer = AutoTokenizer.from_pretrained('smartmind/roberta-ko-small-tsdae')
14model = AutoModel.from_pretrained('smartmind/roberta-ko-small-tsdae')
15
16# Tokenize sentences
17encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors='pt')
18
19# Compute token embeddings
20with torch.no_grad():
21 model_output = model(**encoded_input)
22
23# Perform pooling. In this case, cls pooling.
24sentence_embeddings = cls_pooling(model_output, encoded_input['attention_mask'])
25
26print("Sentence embeddings:")
27print(sentence_embeddings)| split | cosine_pearson | cosine_spearman | euclidean_pearson | euclidean_spearman | manhattan_pearson | manhattan_spearman | dot_pearson | dot_spearman |
|---|---|---|---|---|---|---|---|---|
| train | 0.8735 | 0.8676 | 0.8268 | 0.8357 | 0.8248 | 0.8336 | 0.8449 | 0.8383 |
| validation | 0.5409 | 0.5349 | 0.4786 | 0.4657 | 0.4775 | 0.4625 | 0.5284 | 0.5252 |
SentenceTransformer(
(0): Transformer({'max_seq_length': 508, 'do_lower_case': False}) with Transformer model: RobertaModel
(1): Pooling({'word_embedding_dimension': 256, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False})
)