swardiantara/bert-tiny-yelp-k3-adaptive-cosine
SentenceTransformer based on google/bertuncasedL-2H-128A-2
This is a sentence-transformers model finetuned from google/bert_uncased_L-2_H-128_A-2. It maps sentences & paragraphs to a 128-dimensional dense vector space and can be used for retrieval.
Model Details
Model Description
- Model Type: Sentence Transformer
- Base model: google/bert_uncased_L-2_H-128_A-2 <!-- at revision 30b0a37ccaaa32f332884b96992754e246e48c5f -->
- Maximum Sequence Length: 128 tokens
- Output Dimensionality: 128 dimensions
- Similarity Function: Cosine Similarity
- Supported Modality: Text <!-- - Training Dataset: Unknown --> <!-- - Language: Unknown --> <!-- - License: Unknown -->
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'transformer_task': 'feature-extraction', 'modality_config': {'text': {'method': 'forward', 'method_output_name': 'last_hidden_state'}}, 'module_output_name': 'token_embeddings', 'architecture': 'BertModel'})
(1): Pooling({'embedding_dimension': 128, 'pooling_mode': 'mean', 'include_prompt': True})
)Usage
Direct Usage (Sentence Transformers)
First install the Sentence Transformers library:
pip install -U sentence-transformersThen you can load this model and run inference.
from sentence_transformers import SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("swardiantara/bert-tiny-yelp-k3-adaptive-cosine")
# Run inference
sentences = [
'I wish we had a way to hold this corporation accountable for its crimes against our society.',
'No, it\'s not worth it! Bellagio overcharged me and their accounting department never got back to me (I asked them for an itemized receipt 2 weeks ago). When I called them, I was (twice!) put on this music-less \\"dead\\" hold for 30-40 minutes. They\'re so full of themselves, they don\'t provide good customer service. Their wi-fi needed fixing when I stayed there. And by the way, the woman at the buffet was super rude to me. Finally, the famous waterworks never happened while I was standing outside in the cold waiting (though i asked the staff and they said they\'re up and running). No, don\'t waste your money! I won\'t and won\'t let my family and friends do that either.',
"This is an older retail store. I normally have a loving relationship with Eat 'n Park, but this one just didn't hit home for me. I came during the Sunday Brunch Buffet; my friend partook, I abstained after seeing the fare. I ordered two eggs over-easy with a side of toast. Getting beyond the murky, dated feel of the store, it was actually fairly clean on the interior and in the restrooms. \\n\\nI received my food and the eggs were cooked perfectly. Maybe not a big deal for some, but you would be surprised at how often over-easy comes out over-hard or, worse, uncooked. I think the real reason I enjoy Eat 'n Park most of the time is the normal salad bar items.",
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 128]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[1.0000, 0.9917, 0.9904],
# [0.9917, 1.0000, 0.9988],
# [0.9904, 0.9988, 1.0000]])<!--
Direct Usage (Transformers)
<details><summary>Click to see the direct usage in Transformers</summary>
</details> -->
<!--
Downstream Usage (Sentence Transformers)
You can finetune this model on your own dataset.
<details><summary>Click to expand</summary>
</details> -->
<!--
Out-of-Scope Use
List how the model may foreseeably be misused and address what users ought not to do with the model. -->
<!--
Bias, Risks and Limitations
What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model. -->
<!--
Recommendations
What are recommendations with respect to the foreseeable issues? For example, filtering explicit content. -->
Training Details
Training Dataset
Unnamed Dataset
- Size: 585,120 training samples
- Columns: <code>texta</code>, <code>textb</code>, and <code>label</code>
- Approximate statistics based on the first 100 samples: | | texta | textb | label | |:---------|:-----------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:-----------------------------------| | type | string | string | list | | modality | text | text | | | details | <ul><li>min: 6 tokens</li><li>mean: 93.98 tokens</li><li>max: 128 tokens</li></ul> | <ul><li>min: 52 tokens</li><li>mean: 119.12 tokens</li><li>max: 128 tokens</li></ul> | <ul><li>size: 2 elements</li></ul> |
- Samples: | texta | textb | label | |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------| | <code>dr. goldberg offers everything i look for in a general practitioner. he's nice and easy to talk to without being patronizing; he's always on time in seeing his patients; he's affiliated with a top-notch hospital (nyu) which my parents have explained to me is very important in case something happens and you need surgery; and you can get referrals to see specialists without having to see him first. really, what more do you need? i'm sitting here trying to think of any complaints i have about him, but i'm really drawing a blank.</code> | <code>I am an old school Vegas guy when it comes to service in this town. This place has only been open for a couple weeks and all I can say is wow! I've witnessed the owner and GM personally go to each customer to see how everything was going. I've seen this on ALL of the four times I have visited. The hardest things to convey to a service staff is to anticipate guests needs and recover from mistakes. They have obviously done a great job of that. Kudos!\n\nI love the Cajun style fish and shrimp tacos. Really fresh on perfectly soft, corn tacos. BTW, their happy hour is pretty freakin awesome to take advantage on their indoor-outdoor patio. Way more of a bargain and laid back atmosphere than Kona Grill --in the same lot. I just hope the Lambo-driving, Affliction/True Religion wearing-Summerlin douche bags- that scare away all the cute girls away, don't ruin my new favorite spot.</code> | <code>[1.0, 0.0]</code> | | <code>Unfortunately, the frustration of being Dr. Goldberg's patient is a repeat of the experience I've had with so many other doctors in NYC -- good doctor, terrible staff. It seems that his staff simply never answers the phone. It usually takes 2 hours of repeated calling to get an answer. Who has time for that or wants to deal with it? I have run into this problem with many other doctors and I just don't get it. You have office workers, you have patients with medical needs, why isn't anyone answering the phone? It's incomprehensible and not work the aggravation. It's with regret that I feel that I have to give Dr. Goldberg 2 stars.</code> | <code>Let me start by saying I have no idea about the food here, it could be amazing and knock my socks off, but I will not be back to find out.\n\nWe came here on a Saturday night and it was annoying. The service was decent, the drinks pretty strong....that's all that I can say in the good arena here. \n\nThe atmosphere is boring and uninspired, the decor blah and the clientele douchey. (if that's even a word) Prime example: a 45 year old guy in an Affliction shirt with a sparkly peace sign on the back...what?! There have to be better places to hang out in Scottsdale.</code> | <code>[1.0, 0.0]</code> | | <code>Been going to Dr. Goldberg for over 10 years. I think I was one of his 1st patients when he started at MHMG. He's been great over the years and is really all about the big picture. It is because of him, not my now former gyn Dr. Markoff, that I found out I have fibroids. He explores all options with you and is very patient and understanding. He doesn't judge and asks all the right questions. Very thorough and wants to be kept in the loop on every aspect of your medical health and your life.</code> | <code>Just came back from my second visit to The Main Ingredient, and I definitely plan to return! I'd been to this location a few times when it was Lisa G.'s, and I'm happy to report that MI is superior (I always found Lisa G.'s a little pretentious and overpriced). \n\nSandwiches are great - the Jive Turkey and Tuna sandwiches are delicious and very flavorful - and the service is excellent! I came in with a group of 5 co-workers on our lunch break and there weren't any tables available for our party but the waitress was really nice and apologetic and told us she would seat us soon. She took our orders in advance because we were in a bit of a hurry and seated us within a few minutes. She offered to give us separate checks and brought them shortly after our food arrived; of course, saying \"no rush,\" but just trying to be helpful because we were pressed for time. Finally, a restaurant that doesn't act like it's the hugest hassle in the world to provide separate checks! It's a reality of mod...</code> | <code>[1.0, 0.0]</code> |
- Loss: <code>_main_.OrdinalProxyContrastiveLoss</code>
Training Hyperparameters
Non-Default Hyperparameters
per_device_train_batch_size: 1024num_train_epochs: 10learning_rate: 2e-05load_best_model_at_end: True
All Hyperparameters
<details><summary>Click to expand</summary>
per_device_train_batch_size: 1024num_train_epochs: 10max_steps: -1learning_rate: 2e-05lr_scheduler_type: linearlr_scheduler_kwargs: Nonewarmup_steps: 0optim: adamw_torchoptim_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: 1.0label_smoothing_factor: 0.0bf16: Falsefp16: Falsebf16_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: Nonetrackio_bucket_id: Nonetrackio_static_space_id: Noneper_device_eval_batch_size: 8prediction_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: Trueignore_data_skip: Falserestore_callback_states_from_checkpoint: Falsefull_determinism: Falseseed: 42data_seed: Noneuse_cpu: Falseaccelerator_config: {'splitbatches': False, 'dispatchbatches': None, 'evenbatches': True, 'useseedablesampler': True, 'nonblocking': False, 'gradientaccumulationkwargs': 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_static_graph: Noneddp_backend: Noneddp_timeout: 1800fsdp: Nonefsdp_config: Nonedeepspeed: 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: {}
</details>
Training Logs
- The bold row denotes the saved checkpoint.
Training Time
- Training: 12.4 minutes
- Evaluation: 4.3 minutes
- Total: 16.7 minutes
Framework Versions
- Python: 3.12.4
- Sentence Transformers: 5.5.1
- Transformers: 5.11.0
- PyTorch: 2.5.1+cu121
- Accelerate: 1.13.0
- Datasets: 2.21.0
- Tokenizers: 0.22.2
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",
}<!--
Glossary
Clearly define terms in order to be accessible across audiences. -->
<!--
Model Card Authors
Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction. -->
<!--
Model Card Contact
Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors. -->
