avinot's picture
Add new SentenceTransformer model.
a23af80 verified
---
base_model: distilbert/distilroberta-base
datasets: []
language: []
library_name: sentence-transformers
pipeline_tag: sentence-similarity
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- generated_from_trainer
- dataset_size:3394
- loss:MultipleNegativesRankingLoss
widget:
- source_sentence: 'As senna, Watch your positioning at all times so she cannot land
crucial spells on you.
Keep the minion wave closer to your side of the map to force her to over-extend
for farm.
Senna is quite weak early, you might be able to abuse that to gain an early health
advantage. But if you can’t, don’t worry.
Focus on farming early on if you can’t get kills. Try to poke her down often:
whenever she uses her Q, try and use yours.
'
sentences:
- As riven, Riven will begin to fall as the game continues, so she will have to
accumulate an early lead on. She should rely on peaks to win the game. She will
have a lot of articles during this phase of the game, which will let her dry a
lot of damage if she manages to catch an enemy. Level 16 is a massive power peak,
which means that she can completely decimate the enemies that are joined together.
She will have to find flanks on the enemy frequently.
- As senna, Watch your position at all times so it can't put crucial spells on you.
Keep the minion wave closer to your side of the map to force it to overtake for
the farm. Senna is weak enough early, you might be able to abuse it to gain an
early health benefit. But if you can, don't worry. Focus on agriculture early
if you can't get killed.
- Against zac, Zac really has long cooling times on his engagement abilities. As
a result, he can really use them as a tool of engagement or escape only once in
a fight. If you know that he is without these abilities- try to fight him. Placing
the vision around his entrances into the jungle and into the river will reduce
his ability to get successful ganks. Note that Zac can gank from afar with his
E however. The easiest way for Zac to kill the Crab Scuttle is by using his E.
If you see him killing the Crab Scuttle, it will usually mean that his E is on
cooldown and he will miss an escape tool.
- source_sentence: 'As teemo, Use your t to prevent the enemy ADC from doing anything
in this game. Always focus on the champion that is close to your carry for maximal
effectiveness.
Try to lure enemies into fighting near your Ultimate t infested areas. It will
allow you to auto-win a major fight due to the amount of damage your Ultimate
t traps do.
Ensure that your Ultimate t traps are in the choke points during neutral objective
fights. This will make it really hard for the enemy team to do anything in the
fight.'
sentences:
- As taric, Taric will have his Q maxed at level 9. This means that he will heal
a lot during a fight as long as he has enough mana to constantly use the ability.
At level 11, Taric will have two points in his Ultimate R. This means that he
will be able to use the ability frequently, which will make him powerful enough
in team combat. At level thirteen, Taric will have two of his maximum capabilities
out. This means that he will excel in team combat and will be successfully peeled
for his port.
- As annie, Look for aggressive parts at level 2 that you are stronger than it at
level 2. Look for aggressive parts when its dizziness is down. Fight it after
it uses its dizziness that you will win a battle with it. After you have obtained
your first element, just keep pushing it in and get turn plates. Look for roaming
opportunities when possible.
- As teemo, Use your t to prevent the ADC enemy from doing anything in this game.
Always focus on the champion who is close to your door for maximum efficiency.
Try to attract enemies into the fight near your infested areas Ultimate t. It
will allow you to self-win a major fight due to the amount of damage your Ultimate
t traps do. Make sure your Ultimate t traps are in the choking points during neutral
objective combats. This will make it really difficult for the enemy team to do
anything in the fight.
- source_sentence: 'As senna, Just like in the mid-game, you should stick with your
Support throughout the later parts of the game. Do not go around the map alone
as you will die easily.
Do not play super aggressive in team fights. Just kite and auto-attack the nearest
enemy champion. If you walk too far forward, the enemy will focus you and take
you down.
Continue to kite in team fights and consistently adapt your positioning. Avoid
standing still in fights as you’ll be an easy target.'
sentences:
- As senna, Just like in the middle of the game, you have to stay with your support
throughout the later parts of the game. Do not go around the map alone because
you will die easily. Do not play super aggressive in team fights. Just kite and
automatic attack the nearest enemy champion. If you walk too far forward, the
enemy will concentrate and down you. Continue kiteing in team fights and systematically
adapt your positioning.
- As udyr, You are really good at securing the goals in early play. Look to secure
the goals whenever they are. Find a healthy balance between the glove of your
allies, the agriculture of your jungle and safety goals. Make sure you don't fall
behind in XP trying to gank constantly. Look several times at the gank tracks
that are wider or Flashless. Your champion is very good at several times the glove
tracks over and over again.
- As bard, Once you reach this stage, you should focus more on roaming and the impact
of the map with your Ultimate R & E. When you keep in depth, make sure to keep
your E ready to escape any sticky situation. Before leaving your track, drop some
W shrines here and there. This will help your ADC stay healthy, especially when
they are against a poke track. Always try to lure enemy travellers to push and
use the wall behind them to E and then stun them with your Q. The association
with your Jungler/other travelers will give maximum efficiency and enemies generally
do not plan such coins.
- source_sentence: 'Against trundle, When Trundle activates his n, back away immediately.
He will become much tankier and your tanks will be weak. Re-engage when his Subjugate
Subjugate n has cooled off.
He has great pick potential in the mid game with his e. Avoid standing too far
forward as he may push you towards his team and then all-in you.
Poke is your best friend against Trundle. Getting him really low makes it near
impossible for him to all-in or fight your team.'
sentences:
- As kalista, If she has a support that can complete her escarment power, she will
easily take the level path one himself. Kalista's passive does so so that she
can easily avoid the CC abilities especially if it turns out that it is a skill
shot. It also allows her to jump in and out of nonwarded brushes to drop the vision
on the enemies. Once she gets her Ultimate x, her down pursuit potential becomes
unmatched.
- Against trundle, When Trundle activates his n, backs off immediately. He will
become much more tankier and your tanks will be weak. Re-engagement when his Subjugate
Subjugate n has cooled. He has great potential of choice in the middle of the
match with his e. Avoid standing too far ahead that he can push you towards his
team and then all of you. Poke is your best friend against Trundle.
- As viego, Viego is decent enough during the team fights because of his W and Q.
His life flight will help him during the full fights, and his Ultimate R will
act as a decent finish movement. Viego will win a massive power peak once he has
two points in his Ultimate R. He can run squishy targets, execute them and use
his Passive for much longer than any other champion in his situation. He will
have his basic elements through this phase of the game. He should be able to flatten
a lot of damage and catch the out-of-guard enemies with his W. His E should help
him shoot several ganks as well.
- source_sentence: 'As mordekaiser, Another point in his Ultimate R will allow him
to 1 v 1 target quite frequently. He should be able to secure picks even now.
He is pretty decent during late-game fights, as his AoE abilities will hurt a
lot. His survivability is quite appreciable as well.
His tankiness will be massive during this phase of the game. He should be focused
on absorbing a lot of damage for the enemy team while simultaneously picking off
enemies when possible.'
sentences:
- As karma, Unlike most champions, Karma unlocks her Ultimate has at level 1. This
means that at level 6, she doesn't have as much pressure compared to many other
champions especially if they re-level 6 power peak is very strong. When Karmas
d is down, she is vulnerable to attack and will need to play safely while he is
on the cooldown. His Q can easily be avoided if the enemy builds a huge wave or
positions properly.
- As mordekaiser, Another point in his Ultimate R will allow him to 1 v 1 target
quite frequently. He should be able to secure the choices even now. He is quite
decent during the fights at the end of the game, because his AoE abilities will
do a lot of harm. His survival is just as appreciable. His tankness will be massive
during this phase of the game. He should be focused on absorbing a lot of damage
for the enemy team while simultaneously dropping enemies when possible.
- As renekton, If you can get a murder or two, you can snowball your lead quite
quickly. Every time your Ultimate t is up, you can look for aggressive games to
try to kill the enemy. Your Ultimate t is an excellent trading tool that makes
you much stronger. Keep the minion wave even or slightly closer to your side of
the map early. This will allow you to run the enemy down while protecting yourself
from the ganks. If you keep pushing when you are not forward, you will be unable
to run the enemy down and you will be an easy target for the enemy Jungler.
---
# SentenceTransformer based on distilbert/distilroberta-base
This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [distilbert/distilroberta-base](https://huggingface.co/distilbert/distilroberta-base). It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.
## Model Details
### Model Description
- **Model Type:** Sentence Transformer
- **Base model:** [distilbert/distilroberta-base](https://huggingface.co/distilbert/distilroberta-base) <!-- at revision fb53ab8802853c8e4fbdbcd0529f21fc6f459b2b -->
- **Maximum Sequence Length:** 512 tokens
- **Output Dimensionality:** 768 tokens
- **Similarity Function:** Cosine Similarity
<!-- - **Training Dataset:** Unknown -->
<!-- - **Language:** Unknown -->
<!-- - **License:** Unknown -->
### Model Sources
- **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers)
- **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers)
### Full Model Architecture
```
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: RobertaModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)
```
## Usage
### Direct Usage (Sentence Transformers)
First install the Sentence Transformers library:
```bash
pip install -U sentence-transformers
```
Then you can load this model and run inference.
```python
from sentence_transformers import SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("avinot/distilroberta-base-LoL-Champions")
# Run inference
sentences = [
'As mordekaiser, Another point in his Ultimate R will allow him to 1 v 1 target quite frequently. He should be able to secure picks even now.\n\nHe is pretty decent during late-game fights, as his AoE abilities will hurt a lot. His survivability is quite appreciable as well.\n\nHis tankiness will be massive during this phase of the game. He should be focused on absorbing a lot of damage for the enemy team while simultaneously picking off enemies when possible.',
'As mordekaiser, Another point in his Ultimate R will allow him to 1 v 1 target quite frequently. He should be able to secure the choices even now. He is quite decent during the fights at the end of the game, because his AoE abilities will do a lot of harm. His survival is just as appreciable. His tankness will be massive during this phase of the game. He should be focused on absorbing a lot of damage for the enemy team while simultaneously dropping enemies when possible.',
'As renekton, If you can get a murder or two, you can snowball your lead quite quickly. Every time your Ultimate t is up, you can look for aggressive games to try to kill the enemy. Your Ultimate t is an excellent trading tool that makes you much stronger. Keep the minion wave even or slightly closer to your side of the map early. This will allow you to run the enemy down while protecting yourself from the ganks. If you keep pushing when you are not forward, you will be unable to run the enemy down and you will be an easy target for the enemy Jungler.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
```
<!--
### 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: 3,394 training samples
* Columns: <code>sentence_0</code> and <code>sentence_1</code>
* Approximate statistics based on the first 1000 samples:
| | sentence_0 | sentence_1 |
|:--------|:------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|
| type | string | string |
| details | <ul><li>min: 6 tokens</li><li>mean: 125.49 tokens</li><li>max: 272 tokens</li></ul> | <ul><li>min: 27 tokens</li><li>mean: 109.21 tokens</li><li>max: 231 tokens</li></ul> |
* Samples:
| sentence_0 | sentence_1 |
|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| <code>As sivir, Just like in the mid-game, you should stick with your Support throughout the later parts of the game. Do not go around the map alone as you will die easily.<br><br>Do not play super aggressive in team fights. Just kite and auto-attack the nearest enemy champion. If you walk too far forward, the enemy will focus you and take you down.<br><br>Continue to kite in team fights and consistently adapt your positioning. Avoid standing still in fights as you’ll be an easy target.</code> | <code>As sivir, Just like in the middle of the game, you have to stay with your support throughout the later parts of the game. Do not go around the map alone because you will die easily. Do not play super aggressive in team fights. Just kite and automatic attack the nearest enemy champion. If you walk too far forward, the enemy will concentrate and down you. Continue kiteing in team fights and systematically adapt your positioning.</code> |
| <code>As nunu, After going in with your Ultimate R, be prepared to fall back and peel for your allies in late-game team fights.<br><br>Play around your Ultimate R in the later parts of the game. Avoid fighting unless your Ultimate R is up. Fighting without it will make the late-game team fights much harder. Delay fights and be prepared to disengage if it’s still on cooldown.<br><br>To make getting on the enemy backline easier, group with your team but stay off to the side. If you flank from an unwarded bush, the enemy will find it harder to react to your all-in. Avoid splitting or being away from your team in the late game as the enemy will force a fight while you’re gone.</code> | <code>As nunu, After entering with your Ultimate R, be ready to fold and peel for your allies in the team fights at the end of the game. Play around your Ultimate R in the later parts of the game. Avoid fighting unless your Ultimate R is standing. Fighting without it will make the team fight a lot harder at the end of the game. Delaying the fights and being ready to disengage if it is still about to cool off. To make the enemy's attack easier, group with your team but stay away from the side. If you flank a bush not awarded, the enemy will find it harder to react to your all-in. Avoid separating or being away from your team in the end of the game as the enemy will force a fight while you are gone.</code> |
| <code>As darius, Darius is one of the strongest early game champions in the game. You can use this advantage to gain an early lead.<br><br>Extended trades work in the favour of Darius thanks to his Passive. He will win almost every auto-attack battle. This makes him a great duelist in low ELO as many players like to constantly fight.<br><br>Is really good in team fights thanks to his Ultimate e which can be reset if he gets the killing blow with it.</code> | <code>As darius, Darius is one of the first strongest game champions in the game. You can use this advantage to gain an early lead. Extended trades work in favor of Darius thanks to his passive. He will win almost all automatic attack battles. This makes him a great duelist in the bottom ELO as many players like to fight constantly. Is really good in team fights thanks to his Ultimate e that can be reset if he gets the shot of death with her.</code> |
* Loss: [<code>MultipleNegativesRankingLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#multiplenegativesrankingloss) with these parameters:
```json
{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
```
### Training Hyperparameters
#### Non-Default Hyperparameters
- `per_device_train_batch_size`: 16
- `per_device_eval_batch_size`: 16
- `num_train_epochs`: 10
- `multi_dataset_batch_sampler`: round_robin
#### All Hyperparameters
<details><summary>Click to expand</summary>
- `overwrite_output_dir`: False
- `do_predict`: False
- `eval_strategy`: no
- `prediction_loss_only`: True
- `per_device_train_batch_size`: 16
- `per_device_eval_batch_size`: 16
- `per_gpu_train_batch_size`: None
- `per_gpu_eval_batch_size`: None
- `gradient_accumulation_steps`: 1
- `eval_accumulation_steps`: None
- `learning_rate`: 5e-05
- `weight_decay`: 0.0
- `adam_beta1`: 0.9
- `adam_beta2`: 0.999
- `adam_epsilon`: 1e-08
- `max_grad_norm`: 1
- `num_train_epochs`: 10
- `max_steps`: -1
- `lr_scheduler_type`: linear
- `lr_scheduler_kwargs`: {}
- `warmup_ratio`: 0.0
- `warmup_steps`: 0
- `log_level`: passive
- `log_level_replica`: warning
- `log_on_each_node`: True
- `logging_nan_inf_filter`: True
- `save_safetensors`: True
- `save_on_each_node`: False
- `save_only_model`: False
- `restore_callback_states_from_checkpoint`: False
- `no_cuda`: False
- `use_cpu`: False
- `use_mps_device`: False
- `seed`: 42
- `data_seed`: None
- `jit_mode_eval`: False
- `use_ipex`: False
- `bf16`: False
- `fp16`: False
- `fp16_opt_level`: O1
- `half_precision_backend`: auto
- `bf16_full_eval`: False
- `fp16_full_eval`: False
- `tf32`: None
- `local_rank`: 0
- `ddp_backend`: None
- `tpu_num_cores`: None
- `tpu_metrics_debug`: False
- `debug`: []
- `dataloader_drop_last`: False
- `dataloader_num_workers`: 0
- `dataloader_prefetch_factor`: None
- `past_index`: -1
- `disable_tqdm`: False
- `remove_unused_columns`: True
- `label_names`: None
- `load_best_model_at_end`: False
- `ignore_data_skip`: False
- `fsdp`: []
- `fsdp_min_num_params`: 0
- `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
- `fsdp_transformer_layer_cls_to_wrap`: None
- `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
- `deepspeed`: None
- `label_smoothing_factor`: 0.0
- `optim`: adamw_torch
- `optim_args`: None
- `adafactor`: False
- `group_by_length`: False
- `length_column_name`: length
- `ddp_find_unused_parameters`: None
- `ddp_bucket_cap_mb`: None
- `ddp_broadcast_buffers`: False
- `dataloader_pin_memory`: True
- `dataloader_persistent_workers`: False
- `skip_memory_metrics`: True
- `use_legacy_prediction_loop`: False
- `push_to_hub`: False
- `resume_from_checkpoint`: None
- `hub_model_id`: None
- `hub_strategy`: every_save
- `hub_private_repo`: False
- `hub_always_push`: False
- `gradient_checkpointing`: False
- `gradient_checkpointing_kwargs`: None
- `include_inputs_for_metrics`: False
- `eval_do_concat_batches`: True
- `fp16_backend`: auto
- `push_to_hub_model_id`: None
- `push_to_hub_organization`: None
- `mp_parameters`:
- `auto_find_batch_size`: False
- `full_determinism`: False
- `torchdynamo`: None
- `ray_scope`: last
- `ddp_timeout`: 1800
- `torch_compile`: False
- `torch_compile_backend`: None
- `torch_compile_mode`: None
- `dispatch_batches`: None
- `split_batches`: None
- `include_tokens_per_second`: False
- `include_num_input_tokens_seen`: False
- `neftune_noise_alpha`: None
- `optim_target_modules`: None
- `batch_eval_metrics`: False
- `batch_sampler`: batch_sampler
- `multi_dataset_batch_sampler`: round_robin
</details>
### Training Logs
| Epoch | Step | Training Loss |
|:------:|:----:|:-------------:|
| 2.3474 | 500 | 1.9312 |
| 4.6948 | 1000 | 0.0145 |
| 7.0423 | 1500 | 0.0023 |
| 9.3897 | 2000 | 0.0003 |
### Framework Versions
- Python: 3.10.12
- Sentence Transformers: 3.0.1
- Transformers: 4.41.2
- PyTorch: 2.3.0+cu121
- Accelerate: 0.31.0
- Datasets: 2.20.0
- Tokenizers: 0.19.1
## Citation
### BibTeX
#### Sentence Transformers
```bibtex
@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",
}
```
#### MultipleNegativesRankingLoss
```bibtex
@misc{henderson2017efficient,
title={Efficient Natural Language Response Suggestion for Smart Reply},
author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
year={2017},
eprint={1705.00652},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
```
<!--
## 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.*
-->