Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 13
How to use multifuly/certweb-reranker-model with sentence-transformers:
from sentence_transformers import CrossEncoder
model = CrossEncoder("multifuly/certweb-reranker-model")
query = "Which planet is known as the Red Planet?"
passages = [
"Venus is often called Earth's twin because of its similar size and proximity.",
"Mars, known for its reddish appearance, is often referred to as the Red Planet.",
"Jupiter, the largest planet in our solar system, has a prominent red spot.",
"Saturn, famous for its rings, is sometimes mistaken for the Red Planet."
]
scores = model.predict([(query, passage) for passage in passages])
print(scores)This is a Cross Encoder model finetuned from Dongjin-kr/ko-reranker using the sentence-transformers library. It computes scores for pairs of texts, which can be used for text reranking and semantic search.
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("cross_encoder_model_id")
# Get scores for pairs of texts
pairs = [
['외식경영과 전공 추천 자격증', '[자격증명: 소방시설관리사] 자격증명: 소방시설관리사 | 유형: 국가전문자격 | 분야: 소방방재 | NCS분류: 법률.경찰.소방.교도.국방 | 등급: 34 | 관련전공: AI산업안전시스템, 산업소방안전과, 산업안전과, 산업안전관리과, 산업안전보건과, 산업안전보건융합학과, 산업안전융합학과, 산업안전전공, 산업안전학부, 산업안전환경계열, 스마트안전융합과, 안전및산업경영공학과, 안전및산업경영공학과(2년제), 안전및산업경영과, 안전소방학과, 안전특성화계열, 융합안전공학과, 재난건설안전과, 재난시설안전과, 소방안전관리과, 소방ᆞ산업안전관리학과, 소방구조구급과, 소방방재과, 소방방재안전과, 소방안전과, 소방안전관리과(P-TECH), 소방안전관리전공, 소방안전관리학과(3년제), 소방안전융합과, 소방재난안전과, 소방재난안전학과, 소방행정・안전관리과, 소방환경방재과, 소방환경안전과, 재난소방・건설안전과, 재난안전시스템과, 건설안전공학과, 산업안전학과, 안전보건학과, 건설스마트안전공학과, 건설시스템안전공학과, 방재안전공학'],
['일본어과 전공 추천 자격증', '[자격증명: 건강운동관리사] 자격증명: 건강운동관리사 | 유형: 국가전문자격 | 분야: 스포츠 | NCS분류: 이용.숙박.여행.오락.스포츠 | 관련전공: AI보건정보관리학과, 공공복지정보관리학과, 공공서비스학부(헬스케어서비스전공), 공중보건학과, 공중보건학전공, 바이오헬스융합대학, 바이오헬스컨디셔닝학과, 보건건강관리학과(보건건강관리전공), 보건과학대학, 보건과학부, 보건관리전공, 보건관리학과, 보건관리학과(자연과학), 보건산업유통학전공, 보건안전전공, 보건의료경영전공, 보건의료경영학과, 보건의료관리학과, 보건의료복지학과, 보건의료복지학과(인문사회계열), 보건의료정보관리학전공, 보건의료학부, 보건의료행정전공, 보건학부, 보건환경학부, 뷰티건강디자인학과, 산업보건학과, 산업보건학전공, 산업안전보건전공, 실버보건학과, 융합보건학과, 헬스케어융합학부(자연과학), 레저해양스포츠학과, 해양레저관광학과, 해양레저학과, 해양스포츠ᆞ레저융합학과, 해양스포츠과학과, 해양스포츠전공, 해양스포츠학과, 해양체육학과, 해양치유레'],
['세무경영과 학과인데 뭐 따면 좋을까', '[자격증명: 무대예술전문인(무대기계) 2급] 자격증명: 무대예술전문인(무대기계) 2급 | 유형: 국가전문자격 | 분야: 방송기술 | NCS분류: 정보통신 | 관련전공: 공연미디어콘텐츠계열, 공연미디어콘텐츠과, 공연예술과, 공연예술과(3년제), 공연창작학부, 아트앤플레이군, 한국문화예술과, AI서비스마케팅학과, 공항홍보전공, 광고.PR.브랜딩전공, 광고PR전공, 광고PR학과, 광고미디어학과, 광고영상창작학과, 광고홍보문화콘텐츠전공, 광고홍보언론학과, 광고홍보언론학부, 광고홍보영상미디어학부, 광고홍보영상학과, 광고홍보이벤트학과, 광고홍보전공, 광고홍보전공 트랙, 광고홍보콘텐츠학과, 광고홍보학과, 광고홍보학부, 광고홍보학전공, 디지털마케팅학과, 디지털영상마케팅학과, 미디어광고학과, 미디어영상광고홍보학, 미디어영상광고홍보학부, 빅데이터광고마케팅학과, 산업・광고심리학과, 스마트콘텐츠마케팅학과, 홍보광고학과, 홍보디자인학전공, 방송극작과, 공연예술계열 뮤지컬, 뮤지컬연기과, 뮤지컬연기전공, 뮤지컬연기학과, 방송연예'],
['농업기술자 취업용 자격증', '[자격증명: 시설원예기사] 자격증명: 시설원예기사 | 유형: 국가기술자격 | 분야: 농업 | NCS분류: 농림어업 | 시행기관: 한국산업인력공단 | 등급: 기사 | 관련전공: 원예산림학부, 산림생태보호학과, 산림융복합학전공, 산림조경원예학과, 스마트그린케어학과, 스마트원예과학과, 스마트팜과학과, 원예·농업자원경제학부, 원예・생약융합학부, 원예과학과, 원예과학부, 원예과학전공, 원예산림학과, 원예산업학과, 원예산업학부, 원예생명공학과, 원예생명공학전공, 원예생명과학과, 원예생명조경학과, 원예육종학과, 원예치료전공, 원예학과, 원예환경전공, 환경디자인원예학과, 환경원예조경학부, 환경원예학과, 생명자원학부, 생명자원융합학과, 생명자원환경과학부, 생물자원과학부, 식량생명공학과, 식량자원과학과, 식의약자원개발학과, 자원공학과'],
['철골공 취업용 자격증', '[자격증명: 기계조립산업기사] 자격증명: 기계조립산업기사 | 유형: 국가기술자격 | 분야: 기계가공 | NCS분류: 기계 | 시행기관: 한국산업인력공단 | 등급: 산업기사 | 관련전공: 기계공학전공, 기계시스템공학과, 기계자동차공학과, 기계자동차공학부, 드론기계학과, 생산기계공학과, 스마트기계공학과, 융합기계공학과, 정밀기계공학과, AI융합기계계열, AI융합기계공학과, AI융합기계과, AI융합기계학과, K-산업기술학부, 공조기계과, 글로벌산업기술과, 글로벌산업기술과(보건산업), 글로벌산업기술과(전공심화), 글로벌산업인재과, 글로벌산업학과, 기계계열, 기계공학계열, 기계공학과(2년제), 기계과, 기계과(2년제), 기계보전과, 기계시스템과, 기계시스템과(ICT기계가공), 기계시스템과(기계융합시스템), 기계시스템디자인과, 기계자동차과, 기계품질관리과, 냉동공조설비공학과, 냉동공조설비과, 디지털기계시스템과, 디지털기계시스템과(기계융합시스템), 디지털기계학부, 디지털융합기계과, 미래모빌리티설계과, 미래모빌리티제조'],
]
scores = model.predict(pairs)
print(scores.shape)
# (5,)
# Or rank different texts based on similarity to a single text
ranks = model.rank(
'외식경영과 전공 추천 자격증',
[
'[자격증명: 소방시설관리사] 자격증명: 소방시설관리사 | 유형: 국가전문자격 | 분야: 소방방재 | NCS분류: 법률.경찰.소방.교도.국방 | 등급: 34 | 관련전공: AI산업안전시스템, 산업소방안전과, 산업안전과, 산업안전관리과, 산업안전보건과, 산업안전보건융합학과, 산업안전융합학과, 산업안전전공, 산업안전학부, 산업안전환경계열, 스마트안전융합과, 안전및산업경영공학과, 안전및산업경영공학과(2년제), 안전및산업경영과, 안전소방학과, 안전특성화계열, 융합안전공학과, 재난건설안전과, 재난시설안전과, 소방안전관리과, 소방ᆞ산업안전관리학과, 소방구조구급과, 소방방재과, 소방방재안전과, 소방안전과, 소방안전관리과(P-TECH), 소방안전관리전공, 소방안전관리학과(3년제), 소방안전융합과, 소방재난안전과, 소방재난안전학과, 소방행정・안전관리과, 소방환경방재과, 소방환경안전과, 재난소방・건설안전과, 재난안전시스템과, 건설안전공학과, 산업안전학과, 안전보건학과, 건설스마트안전공학과, 건설시스템안전공학과, 방재안전공학',
'[자격증명: 건강운동관리사] 자격증명: 건강운동관리사 | 유형: 국가전문자격 | 분야: 스포츠 | NCS분류: 이용.숙박.여행.오락.스포츠 | 관련전공: AI보건정보관리학과, 공공복지정보관리학과, 공공서비스학부(헬스케어서비스전공), 공중보건학과, 공중보건학전공, 바이오헬스융합대학, 바이오헬스컨디셔닝학과, 보건건강관리학과(보건건강관리전공), 보건과학대학, 보건과학부, 보건관리전공, 보건관리학과, 보건관리학과(자연과학), 보건산업유통학전공, 보건안전전공, 보건의료경영전공, 보건의료경영학과, 보건의료관리학과, 보건의료복지학과, 보건의료복지학과(인문사회계열), 보건의료정보관리학전공, 보건의료학부, 보건의료행정전공, 보건학부, 보건환경학부, 뷰티건강디자인학과, 산업보건학과, 산업보건학전공, 산업안전보건전공, 실버보건학과, 융합보건학과, 헬스케어융합학부(자연과학), 레저해양스포츠학과, 해양레저관광학과, 해양레저학과, 해양스포츠ᆞ레저융합학과, 해양스포츠과학과, 해양스포츠전공, 해양스포츠학과, 해양체육학과, 해양치유레',
'[자격증명: 무대예술전문인(무대기계) 2급] 자격증명: 무대예술전문인(무대기계) 2급 | 유형: 국가전문자격 | 분야: 방송기술 | NCS분류: 정보통신 | 관련전공: 공연미디어콘텐츠계열, 공연미디어콘텐츠과, 공연예술과, 공연예술과(3년제), 공연창작학부, 아트앤플레이군, 한국문화예술과, AI서비스마케팅학과, 공항홍보전공, 광고.PR.브랜딩전공, 광고PR전공, 광고PR학과, 광고미디어학과, 광고영상창작학과, 광고홍보문화콘텐츠전공, 광고홍보언론학과, 광고홍보언론학부, 광고홍보영상미디어학부, 광고홍보영상학과, 광고홍보이벤트학과, 광고홍보전공, 광고홍보전공 트랙, 광고홍보콘텐츠학과, 광고홍보학과, 광고홍보학부, 광고홍보학전공, 디지털마케팅학과, 디지털영상마케팅학과, 미디어광고학과, 미디어영상광고홍보학, 미디어영상광고홍보학부, 빅데이터광고마케팅학과, 산업・광고심리학과, 스마트콘텐츠마케팅학과, 홍보광고학과, 홍보디자인학전공, 방송극작과, 공연예술계열 뮤지컬, 뮤지컬연기과, 뮤지컬연기전공, 뮤지컬연기학과, 방송연예',
'[자격증명: 시설원예기사] 자격증명: 시설원예기사 | 유형: 국가기술자격 | 분야: 농업 | NCS분류: 농림어업 | 시행기관: 한국산업인력공단 | 등급: 기사 | 관련전공: 원예산림학부, 산림생태보호학과, 산림융복합학전공, 산림조경원예학과, 스마트그린케어학과, 스마트원예과학과, 스마트팜과학과, 원예·농업자원경제학부, 원예・생약융합학부, 원예과학과, 원예과학부, 원예과학전공, 원예산림학과, 원예산업학과, 원예산업학부, 원예생명공학과, 원예생명공학전공, 원예생명과학과, 원예생명조경학과, 원예육종학과, 원예치료전공, 원예학과, 원예환경전공, 환경디자인원예학과, 환경원예조경학부, 환경원예학과, 생명자원학부, 생명자원융합학과, 생명자원환경과학부, 생물자원과학부, 식량생명공학과, 식량자원과학과, 식의약자원개발학과, 자원공학과',
'[자격증명: 기계조립산업기사] 자격증명: 기계조립산업기사 | 유형: 국가기술자격 | 분야: 기계가공 | NCS분류: 기계 | 시행기관: 한국산업인력공단 | 등급: 산업기사 | 관련전공: 기계공학전공, 기계시스템공학과, 기계자동차공학과, 기계자동차공학부, 드론기계학과, 생산기계공학과, 스마트기계공학과, 융합기계공학과, 정밀기계공학과, AI융합기계계열, AI융합기계공학과, AI융합기계과, AI융합기계학과, K-산업기술학부, 공조기계과, 글로벌산업기술과, 글로벌산업기술과(보건산업), 글로벌산업기술과(전공심화), 글로벌산업인재과, 글로벌산업학과, 기계계열, 기계공학계열, 기계공학과(2년제), 기계과, 기계과(2년제), 기계보전과, 기계시스템과, 기계시스템과(ICT기계가공), 기계시스템과(기계융합시스템), 기계시스템디자인과, 기계자동차과, 기계품질관리과, 냉동공조설비공학과, 냉동공조설비과, 디지털기계시스템과, 디지털기계시스템과(기계융합시스템), 디지털기계학부, 디지털융합기계과, 미래모빌리티설계과, 미래모빌리티제조',
]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]
sentence_0, sentence_1, and label| sentence_0 | sentence_1 | label | |
|---|---|---|---|
| type | string | string | float |
| details |
|
|
|
| sentence_0 | sentence_1 | label |
|---|---|---|
외식경영과 전공 추천 자격증 |
[자격증명: 소방시설관리사] 자격증명: 소방시설관리사 | 유형: 국가전문자격 | 분야: 소방방재 | NCS분류: 법률.경찰.소방.교도.국방 | 등급: 34 | 관련전공: AI산업안전시스템, 산업소방안전과, 산업안전과, 산업안전관리과, 산업안전보건과, 산업안전보건융합학과, 산업안전융합학과, 산업안전전공, 산업안전학부, 산업안전환경계열, 스마트안전융합과, 안전및산업경영공학과, 안전및산업경영공학과(2년제), 안전및산업경영과, 안전소방학과, 안전특성화계열, 융합안전공학과, 재난건설안전과, 재난시설안전과, 소방안전관리과, 소방ᆞ산업안전관리학과, 소방구조구급과, 소방방재과, 소방방재안전과, 소방안전과, 소방안전관리과(P-TECH), 소방안전관리전공, 소방안전관리학과(3년제), 소방안전융합과, 소방재난안전과, 소방재난안전학과, 소방행정・안전관리과, 소방환경방재과, 소방환경안전과, 재난소방・건설안전과, 재난안전시스템과, 건설안전공학과, 산업안전학과, 안전보건학과, 건설스마트안전공학과, 건설시스템안전공학과, 방재안전공학 |
0.0 |
일본어과 전공 추천 자격증 |
[자격증명: 건강운동관리사] 자격증명: 건강운동관리사 | 유형: 국가전문자격 | 분야: 스포츠 | NCS분류: 이용.숙박.여행.오락.스포츠 | 관련전공: AI보건정보관리학과, 공공복지정보관리학과, 공공서비스학부(헬스케어서비스전공), 공중보건학과, 공중보건학전공, 바이오헬스융합대학, 바이오헬스컨디셔닝학과, 보건건강관리학과(보건건강관리전공), 보건과학대학, 보건과학부, 보건관리전공, 보건관리학과, 보건관리학과(자연과학), 보건산업유통학전공, 보건안전전공, 보건의료경영전공, 보건의료경영학과, 보건의료관리학과, 보건의료복지학과, 보건의료복지학과(인문사회계열), 보건의료정보관리학전공, 보건의료학부, 보건의료행정전공, 보건학부, 보건환경학부, 뷰티건강디자인학과, 산업보건학과, 산업보건학전공, 산업안전보건전공, 실버보건학과, 융합보건학과, 헬스케어융합학부(자연과학), 레저해양스포츠학과, 해양레저관광학과, 해양레저학과, 해양스포츠ᆞ레저융합학과, 해양스포츠과학과, 해양스포츠전공, 해양스포츠학과, 해양체육학과, 해양치유레 |
0.0 |
세무경영과 학과인데 뭐 따면 좋을까 |
[자격증명: 무대예술전문인(무대기계) 2급] 자격증명: 무대예술전문인(무대기계) 2급 | 유형: 국가전문자격 | 분야: 방송기술 | NCS분류: 정보통신 | 관련전공: 공연미디어콘텐츠계열, 공연미디어콘텐츠과, 공연예술과, 공연예술과(3년제), 공연창작학부, 아트앤플레이군, 한국문화예술과, AI서비스마케팅학과, 공항홍보전공, 광고.PR.브랜딩전공, 광고PR전공, 광고PR학과, 광고미디어학과, 광고영상창작학과, 광고홍보문화콘텐츠전공, 광고홍보언론학과, 광고홍보언론학부, 광고홍보영상미디어학부, 광고홍보영상학과, 광고홍보이벤트학과, 광고홍보전공, 광고홍보전공 트랙, 광고홍보콘텐츠학과, 광고홍보학과, 광고홍보학부, 광고홍보학전공, 디지털마케팅학과, 디지털영상마케팅학과, 미디어광고학과, 미디어영상광고홍보학, 미디어영상광고홍보학부, 빅데이터광고마케팅학과, 산업・광고심리학과, 스마트콘텐츠마케팅학과, 홍보광고학과, 홍보디자인학전공, 방송극작과, 공연예술계열 뮤지컬, 뮤지컬연기과, 뮤지컬연기전공, 뮤지컬연기학과, 방송연예 |
0.0 |
BinaryCrossEntropyLoss with these parameters:{
"activation_fn": "torch.nn.modules.linear.Identity",
"pos_weight": null
}
per_device_train_batch_size: 4num_train_epochs: 1fp16: Trueper_device_eval_batch_size: 4per_device_train_batch_size: 4num_train_epochs: 1max_steps: -1learning_rate: 5e-05lr_scheduler_type: linearlr_scheduler_kwargs: Nonewarmup_steps: 0optim: adamw_torch_fusedoptim_args: Noneweight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08optim_target_modules: Nonegradient_accumulation_steps: 1average_tokens_across_devices: Truemax_grad_norm: 1label_smoothing_factor: 0.0bf16: Falsefp16: Truebf16_full_eval: Falsefp16_full_eval: Falsetf32: Nonegradient_checkpointing: Falsegradient_checkpointing_kwargs: Nonetorch_compile: Falsetorch_compile_backend: Nonetorch_compile_mode: Noneuse_liger_kernel: Falseliger_kernel_config: Noneuse_cache: Falseneftune_noise_alpha: Nonetorch_empty_cache_steps: Noneauto_find_batch_size: Falselog_on_each_node: Truelogging_nan_inf_filter: Trueinclude_num_input_tokens_seen: nolog_level: passivelog_level_replica: warningdisable_tqdm: Falseproject: huggingfacetrackio_space_id: trackioeval_strategy: noper_device_eval_batch_size: 4prediction_loss_only: Trueeval_on_start: Falseeval_do_concat_batches: Trueeval_use_gather_object: Falseeval_accumulation_steps: Noneinclude_for_metrics: []batch_eval_metrics: Falsesave_only_model: Falsesave_on_each_node: Falseenable_jit_checkpoint: Falsepush_to_hub: Falsehub_private_repo: Nonehub_model_id: Nonehub_strategy: every_savehub_always_push: Falsehub_revision: Noneload_best_model_at_end: Falseignore_data_skip: Falserestore_callback_states_from_checkpoint: Falsefull_determinism: Falseseed: 42data_seed: Noneuse_cpu: Falseaccelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}parallelism_config: Nonedataloader_drop_last: Falsedataloader_num_workers: 0dataloader_pin_memory: Truedataloader_persistent_workers: Falsedataloader_prefetch_factor: Noneremove_unused_columns: Truelabel_names: Nonetrain_sampling_strategy: randomlength_column_name: lengthddp_find_unused_parameters: Noneddp_bucket_cap_mb: Noneddp_broadcast_buffers: Falseddp_backend: Noneddp_timeout: 1800fsdp: []fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}deepspeed: Nonedebug: []skip_memory_metrics: Truedo_predict: Falseresume_from_checkpoint: Nonewarmup_ratio: Nonelocal_rank: -1prompts: Nonebatch_sampler: batch_samplermulti_dataset_batch_sampler: proportionalrouter_mapping: {}learning_rate_mapping: {}| Epoch | Step | Training Loss |
|---|---|---|
| 0.2632 | 500 | 0.5150 |
| 0.5263 | 1000 | 0.4918 |
| 0.7895 | 1500 | 0.4794 |
| 0.2632 | 500 | 0.4184 |
| 0.5263 | 1000 | 0.4746 |
| 0.7895 | 1500 | 0.4503 |
@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",
}
Base model
Dongjin-kr/ko-reranker