File size: 4,445 Bytes
1a827d7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97252e2
 
 
1a827d7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
---
license: apache-2.0
datasets:
- openbmb/UltraFeedback
language:
- en
pipeline_tag: text-generation
---
Self-Play Preference Optimization for Language Model Alignment (https://arxiv.org/abs/2405.00675)

# Mistral7B-PairRM-SPPO-Iter1

This model was developed using [Self-Play Preference Optimization](https://arxiv.org/abs/2405.00675) at iteration 1, based on the [mistralai/Mistral-7B-Instruct-v0.2](https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2) architecture as starting point. We utilized the prompt sets from the [openbmb/UltraFeedback](https://huggingface.co/datasets/openbmb/UltraFeedback) dataset, splited to 3 parts for 3 iterations by [snorkelai/Snorkel-Mistral-PairRM-DPO-Dataset](https://huggingface.co/datasets/snorkelai/Snorkel-Mistral-PairRM-DPO-Dataset). All responses used are synthetic.

**This is the model reported in the paper** , with K=5 (generate 5 responses per iteration). We attached the Arena-Hard eval results in this model page.

## Links to Other Models
- [Mistral7B-PairRM-SPPO-Iter1](https://huggingface.co/UCLA-AGI/Mistral7B-PairRM-SPPO-Iter1)
- [Mistral7B-PairRM-SPPO-Iter2](https://huggingface.co/UCLA-AGI/Mistral7B-PairRM-SPPO-Iter2)
- [Mistral7B-PairRM-SPPO-Iter3](https://huggingface.co/UCLA-AGI/Mistral7B-PairRM-SPPO-Iter3)
- [Mistral7B-PairRM-SPPO](https://huggingface.co/UCLA-AGI/Mistral7B-PairRM-SPPO)

### Model Description

- Model type: A 7B parameter GPT-like model fine-tuned on synthetic datasets.
- Language(s) (NLP): Primarily English
- License: Apache-2.0
- Finetuned from model: mistralai/Mistral-7B-Instruct-v0.2


## [AlpacaEval Leaderboard Evaluation Results](https://tatsu-lab.github.io/alpaca_eval/)


|                Model                           | LC. Win Rate | Win Rate | Avg. Length |
|-------------------------------------------|:------------:|:--------:|:-----------:|
| Mistral7B-PairRM-SPPO Iter 1              |     24.79    |   23.51  |     1855    |
| Mistral7B-PairRM-SPPO Iter 2              |     26.89    |   27.62  |     2019    |
| Mistral7B-PairRM-SPPO Iter 3              |     28.53    |   31.02  |     2163    |
| Mistral7B-PairRM-SPPO Iter 1 (best-of-16) |     28.71    |   27.77  |     1901    |
| Mistral7B-PairRM-SPPO Iter 2 (best-of-16) |     31.23    |   32.12  |     2035    |
| Mistral7B-PairRM-SPPO Iter 3 (best-of-16) |     32.13    |   34.94  |     2174    |

## [Arena-Hard Evaluation Results](https://github.com/lm-sys/arena-hard)

Model | Score | 95% CI | average \# Tokens |
|----------|-----------|--------------|-----------|
Mistral7B-PairRM-SPPO-Iter3| 23.3 | (-1.8, 1.8)|578|

## [Open LLM Leaderboard Evaluation Results](https://github.com/EleutherAI/lm-evaluation-harness)

Results are reported by using [lm-evaluation-harness](https://github.com/EleutherAI/lm-evaluation-harness) v0.4.1

|        | arc_challenge | truthfulqa_mc2 | winogrande | gsm8k | hellaswag | mmlu  | average |
|--------|---------------|----------------|------------|-------|-----------|-------|---------|
| Mistral7B-PairRM-SPPO Iter 1 | 65.02         | 69.4           | 77.82      | 43.82 | 85.11     | 58.84 | 66.67   |
| Mistral7B-PairRM-SPPO Iter 2 | 65.53         | 69.55          | 77.03      | 44.35 | 85.29     | 58.72 | 66.75   |
| Mistral7B-PairRM-SPPO Iter 3 | 65.36         | 69.97          | 76.8       | 42.68 | 85.16     | 58.45 | 66.4    |
## [MT-Bench Evaluation Results](https://github.com/lm-sys/FastChat/tree/main/fastchat/llm_judge)

|        | 1st Turn | 2nd Turn | Average |
|--------|----------|----------|---------|
| Mistral7B-PairRM-SPPO Iter 1 | 7.63     | 6.79     | 7.21    |
| Mistral7B-PairRM-SPPO Iter 2 | 7.90     | 7.08     | 7.49    |
| Mistral7B-PairRM-SPPO Iter 3 | 7.84     | 7.34     | 7.59    |

### Training hyperparameters
The following hyperparameters were used during training:

- learning_rate: 5e-07
- eta: 1000
- per_device_train_batch_size: 8
- gradient_accumulation_steps: 1
- seed: 42
- distributed_type: deepspeed_zero3
- num_devices: 8
- optimizer: RMSProp 
- lr_scheduler_type: linear 
- lr_scheduler_warmup_ratio: 0.1
- num_train_epochs: 18.0 (stop at epoch=1.0)



  
## Citation
```
@misc{wu2024self,
      title={Self-Play Preference Optimization for Language Model Alignment}, 
      author={Wu, Yue and Sun, Zhiqing and Yuan, Huizhuo and Ji, Kaixuan and Yang, Yiming and Gu, Quanquan},
      year={2024},
      eprint={2405.00675},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}
```